xss靶场第1-5关

进入xss靶场

直接在url栏输入:<script>alert('xss')</script>

 一下就成功了,第一个给我们一个甜头,完成后去查看源码,没有任何限制,非常轻松

进入第二关

输入:<script>alert('xss')</script>

无弹窗

直接弹窗不行了,那我们去看看网页源代码

 可以看到<h2>标签的内容,我们输入的js代码被html实体化了,应该是用了htmlspecialchars()函数

 但是可以看到value的值是和我们输入的值一样,那我们是不是可以试试绕过呢

输入:"><script>alert('xss')</script>"

弹窗成功,解释一下:第一个"闭合第一个",>闭合input标签,中间是js代码,后面是"闭合最后"

 

第三关

输入:<script>alert('xss')</script>                  去做尝试

显然是不行的,我们查看以下源代码

第二关的value中的值也是被转义了,这下完蛋了!

那我们就不用<>这两个符号

但是单引号没有被转义,给了一个突破口,并且不能用<script>了

那我们只能换一种了

输入:' οnmοuseοver=alert('xss') '

成功了,on系列函数是触发式xss 

解析:第一个'是闭合前面的',后面的'是闭合最后' 

第四关

 输入:<script>alert('xss')</script>                试试水

肯定是不行的,又去看看源代码 

在value中可以看到<>没了

应该是被替换成空了

那我们也用on去触发事件

格式为”a”>   其中a是我们输入的值,输入的值中<>被替换成空

所以我们输入:" οnmοuseοver=alert('xss') "

成功,原理和第三关差不多,这就不多说了。

第五关

 输入:<script>alert('xss')</script>        试试水

直接看源代码吧 

很明显在r和i之间加了一个_

我们试试on去触发事件

结果是o和n之间也被添加了一个_ 

这让我们很难通过script和on触发事件去执行js

不过还有一种方法,输入:"><a href=javascript:alert('xss')>xss</a> "

通过a标签,超链接来触发

成功!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值