尽管我个人强烈不建议从事黑帽SEO,但了解一些黑帽技术对于白帽SEO从业者而言却是必不可少的。熟悉SEO黑帽的常见技术和最新应用,至少可以帮助我们:
在正规网站上避免黑帽SEO的陷阱;
深入理解搜索引擎的工作原理,多渠道进行优化;
探索搜索排名算法的极限。
对于国内广泛应用于赌博、色情等网站的黑帽SEO,我进行了一些研究,并与相关公司有了一些接触。我对这个行业的利润、团队规模和探索应用的深度感到十分钦佩。然而,总体而言,国内黑帽SEO的做法更加传统,主要集中在对搜索算法已知漏洞或参数的极端、大规模利用上。相比之下,一些国外黑帽SEO对于SEO的探索更加出人意料,思路更为独到。
前段时间,我发现了一个可以用于黑帽SEO的实例,利用Google Search Console的XML Sitemap提交漏洞,成功劫持了其他网站的排名。尽管我不提倡这种操作,但有些人的思路确实非常活跃,不断探索各种可能性。幸运的是,这个漏洞并未真正用于黑帽SEO,而是被发现者Tom Anthony在Google的漏洞举报奖励计划中提交,最终获得了1337美元的奖金。
Tom Anthony是一位非同寻常的IT安全从业者,显然是从事SEO工作的,并且是英国著名SEO公司Distilled产品研发部门的负责人。他在自己的博客中详细介绍了这个漏洞的利用方法。
简而言之,Tom Anthony通过自己的网站,利用ping的机制向Google提交XML版Sitemap(其中包含索引指令,比如利用的hreflang标签)。由于Google及其他网站的漏洞,Google错误地认为这个Sitemap是另一个网站的Sitemap,从而使Tom Anthony的网站快速被索引,并劫持了该网站的排名。
Google允许通过以下几种方式提交sitemap.xml:
在robots.txt文件中指定sitemap.xml的位置;
在Google Search Console后台提交;
通过ping的方式将sitemap.xml的位置通知给Google。
Tom Anthony发现,无论是新的还是旧的网站,Google在接收到ping请求后约10秒钟内会过来抓取sitemap.xml文件。
接下来,他利用一些网站的open redirect漏洞,即可以完全开放指向其他网站的转向。一些网站可以通过URL中的参数控制转向,比如用户登录后被转向到指定地址。通常,这个页面应该位于该域名上,但一些网站程序不够安全,可以转向到其他网站。
Tom Anthony注册了一个新域名xyz.com,然后利用这两个漏洞,通过ping向Google提交了这样的sitemap.xml:
google.com/ping?sitema…
在这里,xyz.com是他自己的新注册域名,abc.com是支持开放转向且具有良好搜索流量的其他网站。明显地,sitemap.xml文件放在xyz.com上,但Google错误地将该文件视为abc.com的sitemap文件(在转向之前的域名)。这样,黑帽SEO可以控制其他人网站的sitemap文件,并利用某些指令劫持权重、排名和流量。
Tom Anthony进行了许多测试,成功的一个例子是hreflang指令。他选择了一个英国的零售商网站(作为上面例子中的abc.com域名),为了保护对方,并没有透露具体是哪个网站。他在自己的xyz.com域名上采集了对方网站的结构和内容,只修改了地址、货币等信息。然后在xyz.com域名上放置了sitemap.xml文件,其中列出了英国网站的URL,但每个URL都添加了多语言网站所需的hreflang指令,通知Google,这个英国网站的页面在xyz.com上对应着美国版本。最后,就像前面所述,通过ping的机制提交xyz.com上的sitemap.xml文件,但Google却错误地将其视为英国网站abc.com的合法sitemap.xml文件。
结果是,Google将英国网站的权重传递到了xyz.com域名上。虽然Tom Anthony没有明确说明,但我理解是在美国的Google.com上获得了该英国网站在Google.co.uk上应有的权重和排名。
48小时内,新域名开始被索引,并获得了一些长尾词的排名。过了几天,重要的商业关键词也获得了排名,与Amazon、Toys R Us、沃尔玛等竞争对手相媲美。
Tom Anthony特意指出,这个域名只有6天的历史,没有外部链接支持,内容仅仅是采集的。
Tom Anthony随后发现,在xyz.com的Google Search Console账号中,英国网站被显示在xyz.com的外链中,更糟糕的是,他可以在xyz.com的Google Search Console账号中提交英国网站的sitemap.xml文件,而无需ping。Google似乎把这两个本来无关的网站当成一个或者至少是相关的了。
Tom Anthony也测试了其他指令,比如noindex(对竞争对手进行无形的负面SEO),rel-canonical等,但都没有奏效。他还考虑过测试其他方面,比如xyz.com网站的结构和内容是否需要与abc.com相同才能起作用,但这方面的测试结果并未涉及。
这个漏洞的另一个有趣之处是,被劫持的网站有可能根本不知道发生了什么。与一些负面SEO技术可以被发现不同,比如制造大量垃圾链接,在多个工具中都会有清晰的显示,Tom Anthony发现的这个漏洞,被劫持的网站无法发现究竟发生了什么。有些网站甚至可能根本不知道被劫持了,例如这个案例中的英国网站,由于没有在美国运营,可能根本不会查看Google美国的排名。
2017年9月23日,Tom Anthony提交了这个漏洞,经过一番讨论,2018年3月25日,Google确认已修复该漏洞,并同意Tom Anthony发布博客文章。
searchengineland的文章中详细介绍了Tom Anthony的心路历程,解释了为什么他选择不保留这个漏洞自己使用,而是提交给Google。相比于潜在的流量和利益,1000多美元的奖金并不算什么。感兴趣的读者可以深入了解一下。
最后,Google对这个漏洞的评论是:“一旦发现这个漏洞,我们组织了相关团队进行解决。这是一个新发现的漏洞,我们相信它还没有被利用过。”