我有一些关于captcha和AntiForgeryToken的问题
captcha,是否需要使用AntiForgeryToken。AntiForgeryToken是否阻止自动提交表单?AntiForgeryToken作为captcha的替代方案吗?发布于 2014-09-01 07:57:54
为了更明确地回答:
如果在MVC应用程序中使用AntiForgeryToken,是否需要使用captcha。
如果自动提交是一个问题,那么是的。
AntiForgeryToken是否阻止自动提交表单?
不是的。CSRF令牌基本上确保用户访问一个页面(例如。在另一个动作发生之前包含形式的动作(如。提交了该表格)。bot可以很容易地获得一个有效的令牌来提交表单。
我可以用AntiForgeryToken代替captcha吗?
不是的。可以说,CAPTCHA可能能够取代CSRF令牌,但是CAPTCHA可能并不适用于每一种需要CSRF保护的形式(例如。一个在一个管理面板中)。
发布于 2014-09-01 07:38:45
如果在MVC应用程序中使用AntiForgeryToken,是否需要使用captcha?
CAPTCHA是一种在计算中用于确定用户是否为人的挑战-响应测试。(...)CAPTCHA用于防止机器人使用各种类型的计算服务或收集某些类型的敏感信息。- 维基百科
跨站点请求伪造(CSRF)是一种攻击,当恶意网站、电子邮件、博客、即时消息或程序导致用户的Web浏览器在用户当前已通过身份验证的受信任站点上执行不需要的操作时,就会发生这种攻击。- OWASP
正如您所读到的,它们都是完全不同的安全性方面。如果没有正确的实现(浏览器可用性问题、难以解决的CAPTCHA等),CAPTCHA和CSRF预防都可能对用户体验不利。
说到这里,我想我已经用这个回答了你所有的问题。我建议你查查我联系过的消息来源。它将消除大多数,如果不是,所有(进一步)问题,你可能有关于这个主题。
发布于 2014-09-01 08:53:34
答案如下: 1.是的,2.不,3.不
captcha确实覆盖了一个丢失的csrf令牌,但是它并不是以相反的方式工作,所以无论您需要保护什么地方来防止自动化,都可以使用captcha。
https://security.stackexchange.com/questions/66510
复制相似问题