Where is password stored in browser web session?
做一些关于安全性的研究,让我想到许多浏览器是多么的不安全。例如,如果在网站登录时选择了"记住密码",则密码以明文形式存储,如果机器解锁或不安全,则很容易显示密码。
例如,当会话登录后,我想知道密码存储在哪里?我意识到,如果连接启用了SSL/TLS,那么与服务器之间的任何内容都将被加密,但是在本地计算机上呢?密码是否仍以明文形式保存在浏览器中的某个位置,或者在登录时立即加密?
- 这在经常需要密码检查的网站中尤其重要,每次刷新/导航都需要密码检查。
- 通常,当您登录到要求您输入密码的网站时,密码会发送到服务器一次,之后它就不在客户端上了。
- 我知道这是多么合乎逻辑,但听起来不太对。许多网站要求每次刷新/导航时都要重新验证密码(例如,Facebook在进行进一步操作之前会检查您的密码)。那么,假设密码仍然是纯文本格式的是正确的吗?
- 我不明白你的意思-Facebook不会要求你在刷新页面时重新输入密码。
- 不,不是,但它在后台检查。它检查会话密码是否与服务器上的密码相同。它会验证每一个动作。
- "例如,我想知道会话登录后,密码存储在哪里?"-这是单个网站的实现细节。没有一般的答案。
- 因此,可以假设一些网站会在本地(如cookie或类似的网站)非法保存密码?
网站没有那么不安全。你很困惑,因为你混合了两种不同的东西:
如果您要求浏览器保存您登录的网站的密码,则浏览器可以保存该密码。这是。例如,如何通过选中记住站点密码选项在Firefox上启用此功能:
。
如果你担心你用来登录你最喜欢的网站的密码的安全问题(你应该这样做),那么你可以使用一个密码管理器将你的密码加密存储在你的机器上。
我上面提到的是不要和自动登录(remember me)功能混用,也与之无关,但是,这可能会导致安全失败,这取决于它是如何实现的(主要是如果您的网站开发人员对包含您的凭据的cookie进行编码已经足够糟糕了)。
- 同样值得注意的是,如果您选择在Firefox中使用主密码,那么保存的密码将被加密。
- 嘿,在那儿。谢谢你的回复。不,我理解这个函数,但是如果您选择保存密码的话。例如,你在一台从未使用过的电脑上登录Facebook,并选择不将密码保存到数据库中。您已登录,但密码是否仍存在?//cookies,在浏览器的某个地方?对于每次登录后都检查密码的网站来说,这是有意义的。
- 不,如果Facebook在你连接的机器上存储密码,它就不会那么成功。你听说过饼干吗?你也可以阅读我链接到的帖子。@丹尼尔尼施克
编辑:只要网站没有明确告诉浏览器将其保存在cookie中,它就不会保存在任何地方,因为浏览器只在您登录后向服务器发送cookie。(是的,我知道还有一些背景信息,如代理等,但这不是这里的主题!)
另一个例外是使用$_SESSIONcookies的网页-当然,浏览器必须在每个新会话中发送它!但这是一个全新的登录会话,每次都有新的cookie。
旧的:你在说在哪里可以找到密码,比如
关于:firefox中的首选项安全性,在那里可以用纯文本或驱动器上的实际物理位置显示密码?
抱歉在回答btw中发布问题-我不允许评论您的问题:/
- 不。我知道如果您选择保存密码,每个浏览器都有一个sqlite(或类似的)数据库。但是当你不保存任何东西而登录时会发生什么呢?密码在哪里?您已经通过了服务器的身份验证,但很可能密码仍在浏览器中的某个纯文本位置,以防需要重新验证会话?也许是饼干?
- 更新的答案