12月 2nd, 2021

点击劫持是一种诱骗用户点击不可见或伪装成另一个元素的网页元素的攻击。这可能会导致用户在不知不觉中下载恶意软件、访问恶意网页、提供凭据或敏感信息、转账或在线购买产品。

通常,点击劫持是通过在 iframe 内、用户看到的页面顶部显示不可见页面或 HTML 元素来执行的。用户认为他们正在单击可见页面,但实际上他们正在单击位于其顶部的附加页面中的一个不可见元素。

不可见页面可能是恶意页面,也可能是用户不打算访问的合法页面——例如,用户银行网站上授权转账的页面。

点击劫持攻击有多种变体,例如:

Likejacking – 一种操纵 Facebook“Like”按钮的技术,导致用户“喜欢”他们实际上并不打算喜欢的页面。

Cursorjacking – 一种 UI 修正技术,可将用户感知位置的光标更改为另一个位置。光标劫持依赖于 Flash 和 Firefox 浏览器中的漏洞,这些漏洞现已得到修复。推荐阅读:《 了解DDoS攻击的初学者指南 》

点击劫持攻击示例

攻击者创建了一个有吸引力的页面,承诺让用户免费前往塔希提岛。

在后台,攻击者检查用户是否登录了他的银行站点,如果登录,则加载启用资金转移的屏幕,使用查询参数将攻击者的银行详细信息插入表单。

银行转帐页面显示在免费礼品页面上方的不可见 iframe 中,“确认转帐”按钮与用户可见的“接收礼品”按钮完全对齐。

用户访问该页面并单击“预订我的免费旅行”按钮。

实际上,用户点击了不可见的 iframe,并点击了“确认传输”按钮。资金被转移给攻击者。推荐阅读:《 什么是恶意软件以及类型 》

用户被重定向到一个包含免费礼物信息的页面(不知道后台发生了什么)。

此示例说明,在点击劫持攻击中,恶意操作(在本例中是在银行网站上)无法追溯到攻击者,因为用户在合法登录自己的帐户时执行了该操作。

点击劫持缓解

防御点击劫持的一般方法有两种:

客户端方法 – 最常见的称为 Frame Busting。客户端方法在某些情况下可能有效,但被认为不是最佳实践,因为它们很容易被绕过。

服务器端方法 ——最常见的是 X-Frame-Options。安全专家推荐使用美国Linux服务器端方法作为防御点击劫持的有效方法。

使用 X-Frame-Options 响应标头减轻点击劫持

X-Frame-Options 响应标头作为网页的 HTTP 响应的一部分传递,指示是否应允许浏览器在 或 在浏览器中查看 HTML 页面并按如下方式评估页面:

如果出现“网站易受点击劫持”文本,并且在其下方您会看到敏感页面的内容,则 该页面易受点击劫持。

如果只出现“网站易受点击劫持”的文字,而您没有看到敏感页面的内容,则该页面不会受到最简单的点击劫持形式的攻击。

但是,还需要进行额外的测试,看看页面上使用了哪些反点击劫持方法,以及它们是否可以被攻击者绕过。推荐相关阅读:《 云服务器出现异常怎么解决? 》

发表评论

您的电子邮箱地址不会被公开。