Mozilla声称,有人可以坐在你的电脑前,在15秒内获得你每个网站的密码。在第一次编写Firefox扩展时,我了解到我可以访问用户目录中的任何文件(假设该文件归用户所有)。如果密码被解密并写入用户目录中的某个位置,则在会话期间,恶意扩展或使用可能访问用户目录的web代码的站点可以访问这些密码。软件安全设备在Firefox中使用的过程是什么,以确保站点密码真的不会受到此类恶意代码的攻击?
将密码解密到硬盘驱动器将是不安全的,因为其他进程可能会读取它们。软件安全设备是否将它们解密到用户目录?
如果不是,那么软件安全设备是否只在ram中解密它们?如果是,那么另一个应用程序读取软件安全设备的应用程序空间的可能性是什么?
请描述一下。
描述这个过程不应该是秘密,因为秘密是脆弱性和弱点的标志,相反,一个真正安全的方法需要暴力破解。关于加密过程的开放政策提供了更广泛的受众,这增加了更安全的解决方案的可能性。
我之所以提出这个问题,是因为Mozilla网站上的软件安全设备解释或主密码解释中没有对此进行描述,这让我怀疑使用该功能是否真的安全。
发布于 2012-02-16 19:47:33
密码存储在用户配置文件目录中的SQLite数据库signons.sqlite中。默认情况下,它们并不是真正加密的-从这个文件中提取它们并“解密”是微不足道的。为了在这里有一些安全性,用户必须定义一个主密码(在Firefox选项的security选项卡上),这个密码将用于加密数据库中的密码。如果已经这样做了,那么从signons.sqlite中提取密码就不是那么简单了,人们必须猜测主密码。
当然,Firefox需要解密密码才能使用它们。如果某些浏览器代码请求密码(通过nsILoginManager),则会出现主密码提示-用户需要输入主密码才能解密其密码。解密后的密码永远不会写入磁盘,但之后浏览器(和任何浏览器扩展)将能够访问它们。
Firefox不会做任何事情来阻止扩展访问密码,因为这是没有意义的。防止恶意扩展获取您的密码的唯一方法是首先避免安装恶意扩展。即使nsILoginManager不在那里,当传输密码时,恶意扩展仍然可以监听您与网页的通信。或者,当询问主密码时,它可以监听您键入的内容。或者,它可以伪造主密码对话框并直接获取主密码。有很多种可能性--一个应用程序不可能击败另一个使用相同权限运行的应用程序。
PS:软件安全设备是用于证书的,而不是密码-完全无关。但它使用相同的主密码,因此出现了令人困惑的对话框。
https://stackoverflow.com/questions/9310459
复制相似问题