ASP.NET MVC XSS 验证

Jak*_*ake 5 xss asp.net-mvc

我们正在使用 ASP.NET MVC 5.0 来构建网站。如果我在保存时在文本框中输入一些 javascript,我会收到一个“检测到潜在不安全输入”的错误页面 - 太好了。

然而,我们的一些屏幕使用 ajax 提交将 json 直接传递给控制器​​,这似乎跳过了上面的验证。

有什么方法可以在控制器中调用模型(或模型中的每个文本字段)上的标准验证以抛出上述错误。即类似的东西

 public override ActionResult Create(MyModel myModel)
 {
     /* Any dubious input this should throw an error*/
     AntiXSS.ValidateInput(myModel);
     ...
Run Code Online (Sandbox Code Playgroud)

vij*_*yst -1

[ValidateInput] 属性可以附加到每个方法。http://www.c-sharpcorner.com/UploadFile/dacca2/validateinput-attribute-to-prevent-css-attack-in-mvc/

  • 进一步的研究表明问题在于 JsonValueProviderFactory 被用于对不运行验证的绑定进行建模。 (2认同)