HP 强化 XML 外部实体注入

use*_*816 5 c# xml c#-4.0 fortify xxe

Hp fortify 通过以下代码向我展示了 XML 外部实体注入:

StringBuilder sb = new StringBuilder();
StringWriter stringWriter = new StringWriter(sb);
xmlSerializer.Serialize(stringWriter, o);
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.LoadXml(stringWriter.ToString());  //bad code
result = xmlDoc.ChildNodes[1].OuterXml;
Run Code Online (Sandbox Code Playgroud)

在上面它显示了以下行中的漏洞xmlDoc.LoadXml(stringWriter.ToString());

我该如何解决这种情况?

Tri*_*uri 3

使用 xmlDoc.XmlResolver = null; 在加载 xml 之前。