Clickjacking:这是什么,如何避免?

当涉及到黑客和恶意软件分发者访问您的计算机的方式时,有很多话题被谈论很多:社交工程等等。但是,没有像其他攻击那样被谈论得那么邪恶的攻击是 clickjacking

Clickjacking难以检测,几乎可以影响任何人,并且是分布在各种操作系统和应用程序中。这是您需要了解的有关点击劫持的信息,包括它的含义,在哪里可以看到的以及如何保护自己免受点击劫持。

什么是点击劫持?

从名称中得知,clickjacking是劫持用户在计算机上的点击的过程(它也可用于劫持按键,但是“ keystrokejacking"很难说)。该过程可以通过多种方式进行,但是它们都有一个共同点:用户认为他们在点击一件事,而实际上却在点击其他东西。

许多点击劫持攻击包括将透明的用户界面放置在用户希望看到的另一个界面上(这就是“ UI修复"是该方法的另一个名称的原因)。然后,当该用户认为自己在单击某项内容时,实际上是在单击他们看不到的其他内容。您可能会认为您正在单击的链接可以注册一个很酷的新闻,例如,当您实际上单击一个按钮时,该按钮可以使您的电子邮件帐户受到网络犯罪访问。

另一种类型攻击的改变会改变用户光标的实际位置,但不会影响显示,因此光标看起来好像在一个位置,但实际上在另一个位置。听起来像是一个很大的烦恼,但是它可以使人们点击那些提供敏感信息的东西。

其他一些创造性攻击也属于点击劫持。例如,最近的一次攻击使用了一种恶意软件,将用户在Bing,Google和Yahoo上的搜索重定向到自定义(和欺诈性)的结果页面,这些页面充满了由Google-AdSense驱动的广告。用户会点击广告,认为它们是合法的搜索结果,并且攻击者会得到报酬。

有些人甚至在点击劫持中包含了社会工程类型的攻击;例如,回溯到2009年,Twitter上出现了一条推文,上面写着“不要点击"并包含一个链接。每当有人点击链接时,相同的内容就会从他们的帐户中发布。

点击劫持不仅限于用户使用鼠标的网站和应用,还使用了类似的技术在Facebook上散布可赚钱的链接。它也可能发生在移动设备上。最近的一个例子是Android.Lockdroid.E,这是一款Android勒索软件智能手机和平板电脑。

如何防止点击劫持

不幸的是,您不能做很多事情除非您是网站管理员,否则可以防止点击劫持。到目前为止,最常用的保护自己浏览状态的方法是使用NoScript,它是Firefox附加组件,可防止脚本在未经您特别授权的情况下加载。 NoScript具有一些专门的防点击劫持功能,并且非常擅长检测在网站上创建透明覆盖的脚本类型。

您可以用来阻止脚本或应用程序加载的任何类似扩展名也将提供一些保护。

但是,防范点击劫持的最佳方法必须来自站点管理员。许多防御措施都是相当技术性的,如果您想确切地了解如何实施它们,我建议您从OWASP查阅Clickjacking防御备忘单。

防止点击劫持的最佳方法之一在您的网站上,它包含一个x-frame-options HTTP标头,该标头可防止您的网站内容被加载到框架(标记)或iframe(