欺诈行为和黑帽SEO
黑帽SEO是相对于白帽SEO而言的,指的是通过使用违反搜索引擎质量规范的优化手段来提高排名。虽然我们不鼓励使用黑帽SEO,但了解黑帽优化技术和常见软件工具是避免受到惩罚的关键。
去年,英国的SEO专家Tom Anthony曝光了一个存在于Google蜘蛛中的漏洞,可能被黑帽SEO用于利用XSS漏洞在其他网站注入链接,而且这些链接肯定会被Google蜘蛛捕获。这个漏洞如果被广泛滥用,显然将对权重传播和搜索排名产生影响。
Tom在2018年11月向Google报告了这个漏洞,然而迄今为止,Google似乎还未解决这个问题。他们声称“Google现有的保护机制应该能够防范这种滥用,但相关团队正在进行检查和验证”。Google在回复Tom时还提到了一些“内部沟通上的困难”,这是否是公司规模扩大带来的普遍问题呢?
经过5个月的时间,Google尚未采取任何措施。因此,Tom决定公开这个漏洞,以便站长们检查自己的网站是否存在XSS漏洞,并采取相应的预防措施,以免其网站被注入链接。Google同意了Tom公开相关信息,显示出他们对现有防御机制的自信。
▍什么是XSS攻击
XSS攻击是Cross Site Scripting的缩写,即跨站脚本攻击。尽管CSS是样式表的缩写,但由于与页面样式表的CSS重复,跨站脚本攻击这个缩写就被命名为XSS。
XSS是一种代码注入攻击。许多网站具有某些功能,如搜索、用户提交的内容等,这些功能中的脚本是可以任意修改URL的。比如,搜索的URL通常是domain.com/search.php?keyword,或者domain.com/?s=keyword等。其中的keyword可以替换为任何字符。
那么,如果将keyword部分替换为脚本,浏览器将执行该脚本,将内容插入HTML中,这就是黑帽SEO可以利用的注入链接的漏洞。
▍如何利用XSS漏洞在其他网站注入链接
修改URL中的参数,将其替换为脚本,浏览器执行脚本,将内容插入HTML中,从而插入链接。然而,如果只是在用户浏览器上显示链接而搜索引擎不抓取这个URL,黑帽SEO可能对此不感兴趣。问题是,Google蜘蛛可以抓取被注入脚本的URL,并执行JavaScript,因此可以看到被注入的链接。
防范XSS攻击的方法之一是在服务器端进行安全过滤,最基本的是HTML转义,将其视为要搜索的字符串而不是要执行的脚本。其次,现代浏览器(如Chrome)会识别XSS,如果在URL中发现可疑字符,如script等,浏览器将直接拒绝打开页面。
然而,根据Google官方文件的说明,到目前为止,Google蜘蛛使用的是相对较旧的Chrome 41版本,而Chrome 41不具备XSS识别功能。因此,拥有XSS漏洞的网站可能会被Google蜘蛛抓取到注入链接的URL。
Tom进行了一些实验。在某个新银行(Revolut)网站上发现了XSS漏洞,虽然现在已经修复了,但Tom在Revolut域名上构造了一个具有注入脚本的URL,浏览器执行后会在页面顶部放上一个链接。通过Google的页面移动友好性测试工具,Tom验证了一下,因为这个工具会按照Google蜘蛛的方式渲染页面。
结果表明,Google能够抓取URL,执行注入的脚本,并在生成的页面顶部显示被注入的链接。这是来自银行域名的一个外部链接。
为了进一步验证,Tom在Revolut域名的URL上注入一个链接,指向自己实验网站上以前不存在、刚刚创建的一个页面。提交Revolut的URL后,Google不久就抓取了Tom自己实验网站上的新页面,并索引了这个页面,出现在搜索结果中。这表明,被注入的链接至少能够吸引蜘蛛抓取。
▍XSS攻击注入的链接是否有效?
仅仅能被索引并不一定说明问题,如果像某些垃圾链接一样被Google忽略,没有链接效果,那么黑帽SEO可能就无法利用它来操控外部链接。为了验证这种URL上的链接是否有链接效果,Tom进行了进一步的实验。
Tom在Revolut域名的URL上注入一个链接,指向自己实验网站上以前不存在、刚刚创建的一个页面,然后提交了Revolut的URL。没多久,Google就抓取了Tom自己实验网站上的新页面,并且索引了这个页面,出现在搜索结果中。
这表明,被注入的链接至少能够起到吸引蜘蛛抓取的作用。然而,由于担心可能会对正常搜索结果产生影响,Tom并没有进一步测试其是否对权重流动和排名产生与普通链接相似的效果。
这里不得不说,国外的许多SEO从业者是非常有责任心的。我在思考,如果是国内的SEO们发现这个等级的漏洞,会将其报告给搜索引擎以修复吗?很可能会将这个漏洞用于自己的利益,并充分利用它。随着这篇文章的发布,国内SEO也许会尝试这种方法。然而,如果大规模滥用这种注入方法,Google的预防机制是否仍然有效呢?
另一方面,几乎可以肯定的是,Tom的文章的发布将迫使Google采取积极措施,及时修补这个漏洞,以免XSS攻击注入链接真的成为一种有效的SEO作弊手段。想要尝试的人,最好尽早行动,因为很快这个方法可能就会变得无效。