从业者-基于DOM的开放重定向
# 实验室:基于DOM的开放重定向
# 题目
此实验室包含一个基于 DOM 的开放重定向漏洞。若要解决实验室问题,请利用此漏洞 并将受害者重定向到漏洞利用服务器。
- name: 实验室-从业者
desc: 基于DOM的开放重定向 >>
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/dom-based/open-redirection/lab-dom-open-redirection
bgColor: '#001350'
textColor: '#4cc1ff'
1
2
3
4
5
6
2
3
4
5
6
# 实操
点击 “ACCESS THE LAB” 进入实验室。
一个博客站点。
进入任意一篇博客的详情页,发现页面底部的 “返回” 链接很可疑。
该链接通过onclick
事件执行了一段 JavaScript:
returnUrl = /url=(https?:\/\/.+)/.exec(location);
location.href = returnUrl ? returnUrl[1] : "/"
1
2
2
点击链接之后,将会获取 URL 中的url
参数,并检查其是否以 HTTP 协议开头。如果是,则将location.href
设置为url
的参数值。如果不是,则设置为另一个值。
先试试看不加url
参数的样子,直接点击 “Back to Blog”。
点击之后,网页重定向到了根目录。
手动添加url
参数,值为当前实验室的 URL + 路径/abcdefg
。
/post?postId=3&url=https://<实验室域名>/abcdefg
1
然后再次点击链接。
点击之后,网页重定向到了我们所设置的 URL。这说明存在开放重定向漏洞。
修改url
的值,将其设置为漏洞利用服务器的域名。
/post?postId=3&url=https://<漏洞利用服务器>/
1
请求之后,实验完成。
编辑 (opens new window)