跳转到主内容
极星编程网:以代码为星,赴技术山海!

xss.haozi.me靶场详解

xss.haozi.me靶场详解 前言 0x00 0x01 0x02 0x03 0x04 0x05 0x06 0x07 0x08 0x09 0x0A 0x0B 0x0C 0x0D 0x0E 0x0F 0x10 0x11 0x12 前言 由于xss.haozi.me是一个在线靶场, 服务部署在 Github,若网速不好,则需要科学上网。

由于本靶场是一个白盒测试的靶场,我们可以看到代码的源码,所以可以直接根据源码的限制的条件来思考如何绕过。

0x00

通过源码我们发现本关没有任何限制所以直接输入 payload:

就可以过关了

0x01

进入第一关分析源码得知,将我们输入的数据包裹在

标签无法创建其他标签,所以这一关我们需要将

0x02

分析源码可以得知,将输入数据的返回值放在 input 标签中的 value 值里,因为本关没有做任何过滤,所以这里有两种绕过方法。

第一种 :闭合vlaue值直接写input事件 第二种 :闭合input标签,重新写入恶意标签 payload如下:

方法1:aaa" οnclick="alert(1)

方法2:">

由于方法1为点击事件,需要点击文本框才能生效,所以本关推荐方法2。

0x03

进入第三关发现本关通过使用正则表达式来过滤了我们的

()

,将

()

替换为空 若对正则表达式不了解的可以查看这篇文章链接: 正则表达式常用语法解析 所以本关我们的思路就是 尝试写不带括号的标签 ,或者通过 编码的形式来绕过 。

以下给出两种payload方法绕过

方法1:使用反引号代替括号