问题标签 [xxe]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
24331 浏览

java - 如何防止 TransformerFactory 上的 XML 外部实体注入

我的问题:

Fortify 4.2.1 将以下代码标记为易受 XML 外部实体攻击。

我尝试过的解决方案:

  1. 将 TransformerFactory 功能设置为XMLConstants.FEATURE_SECURE_PROCESSINGtrue。

  2. 研究为 TransformerFactory 提供更多此类功能的可能性,就像我们为 DOM 和 SAX 解析器所做的那样。例如,不允许 doctype 声明等。但 TransformerFactoryImpl 似乎不接受任何其他XMLConstants.FEATURE_SECURE_PROCESSING. 实现代码

请指出您认为我可能没有经历过的任何资源或可能解决此问题的方法。

0 投票
0 回答
244 浏览

xml - Groovy 避免 XML 外部实体注入

我对 xml 外部实体注入有疑问。

工作示例:

结果显示 /etc/passwd 文件的内容。我能做些什么来避免这个问题?

设置了安全功能,但它不起作用吗?

0 投票
2 回答
2751 浏览

c# - XDocument.Parse:避免替换 XXE 引用

我正在尝试防止我的应用程序处理的 XML 中的恶意 XXE 注入。因此我使用 XDocument 而不是 XmlDocument。

XML 表示 Web 请求的有效负载,因此我在其字符串内容上调用 XDocument.Parse。但是,我看到 XML (&XXE) 中包含的 XXE 引用在结果中被 ENTITY xxe 的实际值替换。

是否可以在不替换 &xxe 的情况下使用 XDocument 解析 XML?

谢谢

编辑:我设法避免使用XmlResolver=nullfor替换 XML 中的 xxesXDocument.Load

0 投票
1 回答
306 浏览

ios - 使用 libxml2 目标 c 在 XML 中验证 DTD 和 XXE

在我的项目中,我想验证 XML 是否包含 DTD。目前我正在使用 Libxml 解析器来解析 XML。

在 LibXML 中,我如何检查 XML 是否包含 DTD。

在向服务器发送请求 XML 时,如何防止 XXE 攻击。

0 投票
0 回答
1160 浏览

xml - 如何消除 XML 外部实体引用 ('XXE') 错误的不当限制?

由于几个 CWE-611:XML 外部实体引用的不当限制 ('XXE') 错误,我们最近未能通过 Veracode 安全扫描。

有几个关于这个主题的问题被问到并得到了回答,我尝试使用提供的解决方案,但没有得到他们的帮助。他们为我们拥有的其他人工作,但那些都处理 XmlDocument()。这个没有。问题是这样的声明:

它大约下降了 4/5(从底部向上约 19 行。这是代码:

我见过的其他人的解决方案包括添加以下代码行:

这适用于许多 Veracode 故障,但不适用于这一故障。

0 投票
0 回答
1410 浏览

xml - 如何防止 XXE 攻击(.Net 中的 XmlSerializer)

我们对一些旧的遗留应用程序进行了 Veracode 安全审计,发现我们容易受到外部实体 (XXE) 攻击。我已经解决了大部分问题,但我遇到了一些我不知道如何处理的代码,我希望这里有人能给我一些指导。以下是相关代码:

问题在于这段代码:

根据 Veracode 的说法,上述代码段的问题是“XML 外部实体引用 ('XXE') 的限制不当”。根据 CWE 列表,这意味着“该软件处理的 XML 文档可以包含 XML 实体,其 URI 解析为预期控制范围之外的文档,导致产品在其输出中嵌入不正确的文档。”

我不知道我与修复它的代码有什么关系。

0 投票
4 回答
6237 浏览

java - 使用旧版本的 jackson-all-1.9.11 和未修补的 jackson 2.x 对 CVE-2016-3720 的小修复

CVE-2016-3720 https://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2016-3720的解释 比较模糊,但是阅读代码我发现了以下问题。即使在解决了这些问题之后,OWasp 依赖检查工具仍然会报告 jar 文件容易受到攻击。我认为在应用修复后它会出现误报。

CVE-2016-3720 在 Jackson 库中暴露了 XML 实体注入攻击。 https://www.owasp.org/index.php/XML_External_Entity_(XXE)_Processing XML 实体注入攻击可以在 XML 文件的解析中创建一个无限循环。
这最终会耗尽应用程序服务器中的所有内存,或者它可以注入对外部站点的引用(这是报告的问题)。

不幸的是,旧版本的 Jackson 的源代码在 Github 上不可用,项目源版本只能回到 jackson-databind-2.0.0-RC1 级别。

如果您使用的是旧版本的 Spring,那么您可能无法升级到最新版本的 Jackson 2.x,所以现在您遇到了安全困境。如何在不升级 Spring 的情况下修复漏洞。

0 投票
5 回答
20799 浏览

java - 针对 XML 外部实体注入的 Fortify 修复

当我使用强化工具进行扫描时,我在“XML 外部实体注入”下遇到了一些问题。

这是它显示错误的地方。我已经按照 fortify 的建议进行了以下修复

但问题仍然没有解决。如何解决这个问题?

0 投票
1 回答
1153 浏览

java - 使用 XStream 防止 XXE 攻击

想知道我们如何使用 Xstream API 修复 Xml 外部实体 (XXE) 漏洞。

就像我们可以做的

使用 DocumentBuilderFactory。更多细节 - https://www.owasp.org/index.php/XML_External_Entity_%28XXE%29_Prevention_Cheat_Sheet

我的代码类似于 -

0 投票
1 回答
1513 浏览

asp.net - 如何保护 .NET Web 服务免受 XXE 攻击?

我正在尝试保护 .NET Web 服务免受XXE攻击。因为底层的 SOAP 消息是 XML,它有潜在的风险。

可以在此处此处找到一种禁止对 XML 文档进行 DTD 处理的方法。但是,SOAP 消息的 XML 解析是由框架完成的。

如何修改 XML 阅读器的设置以关闭 DTD 处理?

我还寻找了一个直接访问 XML 内容的钩子,但在WebService的文档中没有找到合适的东西。