就在您认为自己已经看到了所有网络钓鱼技巧时,BitB 出现了。
当我们教人们如何避免成为网络钓鱼网站的受害者时,我们通常建议仔细检查地址栏以确保它确实包含 HTTPS 并且 不包含可疑域(如 google.evildomain.com)或替代字母(如 g00gle) .com。但是,如果有人找到了一种使用不包含这些迹象的恶意网站来钓鱼密码的方法呢?
一位研究人员设计了一种技术来做到这一点。他称其为 BitB,是“浏览器中的浏览器”的缩写。它使用真实浏览器窗口中的虚假浏览器窗口来欺骗 OAuth 页面。成千上万的网站使用OAuth 协议让访问者使用他们在 Google、Facebook 或 Apple 等公司的现有帐户登录。访问者不必在新站点上创建帐户,而是可以使用他们已有的帐户——剩下的一切由 OAuth 的魔力完成。
利用信任
例如,照片编辑网站 Canva 为访问者提供了使用三个常用帐户中的任何一个登录的选项。下图显示了用户单击“登录”按钮后看到的内容;之后,图像显示选择使用 Google 密码登录后出现的内容。用户选择 Google 后,一个具有合法地址的新浏览器窗口会在现有 Canva 窗口前面打开。
OAuth 协议确保只有 Google 接收用户密码。Canva 永远不会看到凭据。相反,OAuth 会安全地与 Google 建立登录会话,并且当用户名和密码签出时,Google 会向访问者提供一个令牌,该令牌可以访问 Canva。(当购物者选择 PayPal 等支付方式时,也会发生类似的情况。)
BitB 技术利用了这个方案。BitB 没有打开连接到便于登录或付款的站点的真正的第二个浏览器窗口,而是使用一系列 HTML 和级联样式表 (CSS) 技巧来令人信服地欺骗第二个窗口。出现在那里的 URL 可以显示一个有效的地址,并带有一个挂锁和 HTTPS 前缀。窗口的布局和行为看起来与真实事物相同。
上周,一位使用 mr.d0x 句柄的研究人员描述了该技术。他的概念验证漏洞利用从一个网页开始,该网页显示了对 Canva 的精确欺骗。如果访问者选择使用 Apple、Google 或 Facebook 登录,伪造的 Canva 页面会打开一个新页面,其中嵌入了看起来很熟悉的 OAuth 页面。
这个新页面也是一个恶搞。它包括人们在使用 Google 登录时希望看到的所有图形。该页面的地址栏中还显示了合法的 Google 地址。如果连接到真正的 Google OAuth 会话,新窗口的行为与浏览器窗口非常相似。
如果潜在的受害者打开虚假的 Canva.com 页面并尝试使用 Google 登录,“它将打开一个新的浏览器窗口并转到 [看起来是] URL accounts.google.com,”mr.d0x 在一篇文章中写道信息。实际上,伪造的 Canva 网站“并没有打开新的浏览器窗口。它使它看起来像打开了一个新的浏览器窗口,但它只是 HTML/CSS。现在那个假窗口将 URL 设置为 accounts.google.com,但这是一种错觉。”
恶意广告商:请不要阅读此内容
一位安全研究人员对该演示印象深刻,于是制作了一个YouTube 视频,更生动地展示了该技术的外观。它还解释了该技术的工作原理以及实施的容易程度。
BitB 技术非常简单有效,令人惊讶的是它并不为人所知。在 mr.d0x 撰写了有关该技术的文章后,一小部分研究人员齐声表示,更有经验的 Web 用户很可能会中招。(mr.d0x 在此处提供了概念验证模板。)
“这种浏览器中的浏览器攻击非常适合网络钓鱼,”一位开发人员写道。“如果您涉及恶意广告,请不要阅读此内容。我们不想给你任何想法。”
“哦,这太糟糕了:浏览器中的浏览器 (BITB) 攻击,一种新的网络钓鱼技术,它允许窃取即使网络专业人士也无法检测到的凭据,”另一个人说。
该技术之前至少曾在野外积极使用过一次。正如安全公司 Zscaler在 2020 年报道的那样,诈骗者使用 BitB 攻击试图窃取视频游戏分发服务 Steam 的凭据。
虽然该方法令人信服,但它有一些弱点,应该为精明的访问者提供一种万无一失的方法来检测是否有问题。真正的 OAuth 或支付窗口实际上是与主页不同的独立浏览器实例。这意味着用户可以调整它们的大小并将它们移动到显示器上的任何位置,包括主窗口之外。
相比之下,BitB 窗口根本不是一个单独的浏览器实例。相反,它们是由自定义 HTML 和 CSS 呈现并包含在主窗口中的图像。这意味着假页面无法调整大小、完全最大化或拖动到主窗口之外。
不幸的是,正如 mr.d0x 所指出的那样,这些检查可能很难教授,“因为现在我们远离了标准的’检查 URL’”建议。“你在教用户做他们从未做过的事情。”
所有用户都应使用双重身份验证来保护他们的帐户。更有经验的用户可以做的另一件事是右键单击弹出页面并选择“检查”。如果窗口是 BitB 生成的,它的 URL 将被硬编码到 HTML 中。
发现 BitB 技术得到更广泛的使用并不奇怪,但 mr.d0x 收到的反应表明许多安全防御者并不知道 BitB。这意味着很多最终用户也不是。