什么是Tabnabbing?如何保护你的Elementor网站免受其害?我最近看到了 “tabnabbing “这个词。简而言之,tabnabbing是一种操纵网页的钓鱼式攻击。它对你的网站(以及它的声誉)和你的访问者都是有害的。自然,我想更多地了解一下:作为网站所有者,我们应该如何保护我们的访问者?所以我做了一点调查……在这篇短文中,hostgator美国服务器将更详细地解释什么是Tabnabbing,以及您可以做什么来缓解它。
到底什么是Tabnabbing?
Tabnabbing是一种钓鱼式攻击,当网站访问者单击新标签或新窗口中打开的链接时,可能会发生这种攻击。该操作使黑客有机会将网站重新定向到一个完全由他们所控制的重复站点。
Tabnabbing的意义何在?
目的很简单。黑客将访问者链接到一个重复的网站,希望获得登录的详细信息和其他敏感信息。推荐阅读:《在WordPress中使用Elementor [初学者指南]》
新标签中的JavaScript可以做普通JavaScript可以做的任何事情。它可以操纵页面,改变数据,发送请求,读取该网站的cookies等。它还可以获得父窗口的详细信息并对其进行修改。例如,它可以将原始页面重定向到一个假页面(看起来是合法的),并要求访问者提供他们的凭证。
这种情况非常危险。
你能做些什么来防止标签被窃取?
作为网站访问者,防止Tabnabbing非常困难,因为很少有受害者点击看似可疑的链接会导致这种情况。然而,作为一个网站的创建者,有一些事情你还是可以留意到的。
Rel=”noopener”
首先,也是最重要的是,始终确保你的外部链接是指向有信誉的来源。其次,在新标签页中打开的外部网站链接一般都应该有一个rel=”noopener “属性。这使新标签页的开启者没有被设置,因此,JavaScript将无法访问打开它的标签。
Rel=”noreferrer”
同样,在链接上添加rel=”noreferrer”,通过省略referrer,从而指示浏览器不要通知新标签的网站服务器访客来自哪个页面。推荐阅读:《如何从Elementor切换到WordPress Gutenberg编辑器》
关于相关链接的说明
我们已经联系了一些相关平台,以确认rel=”noreferrer “属性是否会影响其追踪。以下是我们被告知的情况。
- 当使用专业插件直接链接跟踪时,[带有此属性的相关链接将受到影响,因为它依赖于提供给信用联盟的URL。。否则,cookies应该仍然能够被添加到访问者的浏览器中,这就是在整个网站上追踪联盟ID的方式,并得以在购买/转换时被使用。
- 使用这个属性不会影响我们追踪的准确性。
- 如果客户使用了有效的合作伙伴跟踪链接,即使推荐人的URL为空,该操作仍将具有属性。没有引用域则意味着它是 “直接流量”。直接流量是指有人在其网络浏览器中输入了一个URL。这很可能是由于人们复制了合作伙伴跟踪链接并将其粘贴到他们的网络浏览器中造成的,如果他们是从Facebook的帖子中获取链接,就很可能是这种情况。您并不总是能在该部分中找到引用域,因为它取决于客户用于生成操作的方法。
总而言之,一般情况下,noreferrer属性不会影响您的相关链接。然而,在某些情况下,它可能还是会影响到您,因此在设置属性时请确保与您的联盟伙伴核实了情况。
WordPress
Gutenberg编辑器(或块状编辑器)自动为新浏览器标签中打开的链接设置rel=”noopener noreferrer”。WordPress专门引入了这个功能,以解决上述的安全漏洞。
下面是外部链接在HTML中的例子。
Elementor
不幸的是,Elementor并没有自动设置这些属性。如果你用这个流行的页面生成器创建或运行你的网站,它会很容易被忽视。然而,这里有一个变通的办法。
当在 Elementor 中创建一个指向外部资源的链接时,点击链接字段右侧的齿轮图标,您会打开 Elementor 部件中的自定义属性部分。
在这里添加rel|noopener noreferrer并保存您的工作。
在前端,源代码显示rel=”noopener noreferrer “属性已被分配。
我们联系了Elementor,了解他们对tabnabbing的看法。以下是编辑产品负责人Shilo Eish Yemini @ Elementor的看法。
- Elementor到现在为止还没有默认添加这种行为,是为了避免在未经同意的情况下损害现有的网站,从而避免损害网站的追踪问题。
- 从 Chromium 88 版本开始,默认情况下,带有 target=”_blank “的锚点将自动获得 noopener 行为。
- 正如[这篇]有趣的文章所提到的,我们允许用户手动添加这些`rel`属性。换句话说,我们将很快为所有的外部链接添加`noopener`属性,以确保传统的浏览器访问者不会受到影响。由于它们都有着类似的目的,我们并不会自动添加 “noreferrer”,以防止现存的网站追踪问题。
总结
如果您正在使用 Elementor,我推荐您修改一下您的页眉、页脚、侧边栏、广告和模版,以确保第三方页面的链接在 rel 属性中能够用 noopener 和 noreferrer 值。推荐相关阅读:《WordPress的全站编辑:它的地位和未来》