2013-07-15 33 views
0

我通过引用来字段过滤HTTP请求以防止跨站点伪造攻击。我知道这是一个坏主意,我已经使用ASP.NET MVC内置的防伪机制,但我们的客户有特殊的安全工具,它通过HTTP请求的更改引用字段来检查跨站点伪造攻击。当请求未通过跨站点伪造攻击验证时,我应该返回哪个代码

我的问题是当我收到不允许的域名时需要做什么?什么http代码返回,我应该显示给用户?

它应该是自定义页面,如404未找到或只是重定向到主页面?

常见的做法是什么?

+0

只要你确信只有潜在的攻击者才能得到这个回应,就可以返回一些信息,让他们知道发生了什么。 404(甚至500,作为诱饵)不会帮助他们改善攻击。 – RichieHindle

+0

@RichieHindle不,这个回应可能会发给刚刚点击链接到我们的应用程序在其他资源(与另一个域)上的用户。 – Neir0

回答

0

“403 Forbidden”并提供一个将用户引导至您的主页的HTML主体。

攻击者在POST期间(由于同源策略)无法看到CSRF攻击的状态码,所以HTTP代码除了通知真实用户外没有任何后果。

相关问题