点击劫持攻击的类型和预防

点击劫持攻击诱使用户无意中点击不可见或伪装成另一个元素的网页元素。由于点击劫持攻击不会影响网站本身,因此企业可能不会认真对待这些漏洞。但是,这些攻击会影响用户,只有企业才能通过强大的点击劫持预防措施来保护他们。不采取适当预防措施的企业本质上是在冒着品牌价值和业务连续性的风险。让我们深入研究这种攻击类型并了解如何防止它们。

点击劫持攻击的类型和预防-南华中天

什么是点击劫持攻击?

在点击劫持攻击中,攻击者通过 UI 技巧捕获用户点击,使用户相信他们正在执行所需的操作。这些攻击也称为用户界面 (UI) 修复。大多数攻击者利用与 HTML iframe 相关的点击劫持漏洞和专注于防止页面框架的保护方法。

点击劫持如何在现实生活中运作的示例

  • 攻击者精心设计了一个承诺有吸引力的优惠/免费礼物的网站。
  • 在后台,攻击者将检查用户是否登录到银行/电子商务网站。使用查询参数,攻击者将他们的银行详细信息插入到表单中。
  • 在后台恶意网站的情况下,用户的银行转账页面/电子商务结帐页面以完全透明的框架覆盖在其上。
  • 所需的控件(例如确认转移/确认购买)与恶意网站上可见的可点击项目(例如领取礼物/领取优惠/预订您的免费旅行)保持一致。
  • 当用户点击这些项目时,他们实际上是在确认资金转账或购买。
  • 在后台不知道资金转账或产品购买的情况下,用户将被重定向到包含优惠/免费礼物信息的页面。
  • 此攻击无法追溯到攻击者,因为用户在合法登录其银行或电子商务帐户时执行了这些操作。

点击劫持攻击的类型和预防-南华中天

点击劫持攻击的类型

根据具体操作的性质:(下面列出了几个变种)

  • Likejacking:劫持 Facebook 和其他社交媒体平台上的点赞点击次数
  • Cookiejacking:攻击者通过访问存储在浏览器中的 cookie 获得在目标网站中代表用户执行操作的能力
  • 文件劫持:访问本地文件系统并获取任何文件
  • 光标劫持:劫持光标位置并将光标位置更改为用户想要的任何位置
  • 密码管理器攻击:欺骗密码管理器并利用自动填充功能

基于使用的覆盖/嵌入类型:

  • 完整的透明覆盖
  • 裁剪
  • 隐藏覆盖
  • 点击事件裁剪
  • 快速内容替换
  • 滚动
  • 重新定位
  • 拖放

影响

在不知道他们实际上是在点击目标网站的情况下,用户可能会在不知不觉中:

  • 下载恶意软件
  • 访问欺诈/恶意网页
  • 提供凭据/敏感信息
  • 划款
  • 购买产品等

有动机的攻击者可能会利用点击劫持漏洞来:

  • 收获登录凭据
  • 在社交媒体网站上传播蠕虫和恶意软件
  • 通过下载在系统和网络中传播恶意软件
  • 恶意广告
  • 宣传网络诈骗
  • 诱骗用户访问本地文件、密码管理器、网络摄像头、麦克风等

点击劫持预防

客户端方法

Frame Busting 是用于防止点击劫持的最常见的客户端方法之一。尽管在某些情况下有效,但这种方法容易出错并且很容易被绕过。

服务器端方法

服务器端方法受到安全专家的信任并推荐用于点击劫持保护。

  1. X 框架选项

一种常见的服务器端方法是 X-Frame Options。X-Frame Options HTTP 标头作为网页 HTTP 响应的一部分传递,指示是否应允许浏览器在 <frame>、<iframe> 或 <object> 标记内呈现页面。

标头的三个允许值是:

  • DENY:不允许任何域/站点在框架内显示页面
  • SAMEORIGIN:允许当前页面显示在另一个页面的框架中,但仅限于当前域内
  • ALLOW-FROM *uri*:允许页面仅显示在指定来源/指定 URL 的框架中

但是,X-Frame 选项提供的安全性是有限的,并且在多域站点中无效。

  1. 内容安全策略

作为 HTML5 标准的一部分,Content-Security-Policy HTTP 标头使网站作者能够将可以从中加载资源和嵌入页面的各个域列入白名单。它提供比 X-Frame-Options 标头更广泛的保护。

点击劫持攻击的类型和预防-南华中天

点击劫持测试

可以使用测试来衡量网站对点击劫持攻击的脆弱性。测试人员会尝试在 iframe 中包含来自网站的敏感页面。他们将从另一台服务器执行代码并评估该网页是否容易受到点击劫持。他们还将测试网站上使用的反点击劫持方法的强度。

直观且可管理的 Web 应用程序安全解决方案

鉴于攻击者利用网站中的漏洞进行点击劫持,部署像AppTrana这样的整体、智能和托管的安全解决方案是必不可少的。

结论

点击劫持保护与用户信任和忠诚度直接相关。因此,企业必须认真对待点击劫持攻击预防并主动保护其用户。