XSS Challenges闯关1-6
第一关:
靶场链接:XSS Challenges (by yamagata21) - Stage #1
第一关截图:(翻译为中文后)
选中Hint查看提示:显示非常容易,但是图中显示必须要用alert(document.doman)完成,我们优先考虑xss的常规操作,直接用script标签完成alert弹出。
Hint: very simple...
看到图中的搜索框,输入弹窗xss
<script>alert(document.domain)</script>
发现弹窗成功
第二关:
靶场链接:XSS Challenges (by yamagata21) - Stage #2
第二关截图:
查看提示:关闭当前标签,添加script标签
Hint: close the current tag and add SCRIPT tag...
首先在输入框提交内容,打开源码查看:可以看到提交的内容被value接收,那么我们便可以考虑闭合value接收的值,然后闭合,截止执行后面的语句。
hacker1"><script>alert(document.domain)</script>
可以看到执行成功
第三关:
靶场链接:XSS Challenges (by yamagata21) - Stage #3
查看提示:Hint: The input in text box is properly escaped.
我们先输入提交数据,打开源码查看(F12):我们提交的内容在p1中接收到,原样输出
:接着我们打开代理用BurpSuit抓包看看内容:将抓到的包发送到repeater模块
在 Japan后面注入脚本
<script>alert(document.domain)</script>
单击右键复制网页的URL到浏览器中查看
弹窗执行成功
第四关:
靶场链接:XSS Challenges (by yamagata21) - Stage #4
在刚刚的连接执行成功之后,关闭burp代理,进入第四关
查看提示:Hint: invisible input field看不见的输入字段
由提示联想到第三关,同样打开代理用burpsuit抓包,可以看到多了p3,那么我们试着在p3后面注入脚本
p1=hacker4&p2=Japan&p3=hackme"><script>alert(document.domain)</script>
复制连接查看,注入成功
第五关:
靶场链接:XSS Challenges (by yamagata21) - Stage #5
第五关截图
注:关闭代理之后才能打开第五关的连接
查看提示:Hint: length limited text box长度受限的文本框
首先在输入框提交内容,hacker5,打开源码可以看到,提交的内容被提交到value中,结合提示,考虑闭合,然后修改客户端的输入框长度
hacker5"><script>alert(document.domain)</script>
执行成功
第六关:
靶场链接:XSS Challenges (by yamagata21) - Stage #6
第六关截图
查看提示:Hint: event handler attributes事件处理程序属性
首先在输入框提交内容,打开F12查看,可以看到提交的内容到value中,考虑闭合,结合提示利用事件触发器完成
首先输入闭合加脚本试试
hacker6"><script>alert(document.domain)</script>
可以看到插入脚本的有些内容被过滤,例如<>等
那么只能用时间触发器来插入执行
hacker6"onmouseover="alert(document.domain)"
可以看到执行成功