最";“安全”;java中XML的解析方法
我需要选择Java中与“网络安全”相关的“最安全”XML解析库 如何检查哪个API库最安全?。我不能选择所有的XML库&请仔细阅读每个库的规范。 我需要了解哪些要求? 从哪里开始是我要找的 我看到了这个链接,它提供了一些关于可以利用的XML特性的信息。最";“安全”;java中XML的解析方法,java,xml,security,xml-parsing,Java,Xml,Security,Xml Parsing,我需要选择Java中与“网络安全”相关的“最安全”XML解析库 如何检查哪个API库最安全?。我不能选择所有的XML库&请仔细阅读每个库的规范。 我需要了解哪些要求? 从哪里开始是我要找的 我看到了这个链接,它提供了一些关于可以利用的XML特性的信息。 非常感谢与安全解析XML文件的方法相关的任何文档或链接。您需要考虑以下几个安全因素: 应用程序的负载(DOS攻击):可能不鼓励DOM使用Sax xml漏洞: 您需要注意库支持的xml规范,并注意异常 这个问题与: 安全性不是一维属性。你不能
非常感谢与安全解析XML文件的方法相关的任何文档或链接。您需要考虑以下几个安全因素:
- 应用程序的负载(DOS攻击):可能不鼓励DOM使用Sax
- xml漏洞:
安全性不是一维属性。你不能说一个解析器有83盎司的安全性,而另一个解析器有98盎司的安全性。因此,一个解析器比另一个解析器“更安全”的概念是毫无意义的。您需要明确您所关注的风险类型,以及特定解析器针对这些风险提供的防御措施
例如,在某些措施上,开源代码比封闭源代码更安全(因为它可供检查),但在其他措施上,它不太安全(因为黑客更容易安装后门)。一些评论/建议:
- 我认为,提出“安全XML解析器”这一主题是一个很好的问题。上述链接指向同一论坛上的另一个主题,正确地列出了利用XML解析器的工作方式可能发生的典型攻击
- 与此同时,论坛帖子还指出,除了列出攻击类型外,还提出了解决问题的可能解决方案
- 根据文章,解决方案在于解析器本身。举个例子,一种典型的攻击方法是利用内联DTD。内联DTD是几乎所有解析器都支持的特性,这是正确的,因为XML文档中会有DTD解析器。某些类别的应用程序(一些独立应用程序,如批处理等)将需要此功能
- 同时,解析器还提供了禁用DTD验证的功能,从而为应用程序开发人员提供了灵活性,使其能够根据用例选择用法
- 所以IMHO不会有所谓的安全解析器。您使用/程序的方式是安全的还是不安全的。继续的方法是记住编程解析时可能遇到的漏洞
- 这是任何通用框架的典型方法。例如,有用于web应用程序的框架。您可以构建web应用程序,但除非将其编程为安全的,否则该应用程序将不安全。该框架将提供使其安全的所有工具