XSS靶场通关思路

这期的内容主要是给大家分享xss-labs靶场的通关思路

*注:如有侵权请联系删除,本文纯属学习交流,请勿用于非法用途,欢迎指正补充

文章目录

    • 这期的内容主要是给大家分享xss-labs靶场的通关思路
  • level1
  • level2
  • level3
  • level4
  • level5
  • level6
  • level7
  • level8
  • level9
  • level10
  • level11
  • level12
  • level13
  • level14
  • level15
  • level16
  • 总结

XSS靶场通关思路_第1张图片
首先进入靶场首页,有一个挑衅的小人,今天咱们就来会会他.

level1

XSS靶场通关思路_第2张图片

打开开发者工具发现URL头上的test插入在h2标签里面,咱们直接在里面插入一个script标签再加上alert事件就可.
XSS靶场通关思路_第3张图片

level2

到第二关会发现,输入框内的test在input标签内的value里面,这里咱们引入"将其注释,再加入onmouseover事件将值设定为" javascript:alert(11)就可以了

‘’ οnmοuseοver=‘’ javascript:alert(11)

XSS靶场通关思路_第4张图片

level3

第三关和第二关同理,只是不能用双引号注释,而改用单引号

’ οnmοuseοver='javascript:alert(11)

XSS靶场通关思路_第5张图片

level4

第四关和第二关的思路也是一模一样,可能是第二关不是让我们引入onmouseover事件,而是过滤掉input标签引入script标签??

‘’ οnmοuseοver=‘’ javascript:alert(11)

XSS靶场通关思路_第6张图片

level5

第五关咱们尝试再次引入onmouseover事件时发现被过滤了,通关F12开发者工具观察发现这里应该是将所有含on的事件过滤了,这里咱们引入新思路,将input标签注释掉,引入新标签a,再加入事件href插入弹窗.

">< /input >< a href=javascript:alert(11) >11< /a >

XSS靶场通关思路_第7张图片
XSS靶场通关思路_第8张图片

level6

这里咱们依然引入第五关的思路,但是会发现href被过滤了,于是咱们尝试将href进行大写绕过

">< /input >11< /a>
XSS靶场通关思路_第9张图片
XSS靶场通关思路_第10张图片

level7

咱们首先运用第六关的思路尝试一下,发现href和script直接被过滤了,运用第二关引入onmouseover时也发现on被过滤了,所以这里咱们先注释掉input标签,再引入script标签并对script进行双写绕过,这里可以发现成功弹窗了

">< /input>< scrscriptipt>alert(11)< /scrscriptipt>
XSS靶场通关思路_第11张图片
XSS靶场通关思路_第12张图片

level8

第八关咱们先打开开发者工具可以看到这里他会自动将输入的内容插入到href事件内,所以咱们先将javascript:alert(11)输入,发现它将script过滤了一下,运用双写绕过和大小写绕过都没用,on事件也被过滤了,这里咱们引入一种新的思路,就是进行Unicode编码绕过,又因为html仅能识别带&#x前缀的Unicode编码所以这里将/u00替换成&#x就可以了,咱们将javascript里面的t换成y就可绕过了

javascript
XSS靶场通关思路_第13张图片
XSS靶场通关思路_第14张图片

level9

这里咱们通过开发者工具F12对输入内容进行观察,发现咱们也插入不了在html中,这里他提示您的链接不合法?咱们输入一个规范完整的链接http://www.baidu.com试试,发现可以成功在href事件内插入了,
XSS靶场通关思路_第15张图片
XSS靶场通关思路_第16张图片

这里咱们判断需要有http://才能进行插入所以咱们先将javascript:alert(11)进行插入再加入http://进行注释再对script进行Unicode编码再转为html识别格式就可以绕过了

javascript:alert(11)//http://

XSS靶场通关思路_第17张图片

level10

第十关没有给咱们输入框,这里咱们打开开发者工具发现input标签里面藏了三个name事件为t_link,t_sort,t_history,这里咱们打开这关的php文档来分析,
XSS靶场通关思路_第18张图片
XSS靶场通关思路_第19张图片

发现这里包含了一个隐藏的GET为t_sort,所以将在URL头里面对t_sort进行传参,可以插入弹窗,因为原来的type为hidden,所以这里咱们还要讲type进行改写再插入onclick事件为javascript:alert(11)才能绕过

127.0.0.1/xss/level10.php?keyword=“&t_sort=111” type=“text” οnclick="javascript:alert(11)

XSS靶场通关思路_第20张图片

level11

这里咱们先打开开发者工具进行分析,发现它的input标签里面隐藏了一个很像Referer的东西,打开后台php分析,这里可以看到它将Referer作为参数传递到 t_ref的value里面了,str11= $ _SERVER[‘HTTP_REFERER’]; < input name=“t _ref” value=“‘.$str33.’” type=“hidden”>
XSS靶场通关思路_第21张图片这里咱们打开burp进行抓包,将REFERER修改为"&t_sort=111" type=“text” οnclick="javascript:alert(11)就可以了
XSS靶场通关思路_第22张图片
XSS靶场通关思路_第23张图片

level12

通过分析发现同十一关一样,只是将REFERER传参改为了User-Agent传参,这里抓包将User-Agent改为" t_sort=11" type=“text” οnclick="javascript:alert(11)就可以了
XSS靶场通关思路_第24张图片XSS靶场通关思路_第25张图片

level13

同理,13关是抓包改cooike,将cooike改为user=" t_sort=11" type=“text” οnclick="javascript:alert(11)就可以了
XSS靶场通关思路_第26张图片
XSS靶场通关思路_第27张图片

level14

14关有问题,这里直接跳转到15关

level15

第15关有一点抽象,大概的意思就是span标签class时间里面有一个ng-include包含函数,可以进行引入,这里咱们引入第一关的图片,并对图片标签img进行插入弹窗
XSS靶场通关思路_第28张图片

http://127.0.0.1 /xss/level15.php?src=%27level1.php?name=%3Cimg%20src=1%20οnerrοr=alert(11)%3E%27

level16

这里16关咱们在URL上面输入的内容被引入到center标签里面,插入script标签试试,这里发现script被过滤成空格了,这里咱们发现之前的所有绕过思路都不好使了,img标签没有进行过滤但是他直接把空格过滤了
XSS靶场通关思路_第29张图片
XSS靶场通关思路_第30张图片
这里咱们就需要知道html标签的一个特性就是,在一个标签的每个事件中间将空格换成分行符%0d也是可以识别的,所以这里咱们在URL里面输入%0d也就是分行符,进行绕过
XSS靶场通关思路_第31张图片

总结

创作不易,希望大家多多支持,更希望对大家有所帮助.

你可能感兴趣的:(xss,javascript,前端)