将图片更改为输入密码的字符

信息安全 密码 安全剧院
2021-08-08 22:19:14

当 Lotus Notes 要求输入密码时,它会显示一个带有图片的屏幕,在第五个字符之后输入新字符后,该图片似乎会发生变化。

Lotus Notes 密码提示 Lotus Notes 密码提示 Lotus Notes 密码提示 Lotus Notes 密码提示 Lotus Notes 密码提示 Lotus Notes 密码提示

我注意到关闭和重新打开 Lotus Notes 之间的图片顺序是相同的。这是为了分散攻击者在打字时看键盘的注意力吗?这是否被证明有效?此外,据我所知,在输入每个字符后会添加随机数量的 x。我想这是攻击者看不到密码长度的原因,但是否有任何意义,因为用户没有不知道输入了多少个字符?

编辑:对于它的价值,我什至没有意识到每次输入密码时图片都是一样的。

3个回答

这个已失效的页面上有一些信息。显然,“动态画面”是为了分散肩部冲浪者的注意力的想法很普遍,而且是错误的。这不是这张照片的工作原理。它的所作所为实际上更糟,尽管它是出于好意

当您键入密码字母时,Lotus 采用“相当复杂”但具有确定性的算法将输入的密码映射到图片;这基本上是一个输出大小非常小的散列函数(输出是可能图片集中的一个“值”)。所述哈希函数可能包含一些特定于服务器的秘密,但这并不重要。真正的一点是,正如您所观察到的,当您输入密码时,您总是会得到与给定密码相同的图片。良好的意图是实现以下两个属性:

  • 提供密码输入是否正确的早期视觉警告;用户很快就会知道他自己的密码的图片序列,因此如果图片发生变化,那么用户就知道他当时输入了错误的键(或者之前可能输入了几个字符)。

  • 试图模仿此登录弹出窗口并让用户在虚假弹出窗口中输入密码的攻击者应该会发现重新计算图片并正确显示它们“困难”。

第二个原因纯属胡扯,仔细想想:“复杂的算法”不能保密(特别是如果假弹出窗口实际上是中间人攻击,而真正的弹出窗口在幕后得到实际图片),制作在屏幕上移动的图片真的很容易:这就是 99.9% 的 Web 的意义所在。

然而,第一个原因包括破坏的种子:这会泄露密码信息图片在屏幕上,非常明显;相当突出,甚至。“肩膀冲浪者”可以从远处看到它们。他可以使用它们来删除潜在的密码。事实上,如果有四张可能的图片,那么每个字符会泄漏 2 位:对于一个 8 字符的密码,实际上它应该有大约 30 位的熵,然后将其减少到微不足道的 14 位。

事实上,这个功能类似于一个系统,它会在屏幕上用大写字母和每个密码字符写:“这个字符是一个数字”/“这个字符是一个介于 A 和 M 之间的大写字母”/ ...

因此,这种“图片”系统是彻头彻尾的危险,应该被取缔。

至于密码长度,攻击者很容易获得字符数,因为每次击键都听得见肩冲浪者只需在受害者的听筒范围内,可以轻松地用智能手机记录序列以便稍后收听,适当放慢速度,从而获得密码长度。在这种情况下,对用户自己隐藏长度是没有意义的。

,密码字段左侧的图片与登录过程的安全性无关。可悲的是,这是一个“可用性”功能它被称为视觉散列这里是一个例子)。实际上,您当前使用的头像是视觉散列的一个示例。

因为 Lotus Notes 在密码字段中显示了一个随机数,XLotus(以及后来的 IBM)“巧妙”的研发团队认为,根据输入的密码显示图片将有助于用户跟踪输入的密码。

该图片是在您键入密码时专门对密码进行哈希处理并根据该哈希选择相应图片的结果。例如,如果您的密码是MyPass1sAwesomeY3ah,当您输入时,MyPass1s您会看到与该密码对应的某个图像,当输入下一个字符时,您的密码将变为MyPass1sA另一个,以此类推。

您登录的次数越多,您的大脑就越会开始注意到并记住这些图像的模式和序列,因此稍后您会本能地知道何时出现问题。例如,在您输入 后MyPass1s,您不小心输入了 a B,您将看到一张不同的图片,并且您会在潜意识层面上知道有问题,然后您会备份并更改该字母。

就个人而言,我认为这是愚蠢的。

在以前的工作场所,我们使用的是 Lotus。我记得向为我们安装它的人询问了确切的功能。他说“这将帮助您在提交密码之前知道何时输入了错误的字符”。