MVC中的ValidateRequest并未真正中止请求

时间:2012-07-03 16:37:55

标签: asp.net-mvc asp.net-mvc-3 razor xss

我正在测试我的MVC3网络应用程序是否存在XSS攻击,我注意到.Net中默认ValidateRequest的奇怪行为

我有一个包含几个文本字段的表单,当我输入“危险”字符串时,例如:

<img src=x onerror=alert(/XSS/.source)>

我看到“正在检测到有潜在危险的Request.Form ...”消息按预期弹出。

我的理解是,此验证将自动取消请求,不会发生任何更改。但是,当我刷新页面时,我发现有问题的文本字段现在显示的值为'ED7F9'

如果我尝试保存<script>alert("hi")</script>的值,会出现类似的情况。在这种情况下,在验证消息之后,字段中的剩余文本是:“alert(”

有没有人见过这个有关为什么会发生这种情况的线索?

0 个答案:

没有答案