XML External Entity Vulnerability DoS 案例:何时发生扩展?

Posted

技术标签:

【中文标题】XML External Entity Vulnerability DoS 案例:何时发生扩展?【英文标题】:XML External Entity Vulnerability DoS case: when the expansion happens? 【发布时间】:2015-02-20 13:23:16 【问题描述】:

我正在开发一个将 XML 文件作为输入然后对其进行处理的应用程序。我们发现该应用程序容易受到 XXE DoS 攻击,即著名的 Billion Laughs 案例。在处理文件之前,会根据架构对其进行验证。所以,我的问题是,DoS 攻击会在验证期间发生吗?还是在验证过程中,XML 实体没有展开,因此只有在验证之后,当解析经过验证的文件时才会发生 DoS 攻击?

【问题讨论】:

【参考方案1】:

基本上,解析器必须扩展实体以验证文档(see 4.4.3 in XML recommendation),因为您的实体可能包含一些标记,并构建一个有效的文档。

是的,在验证 XML 文件期间可能会出现问题。

【讨论】:

以上是关于XML External Entity Vulnerability DoS 案例:何时发生扩展?的主要内容,如果未能解决你的问题,请参考以下文章

XML External Entity 漏洞

XXE (XML External Entity Injection) :XML外部实体注入

4.XXE (XML External Entity Injection)

译Attacking XML with XML External Entity Injection (XXE)

Apache POI XML外部实体(XML External Entity,XXE)攻击

XML External Entity Vulnerability DoS 案例:何时发生扩展?