ASP.NET MVC - 潜在危险的请求。形式值'<'和/或'>'

时间:2013-11-19 19:56:46

标签: asp.net-mvc razor encoding

当我在textarea上输入'<test>'时出现此错误,因此我假设字符'<''>'正在导致它。

由于我正在寻找修复方法,我发现绝大多数人都建议将其添加到web.config中:

<httpRuntime requestValidationMode="2.0"/>

或将此添加到我的操作中:

[ValidateInput(false)]

但我担心这样做会让我对sql注入之类的恶意输入开放,所以我想知道解决这个问题的更安全方法。

PS:我正在使用textareafor(虽然我不确定它有什么区别)。

1 个答案:

答案 0 :(得分:2)

您可以在视图模型中向属性添加[AllowHtml]属性。

无论ValidateModel如何,都可以进行SQL注入攻击。危险在于XSS攻击。为了防止XSS攻击,您可以对HTML进行编码。