一个站点(我不会命名它)text在 HTML 表单中使用输入类型作为其密码字段。然后该onfocus方法将这些字符更改为点。
这里有安全漏洞吗?
还是比使用 type 的输入更安全password?
还是只是失去了利用现有代码的机会?
一个站点(我不会命名它)text在 HTML 表单中使用输入类型作为其密码字段。然后该onfocus方法将这些字符更改为点。
这里有安全漏洞吗?
还是比使用 type 的输入更安全password?
还是只是失去了利用现有代码的机会?
这是一个漏洞。如果用户禁用了 JavaScript,他们的密码将不会更改为点,因此他们很容易受到肩部冲浪的影响。
正如用户@Question Overflow 在他们对您的问题的评论中指出的那样,在字段外单击也会显示密码。这意味着同事可以通过鼠标稍等片刻来查看用户的密码——即使是偶然的。
该站点可能会遵循Jakob Nielsen 于 2009 年 6 月 23 日发布的文章“停止密码屏蔽”中的指导。
摘要:当用户输入密码并且他们得到的唯一反馈是一排项目符号时,可用性会受到影响。通常,屏蔽密码甚至不会提高安全性,但由于登录失败,它确实会让您付出代价。
密码屏蔽以极大的可用性成本解决了肩冲浪攻击,特别是在不使用密码管理器的非技术用户中。与对用户凭据的其他攻击相比,该网站可能已经权衡了肩部冲浪的风险,并认为不值得失去可用性。我已经看到其他一些网站使用 JavaScript 控件在和type之间切换密码字段的属性,让用户在可用性和安全性之间做出自己的权衡,以防止肩膀冲浪。"password""text"
有问题的网站被描述为不完全遵循此建议。也许工程师们听从了这个建议,但后来管理层要求改变它。或者他们可能试图模仿移动设备的行为,即在密码字段中简要显示最后输入的字符。