假设有人偷了我的密码,他/她可以通过确认旧密码来轻松地更改它。

所以,我很好奇为什么我们需要该步骤并使用旧密码确认的目的是什么?

评论

请注意,出于答案中给出的有效理由,此政策(或类似政策)必须适用于所有帐户控制功能。例如。更改具有密码重置功能的帐户的电子邮件地址。

@ronaldtgi我以为您是在暗示“如果我们已经登录*,为什么我们需要该步骤*,这是正确的吗?否则问题似乎很愚蠢。

同样,这类似于在Linux计算机上发出“ sudo”命令时要求您再次输入密码。否则,我走了30秒钟而没有锁定我的PC,有人迅速键入了“ sudo恶意命令”,即使我没有以root用户身份登录,即使该人只是使用root用户访问权限,我也感到非常沮丧。或类似Windows UAC提示您安装某些东西时。这些都是提供保护层的额外网关。

“假设有人偷了我的密码,他/她可以通过确认旧密码来轻松地更改它。”确实,但是如果系统不询问旧密码,它将变成“假设某人根本不知道我的密码,他/她可以轻松地将其更改为他们想要的任何密码”。这听起来对您安全吗?

@oerkelens第二条陈述不正确,并且高估了问题。应该是“假设某人根本不知道我的密码,如果他/她可以访问我已经登录的系统,则可以轻松地将其更改为他们想要的任何内容”。根据上下文,这可能在可接受的安全性限制内。例如。当我想更改它时,我可能不需要我的防盗警报系统询问我的旧代码,因为在现实情况中,这并不重要。

#1 楼

如果您已登录并且我坐在您的计算机旁,我可以将您从您的帐户中锁定,并将所有权转让给我自己。

评论


嘿,您是对的,无论如何您的回答还是更好。

–纳劳里恩
17年6月15日在9:47

我经常看到更改密码后,会将电子邮件发送到您注册时使用的地址(如果更改了电子邮件地址,则将2封电子邮件发送到新的和旧的地址),并带有特殊的“还原此更改” URL避免这种收购。

–user1306322
17年6月15日在10:48

@ user1306322我承认我从未见过“还原此更改”选项,只是注意到已尝试进行某些操作。您知道哪些服务提供“还原”选项吗?

– schroeder♦
17年6月15日11:00

@schroeder我见过的大多数“已更改密码”电子邮件通常都不会直接包含“还原此更改”按钮,但通常会包含有关如果您不是发起更改的人该怎么办的说明。通常,这些说明会告诉您通过正常的基于电子邮件的帐户恢复过程来重置密码,这可能比仅还原更改要好,因为无论是谁首先更改了密码,都可能已经拥有了旧密码。

– Ajedi32
17年6月15日在13:13



@ user1306322对我来说更有意义,并符合我的经验

– schroeder♦
17年6月15日在14:21

#2 楼

主要有两个原因:


如果会话受到感染(例如,您离开计算机并且其他人跳了起来,或者存在远程会话感染漏洞),它将阻止其他人更改会话。密码,将您锁定在自己的帐户之外。
如果要强制更改密码,则可以检查旧密码和新密码不匹配,而无需以可恢复的形式存储旧密码-您可以进行检查,然后检查新密码是否不相同,即使密码杂乱无章。虽然您可以仅使用哈希来检查完全匹配,但是它不允许进行诸如“确保新密码不是旧密码且最后一位数字递增一个的旧密码”之类的检查,这有时是更敏感的应用程序所必需的


评论


确实应该使用相同的安全机制来保护那些其他敏感字段(例如电子邮件)。并非每个站点都采取这种级别的护理,但这是应该做的事情。

–索伦
17年6月15日在10:26

保存的密码通常会在登录页面上预先填写,但不太可能在密码重置页面上预先填写,这要求用户明确地知道旧密码,而不是仅仅保存旧密码。

– mlhDev
17年6月15日在12:28

@Matthew您甚至可以通过获取新密码,递减最后一位数字并散列以查看是否为旧密码来做到这一点,但是使用旧密码和新密码可以方便进行某些检查。

–大卫·康拉德(David Conrad)
17年6月15日在20:46

除非您学习过源代码,否则您不知道是否有任何扩展正在监视您。

– WGroleau
17年6月16日在19:32

@Luc我只是指出这是有可能的,不是建议对类似的密码进行测试,也不主张强制更改密码。

–大卫·康拉德(David Conrad)
17年6月20日在13:22

#3 楼

为了补充其他答案,我将添加以确认键盘是否按用户期望的方式工作。

大写锁定可以反转大小写,并且Num锁定可以更改是否键入例如。小键盘上的“ 4”将向左移动光标。有些界面显示警告,但有些界面却没有。

大多数操作系统具有软件键盘布局。能够正确键入旧密码可以很好地证明您打算使用当前的布局。

我也有个别按键停止工作,这在您排查为什么无法解决问题时会感到沮丧t从任何其他键盘登录。

评论


“我也有个别按键停止工作,这在您解决无法从任何其他键盘登录的原因时会感到沮丧。”您的意思是您从损坏的键盘上设置了密码,然后无法登录任何其他键盘? :D哇,这实际上是一个非常有趣的场景。

–通配符
17年6月20日在4:26



@Wildcard我曾经遇到过这样的情况,键盘设置在密码设置和登录后之间发生了变化。想象一下在无法以明文形式读取密码的情况下对这些问题进行故障排除。这是Windows登录,我用户的键盘布局与操作系统不同。

– BlueCacti
17年6月21日在11:18

Steam在Big Picture模式和某些控制器上存在(有?)问题,其中界面上显示的某些键与按下该控制器按钮时实际输入的键不匹配。因此,如果使用键盘设置密码,则可能无法在控制器上输入密码,反之亦然。

– GalacticCowboy
17-6-22在11:43



#4 楼

我认为,确认旧密码并不能帮助您保护密码,以防万一您丢失密码。但这在没有人窃取密码的情况下确实很有意义,因为它可以确保您是唯一可以更改密码的人(因为只有您知道密码)。例如,没人知道您的Facebook密码,但是您已经用手机上的帐户登录了Facebook,然后您的朋友借了您的手机。如果他/她想更改您的密码,那么在不知道您当前密码的情况下是不可能的。

评论


好的,他们可以重设密码并打开您的电子邮件,但这是正确的。

– Tim
17年6月15日在16:09

这是上面答案中的第一名。

– Ploni
17年6月18日在21:20

除非是您的Skype帐户,否则您将丢失密码。然后你就被搞砸了。 (您可以在登录的设备上继续使用Skype帐户,但是一旦它们过时且不受支持,您将永远被锁定。)(几乎无法获得Skype密码重置过程的批准。)

–通配符
17年6月20日在4:25

#5 楼

这是为了帮助您保留自己的帐户。
一些情况


您的Cookie是通过中间件或其他方法被某人窃取的,如果该站点没有,提示您输入旧密码,他们可以更改密码和恢复电子邮件,然后该帐户不再属于您。


如果有人可以访问您登录的系统,则他们可以更改密码,然后恢复电子邮件,然后该帐户不再属于您。



#6 楼

跨站请求伪造(CSRF)保护。这可能不是主要原因,但是没有使用CSRF保护但又需要使用旧密码进行更改的网站至少已保护了一个请求免受CSRF攻击。