今天的做题环境是xss-lab靶场的第二关和第三关,进入第二关关卡后,会发现,有一个文本框是我们的输入点,
和之前的做题方式一样,我们先构造一个payload看看情况:<script>alert('1')</script>
会发现我们并没有通关,那么就说明这一关就有一定的防御措施。那么我们接下来就要看一下这一关是怎么防御的,按下f12后查看代码,找到文本框这一段。
会发现这一段前面的<input name ="keyword"并没有出现">",而在HTML语言中,一对"<>"号就是一个标签闭合,也就是说这里标签没有闭合,也就是说我们需要将前面的标签闭合掉,再构造xss语句即可过关。
也就是在我们之前构造的payload前面输入">这两个符号,就可以对前面的标签闭合掉,完成我们的标签闭合。
——————————————————————————————
第三关和第二关一样我们先随意构造一个payload看看情况,发现并没有通关,看看源代码。在代码中我们发现了这一条语句,也就是说我构造的payload被进行了转义,标签也闭合了,那么这道题该怎么做呢?
在script语言中有一个函数是这样写来着:onmouseover,onmouseover事件指的是鼠标移动到某个位置上的HTML标签,会触发情况。我们来试一试这个语句。我们以此为核心,构造一个我们的payload试试水。
payload:' onmouseover = 'alert(1)
然后将我们的鼠标移动到输入点的位置,发现我们已经通关了,说明我们的思路是正确的。
原文始发于微信公众号(嗜心):xss-lab2-3
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论