问题标签 [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.
xml - 在发布 DTD/XXE XML 时测试 Scala Play 行为
我正在尝试通过单元测试来测试我的 Scala Play 应用程序,但是我在测试中遇到的行为与我通过 Postman 向我的路由发送 POST 请求时遇到的行为不同。
我正在尝试测试 Scala Play 应用程序是否可以处理任何包含 DTD 的 XML,因为我正在尝试证明我可以免受 XXE 攻击。根据James Roper的说法,由于潜在的漏洞,Play 默认拒绝包含 DTD 的 XML。
400: Bad Request
我的问题是,当我到达我的路线时,由于 Play 应用程序捕获了 DTD ,我得到了预期的错误。但是,当我尝试通过单元测试完成路线时,我得到一个200: Ok
,因此测试的行为与实际的 Play 应用程序不同。
这是我的控制器代码:
在幕后的某个时刻,向该控制器发布 POST 似乎在Action.async(parse.xml)
. 我还更换了request.body
其他一些随机 XML,以验证它是否在我的代码中触及请求正文之前就失败了。
我的测试用例:
我有两个问题:
- 有谁知道如何影响我的测试表现得更像我的应用程序?
或者
- 我知道这
XML.loadString
也很脆弱,并且知道如何修复它。我的测试在这一行是否行为不端,如果是这样,是否有另一种方法可以在不评估和解释 DTD 的情况下盲目地将 XML 传递给我的测试方法?
java - 为 Oracle DomParser 解析 XXE
这是我正在使用的 DomParser 的代码片段,我正在使用的 DomParser 是 Oracle 的。
最近我们的安全团队提出了关于上述 DOM 解析器容易受到安全攻击的问题,并提出了设置两个属性的建议
但是在设置这些属性时,我收到以下错误,
请让我知道如何防止 XML 实体扩展注入和 XXE 攻击。我曾尝试查看 OWASP XEE Cheat Sheet 并浏览了有关 XXE 攻击的各种问题和答案,但找不到解决方案。
c# - asp.net .asmx 网络服务 ishow XXE 漏洞 - 外部 DNS
我们在我们的 asp.net asmx Web 服务中发现了一个 XML 外部实体漏洞。
我们正在使用 burp 套件测试一个 asp.net .asmx Web 服务,以检查 XML 外部实体处理漏洞。请参阅: https ://cheatsheetseries.owasp.org/cheatsheets/XML_External_Entity_Prevention_Cheat_Sheet.html#net
我们看到,当请求中包含 DTD 时,如下所示:
向 cigitalcollaborator.com 发送 DNS 请求。这表明 asmx Web 服务正在处理请求中的 DTD。
我们正在使用 .net 版本 4.5.2。
根据此链接,应隐式阻止 .net 4.5.2 及更高版本的 XXE 漏洞: https ://www.owasp.org/index.php/XML_External_Entity_(XXE)_Prevention_Cheat_Sheet#.NET_4.5.2_and_later
但它不是...我们 ge 这个 DNS 查找。
底层的 .net 框架正在处理这个 asmx Web 服务的 XML 反序列化/序列化,所以这里没有需要我们真正修复的代码。我们不能正确地改变行为,因为它在底层框架的某个地方?
我们如何为我们的 ASMX Web 服务修复这个 XXE 漏洞?
谢谢
乔恩·波
php - XML 外部实体 (XXE) 攻击失败
请给我一个提示,为什么我的代码不容易受到 XXE 的攻击。
代码:
测试用例 1:
结果1:
到目前为止,一切都很好。但是,当我尝试注入 XML 代码来检索本地文件的内容时:
然后什么都没有打印。“test.txt”在文件结构中与我执行攻击的 php 文件处于同一级别。我努力了
也
但无济于事。
测试.txt:
试过:
没有结果。
有什么提示吗?
反映@Paul Crovella,这是一个编辑:
CP-ing 你的代码导致:
DOMDocument::loadXML(): I/O warning : failed to load external entity file:// full path to file name
DOMDocument::loadXML(): 无法处理 Entity 中的实体
DOMDocument::loadXML(): Entity 'ent' 未在 Entity 中定义
security - 演示 XXE(XML 外部实体)攻击 - Spring Boot
我想执行 XXE 攻击,我按照本教程https://grokonez.com/java-integration/convert-java-object-intofrom-xml-spring-boot并尝试使用实体注入进行攻击
xxe.xml
并面临错误:
研究了 2 天,仍然无法启用允许解析非法实体。
java - SAXParserFactory 是否容易受到 XXE 攻击?
我们使用 javax.xml.parsers.SAXParserFactory 读取我们的 XML 模板文件。如果我们正在读取的 XML 文件中有 XXE,有没有办法关闭处理呢?
谢谢 - 戴夫
c# - XmlTextReader 是否容易受到 XXE 攻击?
我们使用 System.Xml.XmlTextReader 读取我们的 XML 模板文件。如果我们正在读取的 XML 文件中有 XXE,那么该 XXE 会被处理吗?
如果是这样,则存在重大安全问题。可以关闭吗?
谢谢 - 戴夫
java - 如何使用修复 XXE 漏洞时出现的 JAXB 修复此 Unmarshal Exception?
我们应该处理的 XML 消息的格式是这样的:
收到异常:
javax.xml.bind.UnmarshalException:意外元素(uri:“”,本地:“ns0:MessageType”)。预期的元素是 <{ http://www.path.to/some/schema.xsd }MessageType>
上述异常发生在com.xmlprocessor.MessageParser类中。上述类中的代码曾经是这样(并且已经工作了很长时间):
事实证明,这会给你一个糟糕的 XXE 案例。所以我们尝试了一些非常相似的东西 DocumentBuilder、SAXParser 等来禁用外部实体、Doctype 声明等。所有人都给了我们上述相同的例外。无论如何,这是 SAXParser 的变化:
com.xmlprocessor.MessageTypeContent类的代码保持不变:
我尝试了很多方法,包括将namespace="ns0"或namespace="http://www.path.to/some/schema.xsd"添加到@XmlRootElement注释中,它会导致相同异常的类似版本运行。
请注意,代码中没有语法错误。我所做的任何事情都在将其变成一个问题的过程中。我完全有可能是一个 git,错过了一些非常基本的东西。如果您能指出这一点,我将不胜感激。谢谢。
xml - xsd 上传中的 XML 外部实体注入
我正在我的基于 j2ee 的 Web 应用程序中上传一个 xsd,该应用程序正在生成 java 类,稍后用于处理。上传 xsd 已被确定为可用于 XML 外部实体注入。我搜索了很多地方并了解如何为 xml 修复它。但是 XSD 尚不清楚 如果有人对此有任何想法,请告诉我。
提前致谢
java - XML 外部实体注入:Java 1.6 中的 Hp Fortify 问题
我正在尝试修复 XEE 问题并尝试了其他选项但无法正常工作。如果有任何指针会很棒。
下面是我的代码片段..