定义

外部实体注入(XML External Entity XML)。当允许引用外部实体时,通过构造恶意内容,就可能导致任意文件读取、系统命令执行、内网端口探测、攻击内网网站等危害。

XXE的利用

  • 读取本地敏感文件
  • 内网主机探测
  • 主机端口探测
  • 盲注
  • 文件上传
  • 钓鱼

文章参考

先知社区有一篇关于XXE的文章:

XXE漏洞及利用

img
1
2
3
4
5
6
7
<?xml version="1.0" encoding="utf-8"?> 
<!DOCTYPE updateProfile [<!ENTITY file SYSTEM "file:///c:/windows/win.ini"> ]>
<updateProfile>
<firstname>Joe</firstname>
<lastname>&file;</lastname>
...
</updateProfile>

防护

  • 禁止引用外部实体
  • 过滤用户提交的XML数据