最近,我意识到我正在运行的一些生产web应用程序。Diddnt没有为登录页面提供csrf保护。
只有在认证之后,csrf保护才开始生效。
我只是想知道为什么开发人员/管理员会这么做。可能是因为追踪匿名用户的工作量很大吗?只是考虑一下负荷而已。
喜欢听到你们所有人的声音!
干杯
(嘉诚:)
发布于 2016-02-03 03:21:26
CSRF涉及到在用户已经登录到浏览器(例如在另一个选项卡中)时的无声攻击。
如果他不是,这个请求就不会做任何事情,或者只是通过弹出一个登录表单来暴露攻击。
所以,为了保护愚蠢的网络用户免受伤害,我想你可以尝试携带一些antiCSRF令牌。但是现在,告诉我你是如何重新开始antiCSRF保护的?我怎么可能第一次在登录表单上贴出我的反form标记呢?在接收登录页面时,我必须登陆/或其他东西才能获得防get令牌。但是大多数站点在第一个登陆页面中都有直接的登录表单。因此,浏览器不能在第一个请求时显示antiCSRF令牌(不能使用cookies,因为即使在攻击请求期间,它也会由浏览器发送)。
不管怎么说,这是我的猜测。
发布于 2016-02-03 03:42:28
CSRF通常是为了防止在假定用户已经登录的情况下执行的攻击。因此,例如,当用户在网上银行或信用卡帐户站点OWASP CSRF文档上进行会话时,恶意代码将在用户浏览器中运行
另外,值得注意的是:在登录时可以为CSRF的需要做一个案例。正如所描述的,这里是一种不受CSRF保护的登录表单,使得攻击者有可能欺骗用户使用他们控制的帐户。在这种情况下,他们可以在与该会话登录时获取受害者的数据或活动。所以最好在登录时把它加进去。
https://stackoverflow.com/questions/35167740
复制相似问题