赞
踩
第一关:
首先输入一个XSS的警告窗:
这样第一关就完成了!
第二关:
用F12导出弹窗,查看靶场源码,查看发现它的引号被实体化了,所以我们可以用引号和尖括号将前面的闭合掉。操作如下:
,点击F12,发现已经被实体化。然后试着用引号和接括号将前面的语句闭合,来吧,展示:
alert(/a/)">
如果这样还没有看懂,那就如图所示:
结果发现还是不成功,难道是靶场的问题吗?当然不是,这是因为里面的双引号和尖括号被实体化了。如图这样子:
接下来该如何处理呢?
我们可以试一下单引号,这样你会发现一片新的大陆!
但是新的问题又来了,因为单引号和尖括号被实体化,所以不能用尖括号闭合,只能用HTML的事件调用脚本,这里有兄弟就会问了,这些脚本怎么用从哪里找呢?当然是从浏览器直接搜到的了。结果展示:
第四关:
首先我们直接输入:'"><看其是否被过滤。最后我们不难发现这些符号中有被实体化的,所以我们试着用这个’οnblur=‘alert(/1/)’",最后发现没有执行。这时候我们只需要将前面的单引号变成双引号即可。“οnblur=‘alert(/1/)’”
家人们,因为xss靶场比较简单,有些地方说的比较笼统,过关很容易,只需要多尝试就可以,但是学好就难了!
第五关: 老样子,咱们先看是否被过滤,输入:
'"><
这时我们发现这个事件o和n被拆开了,我们可以构建一个超链接来访问我们的伪协议。
伪协议是什么
伪协议(Pseudo-protocol)是一种基于URL语法的协议格式,通常用于Web浏览器中模拟某些特定功能。伪协议技术可以帮助Web开发人员通过简单地在页面链接中添加前缀来触发特殊的行为,例如打开一个新窗口、下载文件、拨打电话等等。常见的伪协议包括:mailto、tel、ftp、javascript等。不过,需要注意的是,伪协议不是标准的协议,也不被所有浏览器支持。
操作如下:
具体样式如图所示
点击dasdas就可以了。
**第六关:**老样子先用上一关的语句试一下:
"> <a href="javascript:alert('1')>dasdas</a>">
我们发现有过滤我们只需要把r换成大写即可
"> <a hRef="javascript:alert('1')>dasdas</a>">
**第七关:**首先我们还是会试上一关的语句:
"> <a hRef="javascript:alert('1')>dasdas</a> " >
发现它把前面的内容都删除了,咱们可以双写绕过试一下。来吧,展示。
"><a hrhrefef="javascriptscript:alert('1')">dsadas</a>">
然后试一下,不小心就过了。如图所示:
兄弟们,第七关重点强调就是双写绕过。
第八关:
首先我们先前后输入:"'<>on
我们发现双引号被过滤了。
然后我们再用一下伪协议:javascript:alert(‘1’)
然后用Burp Suit 里的编译器将javascript:alert(‘1’)编译为HTML,他也是会被前端识别的,浏览器会自动解码。解码的结果为
javascript:alert('1')
然后就可以了。
**第九关:**老规矩,我们还可以试一下:"'<>on
我们经过查看源码就会发现他是需要http://的
这里我们还是使用伪协议:javascript:alert(‘1’)
但是我们发现把伪协议放在前面它无法运行后面的,所以只能放在前面。
操作如下:
javascript:alert('1')//http://
第十关:
我们发现没有输入框,但是如何输入呢?如图所示:
就是在这个地方。接下来我们可以查看一下XSS靶场的源码我们不难发现,有两个
t_sort
keyword
我们只需要将源码修改成这样子即可
第十一关:
首先我们可以尝试看一下十一关的源码,兄弟集美们,看源码是我们不可或缺的能力,虽然我也觉得看源码很让人头疼但是没办法,只能硬着头皮看呗!
首先我们先用Burp Suit 将11关抓包,然后修改请求头,修改的请求头和上一关的一样,像这样子:
然后的操作就是点击通过浏览器请求,使用系统回话,点击复制,粘贴到11关靶场就可以了。
第十二关:
老规矩,我们先输入单引号和双引号看是否被过滤,然后老样子先抓包试一下:
然后的操作就是点击通过浏览器请求
宝子们:之后的操作就和上一关的靶场处理结果相同了。
第十三关:
有了前几关的铺垫,这一关就容易许多了,首先我们还是看一下源代码,然后开始抓包。
兄弟们,第十三关的操作大体和十二关相同,只是修改的头不一样,所以就不做过多介绍了,
还有第十四关无法显示,显示窗口被关闭了,所以就不能演示了。
第十五关:
首先还是老样子需要先查看它的源代码,之后我们需要注意一下src.
然后在顶部输入src=‘level1.php’
然后我们发现出来了第一关的图片,之后我们需要引入另一个事件,这个事件叫做onerror事件
之后我们就需要用这个事件构建一个函数,操作如下:
<img src=1 onerror=alert(1)>
然后的操作就是这样子了。
第十六关:
首先还是老样子,先输入’“<>看其是否过滤,之后再看十六关靶场的源码,
我们不难发现,其实在第十六关我们并没有过滤 ’ " < > 而是空格被过滤了,所用的语句还和上一关一样,只需要注意的是空格绕过的写法是%0a,操作如下所示
这样就可以了。
第十七关:
第十七关一开始,它有两个参数,我们可以一一对其进行过滤测试,输入’”<>
最后我们发现这些都被实体化了。
接下来我们只需要再看一下它的源码。
当我们发现无法绕过的时候,我们就需要用到一个新的事件:onmouseover
接下来上操作:
第十八关:
因为第十八关和第十七关一模一样,所以喆就在里不多做解释了给大家直接上操作了
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。