首页/安全/渗透测试与安全评估速查/XXE 修复视角:禁用外部实体
常见漏洞验证121 条

XXE 修复视角:禁用外部实体

在解析器层面关闭 DTD 与外部实体是最直接修复;同时升级存在已知问题的 XML 解析库并统一各语言解析入口的配置。

Java设置 disallow-doctype-decl 等安全特性,关闭外部实体
Python/PHP确认解析器开关与默认行为
统一把安全解析封装成公共工具函数

Java 修复示意(仅展示开关,勿照搬到未知版本)

Java 修复示意(仅展示开关,勿照搬到未知版本)
factory.setFeature('http://apache.org/xml/features/disallow-doctype-decl', true)
// 依据解析器与版本补充关闭外部实体/外部 DTD 的相关特性
仅过滤字符串 '<!ENTITY' 不充分;多层封装库(如某些框架的 XML 转换)要逐层确认解析配置。

易错点

  • 升级了库但未改配置,默认仍解析外部实体
  • 框架封装的 XML 入口未纳入排查

数据来源与参考

  • OWASP Cheat Sheet:XXE Prevention
  • CWE-611
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌