XSS漏洞:xss.haozi.me靶场通关~0x00~0x090

0x00

这关没有任何限制

直接输入:

代码

<script>alert(1)</script>

0x01

分析代码得知,将我们输入的数据包裹在<textarea>标签中返回,因为<textarea>为RCDATA元素,在此标签中,只能返回</textarea>标签无法创建其他标签,所以这一关我们需要将<textarea>标签闭合输入其他标签

代码

'</textarea><script>alert(1)</script>

0x02

分析代码可以得知,将输入数据的返回值放在input标签中的value值里

闭合input标签,重新写入恶意标签

代码

"><script>alert(1)</script>

0x03

分析代码发现本关通过使用正则表达式来过滤了我们()的,()将替换为空

使用反引号代替括号

代码

<script>alert`1`</script>

0x04

分析代码发现,在上一关的基础上将我们的反引号也过滤掉了选择进行编码的方法绕过,需要注意html解析规范

代码

<IMG SRC=""onerror=alert&#40;&#49;&#41;>

0x05

分析代码发现将我们输入的数据放在html注释符中,并使用替换函数将注释符-->替换为一个笑脸符号

正常的html注释格式为<!--aaa-->但经过测试可以发现,在html中使用<!--aaa--!>的方法也达到注释的效果。

代码

--!><script>alert(1)</script><!--

0x06

分析代码可以发现本关将输入数据放在input标签中,并将auto和on字符进行了一个替换添加。目的防止我们在input标签中使用事件弹窗,也不让使用>对input标签进行闭合

但因为html的特性,可以不同行执行命令,我们可以在auto、on关键字后换行,再书写=alert(1)函数。代码

type="image" src="" onerror
=alert(1)

0x07

分析代码发现本关将<>和尖括号中的字符全部过滤,防止我们书写新的标签造成恶意弹窗。

这里就需要利用一个html的特性了,html在解析中有一种纠错机制,img标签不写后面的“>”仍然是可以正常执行的。

代码

<img src="1" onerror="alert(1)"

0x08

分析代码发现,本关将输入数据放入在一个<style>标签中,并过滤了</style>标签防止我们进行闭合操作。思路是使用换行操作,因为他只识别某一行特定字符进行过滤,但html可以执行不同行的命令,所以使用换行操作进行闭合style标签绕过过滤。

代码

</style
>
<script>alert(1)</script>

0x09

分析代码可以发现,如果不输入domainre变量中的字符串则会直接返回语句lnvalid URL,输入正确语句后放入script标签中。

所以本关需要考虑如何把变量中的url闭合
将第一个script闭合后,由于有return的返回值">,所以还需要使用注释符注释就可以绕过了。

代码

https://www.segmentfault.com"></script><script>alert(1)//

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值