【问题标题】:Where is password stored in browser web session?密码存储在浏览器 Web 会话中的什么位置?
【发布时间】:2016-08-27 00:49:30
【问题描述】:

对安全性进行了一些研究,我发现许多浏览器非常不安全。例如,如果在网站登录时选择了“记住密码”,则密码以明文形式存储,并且如果机器未锁定或不安全,则很容易泄露。

我想知道,例如,一旦会话登录,密码存储在哪里?我意识到如果连接启用了 SSL/TLS,那么进出服务器的任何内容都是加密的,但是在本地计算机上呢?密码是否仍以明文形式保存在浏览器中的某个位置,还是在您登录时立即加密?

【问题讨论】:

  • 这对于需要在每次刷新/导航时不断检查密码的网站来说尤其重要。
  • 通常情况下,当您登录一个需要您输入密码的网站时,密码会被发送到服务器一次,然后它就不会出现在客户端上。
  • 我可以看出这是多么合乎逻辑,但听起来不太对劲。许多网站要求您在每次刷新/导航时重新验证密码(例如,Facebook 在进一步采取任何行动之前检查您的密码)。那么假设密码仍然是明文形式是否正确?
  • 我不明白您的意思 - Facebook 不会在您刷新页面时要求您重新输入密码。
  • 不,它不会,但它会在后台检查。它检查会话密码是否与仍在服务器上的密码相同。它验证它的每一个动作。

标签: html google-chrome security passwords


【解决方案1】:

网站并不是那么不安全。你很困惑,因为你混合了两种不同的东西:

  1. 如果您要求,您的浏览器可以保存您登录网站的密码。 这是。例如,如何通过选中记住网站密码选项在 Firefox 上启用此功能:

如果您担心用于登录您喜欢的网站的密码的安全问题(您应该这样做),那么您可以使用password manager,它将您的密码加密存储在您的机器上。

  1. 我上面提到的不是与autoLogin (Remember Me) feature 混合,也没有任何关系,但是,根据它的实施方式,它可能会出现安全故障(主要是如果你的网站的开发人员足够糟糕,无法编写 cookie包含您的凭据)。

【讨论】:

  • 另外值得注意的是,如果你在firefox中选择使用主密码,保存的密码会被加密。
  • 你好。感谢您的回复。不,我了解此功能,但这是您选择保存密码的情况。例如,您在以前从未使用过的机器上登录 Facebook,并选择不将密码保存到数据库中。您已登录,但您的密码是否仍然存在于某个地方? // cookie,在浏览器的某个地方?对于在您登录后每次导航时都会检查密码的网站来说,这是有道理的。
  • 不,如果 Facebook 将密码存储在您连接的机器中,那么 Facebook 就不会那么成功。你听说过饼干吗?您也可以阅读我链接到的帖子。 @DanielNitschke
【解决方案2】:

编辑:只要网站没有明确告诉浏览器将其保存在cookies中,它就不会保存在任何地方,因为浏览器只向服务器发送cookies一次您已登录。 (是的,我知道还有代理等背景信息,但这不是这里的主题!)

另一个例外是使用$_SESSION Cookies 的网页 - 当然,浏览器必须在每个新会话中发送它!但这是一个全新的登录会话,每次都带有新的 Cookie。

: 您是在说在哪里可以找到密码,例如

about:preferences#security 在 Firefox 中,可以以完全纯文本的形式显示密码,还是驱动器上的实际物理位置?

很抱歉在答案中发布问题顺便说一句 - 我不被允许评论你的问题:/

【讨论】:

  • 不。我知道如果您选择保存密码,每个浏览器都有一个 SQLite(或类似的)数据库。但是当你登录而不保存任何东西时会发生什么?密码去哪儿了。您已经通过服务器进行了身份验证,但是密码很可能仍然以纯文本形式位于浏览器中的某个位置,以防需要重新验证会话?也许是饼干?
猜你喜欢
  • 1970-01-01
  • 2015-10-01
  • 1970-01-01
  • 1970-01-01
  • 2012-01-22
  • 1970-01-01
  • 1970-01-01
  • 2021-12-10
  • 2012-05-03
相关资源
最近更新 更多