C# 强化问题的XML注入

C# 强化问题的XML注入,c#,xml,security,c#-4.0,fortify,C#,Xml,Security,C# 4.0,Fortify,我的项目中有以下代码 XPathDocument document = new XPathDocument(new StringReader(xml)); return document.CreateNavigator(); 在上述代码中加强显示xml注入。如何解决此xml注入?“扩展函数和变量在防止xml注入攻击方面非常有用。” 资料来源: 防止XPath注入的主要思想是预编译要使用的XPath表达式,并允许其中包含变量(参数),在计算过程中,变量(参数)将被用户输入的值替换 在.NET

我的项目中有以下代码

 XPathDocument document = new XPathDocument(new StringReader(xml));
 return document.CreateNavigator();
在上述代码中加强显示xml注入。如何解决此xml注入?

“扩展函数和变量在防止xml注入攻击方面非常有用。”

资料来源:

防止XPath注入的主要思想是预编译要使用的XPath表达式,并允许其中包含变量(参数),在计算过程中,变量(参数)将被用户输入的值替换

在.NET中:

  • 使用XPathExpression.Compile()预编译XPath表达式
  • 使用XPathExpression.SetContext()方法指定一个XsltContext对象作为上下文,该对象将一些特定变量解析为用户输入的值
  • 上面的源代码基本上包含了您需要的所有信息。

    “扩展函数和变量对于防止XML注入攻击非常有用。”

    资料来源:

    防止XPath注入的主要思想是预编译要使用的XPath表达式,并允许其中包含变量(参数),在计算过程中,变量(参数)将被用户输入的值替换

    在.NET中:

  • 使用XPathExpression.Compile()预编译XPath表达式
  • 使用XPathExpression.SetContext()方法指定一个XsltContext对象作为上下文,该对象将一些特定变量解析为用户输入的值

  • 上面的信息源基本上包含了您需要的所有信息。

    鉴于您完全没有提供任何上下文,我认为这可以通过输入验证轻松解决。鉴于您完全没有提供任何上下文,我认为这可以通过输入验证轻松解决。