XSS Challenges stage#12-16 闯关详解

XSS Challenges stage#12-16 闯关详解

文章目录

0x01 Stage #12 利用 IE 浏览器特性绕过防护策略

实验环境:在 win7上 安装 install-ietester-v0.5.4.exe 使用 IE 10 做此实验

安装 ietester 双击即可

打开IE tester 然后访问链接地址

https://xss-quiz.int21h.jp/stage_no012.php?sid=1e3d64798c2c4a6e79394b50dff044d413daa8f1

XSS Challenges stage#12-16 闯关详解

我们输入payload 查看页面返回的信息

fengzilin"><script>alert(document.dodomainmain);</script>

我们可以看到所有的引号和尖括号都被过滤掉了,所以我们前面使用的方法对当前关卡是都没有作用的。我们使用 IE 浏览器的特性来进行 XSS 注入。

XSS Challenges stage#12-16 闯关详解

拓展:IE 浏览器特性
IE 中两个反引号 `` 可以闭合一个左边双引号

我们根据浏览器特性构造 payload

`` onm ousemove=alert(document.domain)

打开 IE 10 进行测试

XSS Challenges stage#12-16 闯关详解

域名成功弹出

XSS Challenges stage#12-16 闯关详解

0x02 Stage #13 CSS 层叠样式表的 IE 特性伪协议注入

链接地址:
https://xss-quiz.int21h.jp/stage13_0.php?sid=35519ac7e298d65e648d1106643dbee7519b57f5

Hint: style attribute #提示:样式属性

XSS Challenges stage#12-16 闯关详解

页面中提示,让我们输入的信息是层叠样式表,所以我们使用层叠样式表的方式进行注入。输入的其它方式的文本信息不会被当做代码执行。

这里使用 IEtester 工具来进行测试。
新建 IE10

将payload 输入到浏览器中

background:url("javascript:alert(document.domain);"); 

将背景颜色替换为 url,然后使用伪协议进行注入 点击否

XSS Challenges stage#12-16 闯关详解

XSS Challenges stage#12-16 闯关详解

查看源码

查看源码 
<input type="text" name="p1" size="60" 
style="background:url(&quot;javascript:alert(document.domain);&quot;);" value="background:url(&quot;javascript:alert(document.domain);&quot;);">

层叠样式表成功调用了伪协议。

0x03 Stage #14 通过层叠样式表中的内联注释进行注入

链接地址:https://xss-quiz.int21h.jp/stage-_-14.php?sid=15a28e4ea20fb76f250fcd2b0aaa25aeb4b735d2

查看提示:发现过滤一些常用

 s/(url|script|eval|expression)/xxx/ig;

解决办法,找到未过滤的,但能使用的发现,内联注释可以使用

1.CSS1 注释/*comment*/

语法:
/* 这里是注释内容
说明:用于注释
CSS 中的某些内容。

XSS Challenges stage#12-16 闯关详解

2.css expression(css 表达式)概述

css expression(css 表达式)又称 Dynamic properties(动态属性)是早期微软 DHTML 的产物,以其可以在 Css 中定义表达式(公式)来达到建立元素间属性之间的联系等作用,从 IE5 开始得到支持,后因标准、性能、安全性等问题,微软从 IE8 beta2 标准模式开始,取消对 css expression 的支持。

开始注入 XSS,通过内联注释进行绕过。
输入

fengzilin:expr/**/ession(alert(document.domain)); 

XSS Challenges stage#12-16 闯关详解

成功弹出消息,但是存在一个问题,在 CSS 中注入以后网站会不停的给我们弹框,所以我们需要修改一下 payload 使网站只弹一次。

先使用任务管理器,结束进程

XSS Challenges stage#12-16 闯关详解

重新打开地址

https://xss-quiz.int21h.jp/stage-_-14.php?sid=15a28e4ea20fb76f250fcd2b0aaa25aeb4b735d2

输入

fengzilin:expres/**/sion(if(!window.x){alert(document.domain);window.x=1;})

XSS Challenges stage#12-16 闯关详解

XSS Challenges stage#12-16 闯关详解

代码成功执行

0x04 使用 burpsuite 进行自动化测试 XSS 漏洞

环境准备

1.将xuegodxss.php放在到网站根目录下

是用phpstudy 将xuegod.php放在网站根目录下

XSS Challenges stage#12-16 闯关详解

2.使用burpsuite进行批量探测

将kali 中的 payload 字典拷贝出来

┌──(root
上一篇:如何武装你的Burpsuite之Tubo Intruder


下一篇:给iphone设置虚拟机上的burpsuite代理