c# - 修复 "Improper Restriction of xml external entity reference"的最佳方法是什么?

标签 c# .net xml veracode

我们最近运行的 VeraCode 指出了以下方法:

    public XmlElement RunProcedureXmlElement(string Procedure, List<SqlParameter> Parameters)
    {
        DataSet ds = RunProcedureDataSet(Procedure, Parameters);
        XmlDocument xmlDoc = new XmlDocument();
        StringBuilder strXML = new StringBuilder();

        foreach (DataTable dt in ds.Tables)
        {
            foreach (DataRow dr in dt.Rows)
            {
                strXML.Append(dr[0]); // Do I still need .ToString()???
            }
        }
        if (strXML.Length == 0) strXML.Append("<root total=\"0\"></root>");

        try
        {
            xmlDoc.LoadXml(strXML.ToString());
        }
        catch (XmlException e)
        {

        }

        return xmlDoc.DocumentElement;
    }

修复该方法以便 VeraCode 停止提示的好的解决方案是什么?

谢谢

最佳答案

我在 Veracode 上也有同样的问题,下面解决了它。
声明 XmlReader 后:

XmlDocument xmlDoc = new XmlDocument();

添加行:

xmlDoc.XmlResolver = null;

关于c# - 修复 "Improper Restriction of xml external entity reference"的最佳方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21938048/

相关文章:

c# - 使用 Microsoft.Azure.NotificationHubs.Installation 类时如何选择模板?

c# - 在 C# 中解析 80 Gb XML 文件

xml - Delphi 2010 中的 C# 样式 XML 注释

java - 如何强制用户仅在编辑文本中输入表情符号

c# - 在编译时强制进行狭窄的隐式强制转换

c# - EPPlus - 从工作表中获取文件名

c# - 在 C# 中下载一个 JSON 字符串

asp.net - Web 部署错误到 IIS - 应用程序池 ManagedRuntimeVersion

java - 这是哪个模板引擎?

android - Svg 在设备中不可见但在 android xml 中可见