HP fortify XML Inject 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());
Как я могу разрешить эту ситуацию?
1 ответ
Решение
В объекте XmlDocument есть объект XmlResolver, для которого необходимо установить значение NULL в версиях до 4.5.2. В версиях 4.5.2 и выше этот XmlResolver по умолчанию имеет значение null.