中登录的工作流如下
( a)在有键盘的设备上:
( b)在带有触摸屏的设备上
的安全风险?
我离开我的计算机,攻击者看到我打开的选项卡,可以检索我输入错误的密码:http://jsfiddle.net/stefek99/2Uh9T/但逻辑起作用如果攻击者能够访问我的计算机,有比偷看错误密码更有效的方法来伤害我:)
发布于 2013-07-11 13:23:49
它应该被清除。
在这样的情况下,用户输入密码,点击“登录”,然后漫游一段时间,做其他事情,这种情况并不少见。这当然发生在我尝试登录到GMail的地方,一小时后我才知道登录失败。还有一些系统(想到了sudo apt-get -y install,虽然在这种情况下,失败的密码尝试是无法恢复的),您只需要对其进行身份验证,然后忘记它--
在上面列出的GMail情况下,如果我在那个小时内从计算机上站起来,某人可以很容易地获得明文密码(嗯,错误的版本,但通常很容易修复)。
如果攻击者能够访问我的计算机,那么有更有效的方法来伤害我。
如果攻击者知道密码,通常会造成比攻击者刚刚登录的情况更严重的破坏。
然而,这确实取决于系统。对于桌面登录屏幕,只要密码字段不可复制,就无关紧要了。对于在线服务来说,更重要的是。
发布于 2013-07-11 16:03:17
不清除密码字段有一个不幸的副作用,一些用户只会假设"meh,它这次没有工作“,并将再次提交密码,未经修改。这是人类一般心理的一部分,当某些事情出错时,用户首先会认为这是别人的错误--也就是说,如果登录失败,那么服务器应该负责,而不是他们自己的密码输入。
这种行为意味着服务器上需要做更多的工作(如果服务器存储密码散列时使用慢散列( 就像它应该 ),则会增加服务器的计算负担),并且与某些自动锁定策略(当输入太多错误密码时,帐户被锁定或至少被禁用几分钟,以防止在线字典攻击)。
反映密码的安全性问题是@Manishearth讨论的特点:在一般情况下,密码是敏感的,因此,如果用户能够控制其密码的任何书面副本的生存期,则认为这是最好的。如果服务器在某些情况下向客户端发回密码,则用户无法确保在某个时候无法访问他的密码的任何书面副本。这不是一个非常严重的问题(它需要一个相当特殊的情况才有意义),但仍然值得考虑。
出于这些原因,我建议清除密码字段。触屏用户是该死的,没有人强迫他们购买iPad。
发布于 2013-07-11 13:18:49
我不认为一个非常复杂的“黑客”会发现document.forms["login"]["password"].value;是窃取仍然输入的密码的一个很好的方法。当然,他们可以对你的电脑做更糟糕的事情,但我想说,作为用户,你有责任做出这样的决定;站点操作员应该尽可能地确保事情的安全。
此外,如果你在银行网站上,没有其他人能做的事情会让你的生活变得更糟…
https://security.stackexchange.com/questions/38747
复制相似问题