【转载】浏览器中的浏览器 (BITB) 攻击

本文探讨了一种网络钓鱼技术,该技术在浏览器中模拟浏览器窗口以欺骗合法域。

介绍

对于安全专家来说,URL 通常是域中最受信任的方面。是的,像IDN HomographDNS 劫持这样的攻击可能会降低 URL 的可靠性,但不会降低到使 URL 不可靠的程度。

所有这些最终让我思考,是否有可能让“检查 URL”的建议变得不那么可靠?经过一周的头脑风暴,我决定答案是肯定的。

弹出登录窗口

很多时候,当我们通过 Google、Microsoft、Apple 等对网站进行身份验证时,我们会看到一个弹出窗口,要求我们进行身份验证。下图显示了当有人尝试使用其 Google 帐户登录 Canva 时出现的窗口。

复制窗口

对我们来说幸运的是,使用基本的 HTML/CSS 复制整个窗口设计非常简单。将窗口设计与指向托管网络钓鱼页面的恶意服务器的 iframe 结合起来,基本上无法区分。下图显示了假窗口与真实窗口的比较。很少有人会注意到两者之间的细微差别。

JavaScript 可以很容易地用于使窗口出现在链接或按钮单击、页面加载等上。当然,您可以通过 JQuery 等库中提供的动画使窗口以视觉上吸引人的方式出现。

演示

自定义 URL 悬停

当允许 JavaScript 时,将鼠标悬停在 URL 上以确定它是否合法并不是很有效。链接的 HTML 通常如下所示:

<span style="color:#222222"><span style="background-color:#ffffff"><span style="background-color:#f5f5f5"><span style="color:#414c5e"><code class="language-text"><a href="https://gmail.com">Google</a></code></span></span></span></span>

如果添加了返回 false 的 onclick 事件,则将鼠标悬停在链接上将继续在href属性中显示网站,但当单击链接时,该href属性将被忽略。我们可以利用这些知识使弹出窗口看起来更真实。

<span style="color:#222222"><span style="background-color:#ffffff"><span style="background-color:#f5f5f5"><span style="color:#414c5e"><code class="language-text"><a href="https://gmail.com" onclick="return launchWindow();">Google</a>

function launchWindow(){
    // Launch the fake authentication window
    return false; // This will make sure the href attribute is ignored
}</code></span></span></span></span>

可用模板

我为以下操作系统和浏览器创建了模板:

  • Windows - Chrome(明暗模式)
  • Mac OSX - Chrome(明暗模式)

这些模板可以在 Github 上找到

结论

使用这种技术,我们现在能够升级我们的网络钓鱼游戏。目标用户仍需要登陆您的网站才能显示弹出窗口。但是一旦登陆攻击者拥有的网站,用户就会放心,因为他们在看似合法的网站上输入了他们的凭据(因为可信的 URL 是这样说的)。

转载:mr.d0x

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值