如何挖掘xss漏洞
对于如何去挖掘一个xss漏洞我是这样理解的
在实战情况下不能一上来就使用xss语句来进行测试很容易被发现
那这种情况该怎么办呢
打开准备渗透测试的web网站,寻找可以收集用户输入的地方比如搜索框,url框等
发现后寻找注入点
选在输入框中输入写字符观察页面是否会原样返回
可以明显看到这个服务器是有进行返回的那就说明可能存在xss注入
输入xss语句测试后发现虽然回显但是不执行
这是字符被html实体化了,这样就要找绕过方法了
比如对字符进行转码
字母 | ASCII 码 | 十进制编码 | 十六进制编码 |
---|---|---|---|
a | 97 | a | a |
c | 99 | c | c |
e | 101 | e | e |
将javascript全部转换
<a href='javascript:alert(/
xss/)'>click me!</a>
或者进行其他编码:
- utf-8 编码
- utf-7 编码
对空号回车制表符进行转码
-
可以将以下字符插入到任意位置
字符 编码 Tab 	
换行
回车
<a href = 'j	avasc r ipt:alert(/xss/)'>click me!</a>
再一个就是被安全狗拦截
这样想办法绕过安全狗
比如< svg onload="alert(document.cookie)">