如何“提供”点击劫持攻击?

信息安全 点击劫持
2021-09-10 19:22:24

黑客如何进行点击劫持攻击?

  • 黑客是否需要操纵“good.com”网站并更改其原始代码?
  • 黑客是否创建了一个“evil.com”网站,只是在“good.com”网站上放置了一个带有恶意代码的透明层?
  • 黑客会在客户端更改代码吗?
1个回答

假设攻击者想要让用户点击victim.com.

为此,他们需要放置一个iframe地方——任何地方——受害者会看到它的地方。放置在哪里或如何放置在那里并不重要。

这不是必需的,但理想情况下,攻击者也可以在此处运行 JavaScript,因为它增加了成功利用的机会,尤其是在多次点击攻击中(可以“跟随”鼠标指针,从而确保任何点击点击在victim.com 网站的所需位置上)。

以下是我能想到的攻击者可以将 iframe 传递给受害者的方式:

  • 攻击者劫持了一个网站,good.com他们知道他们的受害者会访问。这可能以不同的方式发生;该网站可能允许创建 iframe,或者攻击者可能已经破坏了服务器
  • 攻击者创建他们自己的网站,evil.com将他们的 ClickJacking 有效负载放在上面,并通过向受害者发送链接来让受害者访问它。
  • 电子邮件:一些电子邮件客户端可能会显示(部分)HTML 代码(尽管这实际上只是第一点的一个子类别)
  • 攻击者可能能够在victim.com. 如果是这种情况,问题可能会超出 ClickJacking(至少是 HTML 注入,可能是 XSS)。
  • 攻击者可能能够在传输(mitm)或客户端更改交付的 HTML,从而注入 iframe。但同样,如果这是可能的,那么后果将远大于 ClickJacking。

这是一个非常简单的示例,说明 ClickJacking 有效负载的外观:

// placed anywhere, eg http://evil.com/clickjacking.html
<div style="position: absolute; left: 50px; top: 50px; pointer-events: none;">
    Click Me!
</div>
<iframe style="opacity: 0;" height="500" width="600" scrolling="no" src="http://victim.com/vulnerable.html>
</iframe>

因此,攻击者没有必要更改victim.com(不是在源端,也不是在客户端)的 HTML。