带外身份验证的中间人攻击

信息安全 验证 中间人
2021-08-25 20:03:40

我正在研究避免中间人攻击的方法。我想过使用带外身份验证,但我阅读了关于同一主题的维基百科文章,内容如下:

“在身份验证中,带外是指利用两个独立的网络或通道,其中一个与主网络或通道不同,同时用于在两方或设备之间进行通信以识别用户。蜂窝网络通常用于用于带外身份验证。带外身份验证的一个示例是,当网上银行用户通过登录访问他们的网上银行账户时,一次性密码通过短信发送到他们的手机以识别他们。主要渠道是用户输入登录信息的在线登录屏幕,第二个独立渠道是蜂窝网络。这一增加的安全层可防止黑客和恶意软件破坏对完整身份验证过程的访问,但是,众所周知,这种验证用户的方法容易受到中间人 (MITM) 攻击。”

有人可以解释为什么粗线是正确的吗?换句话说,像短信这样的带外身份验证如何容易受到中间人攻击?

3个回答

威胁是当 MITM 拥有登录屏幕时。

例如,如果您单击电子邮件中的链接,该链接声称是https://yourbank.example的链接,但实际上是http://yourbank.evilbob.example的链接,然后输入您使用的用户名和密码你的银行网站,Evil Bob 只需要转发这些。

然后,https://yourbank.example不知道是 EvilBob 的网站提交了您的凭据,而不是您,它尽职尽责地向您的手机发送验证码并等待您的回复。但是,您仍然在http://yourbank.evilbob.example上,它已经接受了您的用户名和密码,并为您提供了一个输入字段以输入您将在手机上收到的验证码。

因此,您在http://yourbank.evilbob.example中输入验证码,它转身将其提交到https://yourbank.example,Evil Bob 的网站现在已登录到您的网上银行界面。

那是带外两个因素身份验证的中间威胁的人。

带外身份验证依赖于攻击者在尝试同时窃听两个通信时面临的额外困难。这个困难是由于两个通道完全分开而产生的。

可以将两个通道结合在一起的攻击者会破坏这种防御。对于Zeus恶意软件,受感染的 PC 会尝试通过 USB 或蓝牙感染移动设备。一旦发生这种情况,攻击者控制了双频认证中使用的每个客户端,他有效地将通道聚集在一起。

Zeus 尤其会尝试通过 PC 登录,等待 SMS 到达移动设备,然后将 SMS 传回 PC(恶意软件到恶意软件)。所有这一切都发生在没有任何设备的用户的任何指示。

这里的问题是我们使用两个智能设备作为客户端。智能设备具有协议栈和软件漏洞。诸如HOTP fobs 之类的“哑”硬件令牌不存在这些问题并且不能被颠覆,这是更喜欢使用它们的原因之一。

我写了上面引用的原始维基百科文章。上面提供的一些评论是正确的,而另一些则不是。简而言之,所有带外方法都容易受到中间人攻击,因为身份验证实体无法验证提供身份验证凭据的实体的真实性。无论这涉及硬件令牌、“哑”令牌还是发送到电话的代码,该过程仍然容易受到攻击。虽然连接的 fob 更安全,但它们仍然依赖从 fob 传输到等待网站的信息(这可能是一个仅为获取该信息而构建的假冒网站)。目前缓解所有中间人攻击的唯一过程是虚拟令牌过程,它是基于“复杂设备识别”的商业产品