如何测试我的wasp.net MVC 3网站是否受到CSRF攻击的保护

时间:2012-01-19 21:58:23

标签: c# asp.net-mvc-3 security antiforgerytoken

我在接受用户输入的所有视图和相关操作方法的[ValidateAntiForgeryToken]上使用Anti伪造令牌html助手,以防止任何可能的CSRF攻击。 但我面临一个问题,我如何测试这些代码行是否运行良好,他们将防止任何可能的攻击。 BR

1 个答案:

答案 0 :(得分:1)

您可以编写一个静态HTML页面,您可以在任何地方托管。甚至不需要Web服务器,例如,您可以使用file:///c:/foo.htm。在此HTML页面中,创建一个简单的<form>,它将包含与要针对CSRF测试的某些ASP.NET MVC视图相同的输入元素(相同名称)。表单的action将指向与ASP.NET MVC视图相同的操作。然后提交表格。如果抛出AntiForgeryToken异常,则表示您是安全的。另一方面,如果执行控制器操作,则您很容易受到CSRF攻击。

要了解有关CSRF的更多信息,请查看following article。杰夫阿特伍德也blogged了解它。

不要只是期待一些奇迹工具,你会跑,它会显示绿灯或红灯。如果存在这样的工具,黑客将不存在,因为所有站点都将受到保护,并且他们没有任何东西可以攻击。

确保您的网站安全的最佳方法是咨询将进行广泛审核和代码审核的安全专家。