2012-08-06 130 views
0

我有一个关于Form authentication Cookie漏洞的问题。在JavaScript中,我们可以使用document.cookie来访问表单身份验证cookie值(假设它不是httponly)。该值已加密。我曾在很多博客中读到,如果有人得到这个价值,我们的安全就会被破坏。我的问题是,他(攻击者)如何破坏它(cookie内的凭证),因为表单身份验证加密方法使用机器密钥来加密该cookie,因此要解密它,将需要相同的机器密钥?不是吗?您能否澄清一下,由于攻击者应该只有我的机器密钥才能解密,因此该cookie的脆弱性如何?我在这里吗?表单身份验证Cookie漏洞

+0

你可能想在这里阅读它。但是,如果我没有弄错某些形式的对策是由MS发布的。 http://visualstudiomagazine.com/articles/2010/09/14/aspnet-security-hack.aspx – JaggenSWE 2012-08-06 21:07:58

回答

2

焉能(攻击者)违反它,因为表单认证加密

他没有解密加密的Cookie(饼干里面的凭据)。他可以使用cookie的加密值并成为你。

服务器执行加密,所以它不知道给它的cookie的浏览器是cookie最初发给谁的。

使用类似Modify This Cookie(或任何其他可实现该功能的扩展名)的扩展名将允许我将cookie设置为您的加密值(如果我能够获得该值)。

具有讽刺意味的是,the very same question被问及StackOverflow。看看特洛伊的帖子,了解更多信息。

+0

MAN!你是对的。我认为他可以在他的客户端创建一个虚拟cookie,并且可以设置值(劫持一个)并将其发送给服务器?它是否正确? – 2012-08-06 21:06:46

+0

@RockySingh yep。这就是为什么HTTPS很重要,甚至超出了初始认证步骤。 HTTPS也通过网络加密cookie。 – vcsjones 2012-08-06 21:08:27

+0

@RockySingh我添加了一个链接到一个博客,应该更深入地解释一下。 – vcsjones 2012-08-06 21:09:21

1

我做了什么,不知道它实际上有多大帮助,但我从未见过任何违规行为(尽管有100次尝试)是将cookie与IP地址配对,这意味着如果呼叫来自与先前呼叫相同的IP地址,我会查找它,如果不是,则会重置Cookie,您必须重新登录。这对所有网站来说都不是完全可行的,但在我看来,增加一些安全措施而不是允许移动性更重要。

这种方法可能是MITM攻击很好suceptible,但你永远无法保护自己免受除非你有怪物预算有关性能和可访问所有的可能性,并没有任何限制。

+0

要求用户保持相同的IP地址会带来拒绝合法用户访问的风险。通过VPN走动 *连接/断开( *插入或拔出网线与Wi-Fi切换到/ *更改Wi-Fi热点或手机发射塔:用户可以在会话中的各种原因而改变IP地址更改默认路由) *使用IP地址池的动态NAT *负载平衡或分布式代理 仅匹配IP地址的一部分可以减轻影响......但也为相同的人留下了大门咖啡店劫持连接。 – Bruce 2017-01-26 16:09:03

+0

那么,IP地址验证的应用主要部署在需要这种安全级别的解决方案中。这一切都归结于你想要保护的东西,我想。 – JaggenSWE 2017-02-01 12:48:37