2009-11-20 39 views
2

我被要求分析一个旧的web应用程序,它将敏感信息存储在cookie中而不是会话/类似信息中。 (确切地说,它是传统的ASP,并使用cookie系列)。唯一的客户端是IE 6/7/8在IE中清除cookie的安全性

在web应用程序中完成相关进程后,cookies被清除。

我需要回答的问题是:一旦发生这种情况,有人要恢复(删除的)cookies中的信息有多难?

我的理解如下,但我会感谢一些确认/任何其他问题,任何人都可以想到。

Cookie不应该通过网络截取cookie,因为它们是通过SSL传递的。他们可以在服务器内存/日志文件中查看(应用程序有v。综合日志记录)/内存转储(?)

在客户端上,cookie存储在文本文件中。当cookie被清除时,文本文件被删除。

尽管可以通过取消删除文件来恢复该文件,但我相信这是由第一次写入时加密的? (我无法在ie6上测试它,但它似乎在http和https的ie7上)

假设它是加密的,任何人都可以确认这是多么安全吗?

我也在研究如何将cookie存储在内存中,以及检索它们有多容易 - 任何关于此的建议也将被赞赏。

Cookie用于访问数据库,但所有连接都使用SSL,因此这不应该成为问题。数据库被锁定。

我看不到任何其他未经授权的用户访问cookie内容的方式。什么 - 如果有的话 - 我错过了吗?

我们很可能会改变使用的机制,但在确定它们全部解决之前,我确实需要提供当前系统的漏洞清单。

非常感谢您提供的任何帮助。

回答

1

存储敏感信息是 vunerability,这意味着一种方式或其他系统可以通过窃取这些文件中的信息被攻击。

攻击很可能来自客户端(如果您的服务器可能遭到攻击,那已经是个问题了)。唯一的问题是如何从客户端机器检索cookie。由于您使用https,因此只能让有人访问客户端计算机上的Cookie。这个漏洞就在这里。所有浏览器都将cookies存储在磁盘上,我怀疑它们会对它们进行编码(为什么会这样?)。我会研究IE7,Firefox,谷歌浏览器和Safari如何存储这些cookie,但可能没有真正安全的方式。最大的可能性可能在这里:如果有人编写程序来收集这些数据并且能够部署它。

如果我是你,我会改变应用程序使用会话,而不是饼干尽快。您等待的时间越长,某人可以访问这些凭据的风险就越大。

+0

是的,我正在推动这个尽快。作为一家大公司,他们对变化做出反应的速度非常缓慢,并且存在着一种趋势,即在变化=风险时不想改变。其他人已经将此标注为“安全”,这是一个令人担忧的问题 - 因此希望找到现有系统的所有问题,以尽快反驳早期的分析和强制变更。 感谢您的回答 – Basic 2009-11-20 17:22:33

+0

在这种情况下,我认为您应该尝试查看FF,Chrome,Safari或Opera存储Cookie的位置,以及它们是否加密它们(因此您已经检查过IE)。如果他们没有或者很容易解码,你可以简单地演示如何通过例如窃取某人的密码。坐在同一台计算机上,通过电子邮件将cookie发送给自己并对其进行解码。 Whola,由于系统设计不当,您刚刚展示了如何进行身份盗用。 祝您好运,从公司的喉咙推出新的解决方案! :) – 2009-11-21 09:46:26

+0

非常感谢,我会做到这一点 – Basic 2009-11-23 14:53:34