HP fortify XML 外部实体注入
HP fortify XML External Entity Injection
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;
在上面显示了以下行中的漏洞 xmlDoc.LoadXml(stringWriter.ToString());
我该如何解决这种情况?
使用xmlDoc.XmlResolver = null;在加载 xml.
之前
XmlDocument 对象中有一个 XmlResolver 对象,在 4.5.2 之前的版本中需要将其设置为 null。
在 4.5.2 及更高版本中,此 XmlResolver 默认设置为 null。
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;
在上面显示了以下行中的漏洞 xmlDoc.LoadXml(stringWriter.ToString());
我该如何解决这种情况?
使用xmlDoc.XmlResolver = null;在加载 xml.
之前XmlDocument 对象中有一个 XmlResolver 对象,在 4.5.2 之前的版本中需要将其设置为 null。 在 4.5.2 及更高版本中,此 XmlResolver 默认设置为 null。