前两天英国的SEO老手Tom Anthony曝出一个 Google蜘蛛存在的漏洞,可能被黑帽SEO利用XSS漏洞在别人网站注入链接,而且这些链接确定会被Google蜘蛛抓取。这个漏洞如果被大规模利用,显然是会影响权重流动和搜索排名的。
Tom去年11月就把这个漏洞汇报给Google了,不过到目前为止Google并没有解决这个漏洞的意思,他们的说法是“Google的现有保护机制应该能预防这种滥用,不过相关团队正在检查验证”。另外Google在回复Tom时提到了有些“内部沟通上的困难”,公司大了是不是都会有这种问题?
既然Google过了5个月都没有采取措施,Tom决定把漏洞公布出来,站长们好检查自己网站是否有XSS漏洞,提取采取预防措施,以防自己网站被注入链接。Google同意Tom公布相关信息,看来还是挺自信的。
什么是XSS攻击
XSS攻击是Cross Site Scripting的缩写,跨站脚本攻击的意思。按说Cross Site Scripting的缩写应该是CSS,但就和页面样式表那个CSS重复了,所以跨站脚本攻击这个改成了XSS。
XSS是一种代码注入攻击。大部分网站都会有某些功能脚本是可以任意修改URL的,比如搜索功能,UGC用户贡献内容网站的提交功能,用脚本实现的转向等等。比如搜索概念,URL经常就是domain.com/search.php?keyword,或者domain.com/?s=keyword之类的(SEO每天一贴的搜索功能就是这个URL格式),其中的keyword是可以替换成任意字符的。
那么keyword部分被替换成脚本会发生什么?比如domain.com/?s=<script>alert(‘XSS’)</script>。有这种漏洞的网站就是在URL中注入恶意脚本时,没有进行安全过滤,而浏览器也没有分辨出是恶意脚本,所以执行了恶意脚本。
XSS可以被用来获取用户敏感信息,可以用来冒充用户向网站发出请求等等,还可以执行脚本,在生成的HTML代码中插入内容,这就是黑帽SEO可以利用来注入链接的漏洞。
怎样利用XSS漏洞在别人网站注入链接
修改URL中的参数,替换为脚本,浏览器执行脚本,在HTML中插入内容,所以也可以插入链接。当然如果只是访问用户的浏览器上显示链接,搜索引擎不抓取这个URL的话,黑帽SEO也就不感兴趣了。问题就是 Google蜘蛛可以抓取被注入脚本的URL,也可以执行JS,所以也就可以看到被注入的链接。
防止XSS攻击,一是服务器端的程序要做安全过滤,最基本的是HTML转义,把<script>alert(‘XSS’)</script>当作被搜索的字符串,而不是要执行的脚本。二是浏览器端的XSS识别,现在的很多浏览器(如Chrome)看到URL中有可疑字符如script之类的,会直接拒绝打开页面。
如果Google蜘蛛和Google自己的Chrome浏览器一样能够识别XSS攻击,带有注入脚本的URL根本不抓取,就没有事情了。但根据Google官方文件说明,到目前为止,Google蜘蛛使用的是比较老的Chrome 41版本,而Chrome 41是没有XSS识别功能的。所以,有XSS程序漏洞的网站,有可能被Google蜘蛛抓取到被注入链接的URL。
Tom做了实验。某新银行(Revolut)网站有XSS漏洞(天哪,银行网站有XSS漏洞。不过现在已经补上了),Tom在Revolut域名上构造了个带有注入脚本的URL,浏览器执行后会在页面顶部放上个链接。Google蜘蛛会怎样处理这种URL呢?Tom用Google的页面移动友好性测试工具验证了一下,因为这个工具会按照 Google蜘蛛的方式渲染页面。结果是这样:
显然,Google能够抓取URL,执行注入的脚本,生成的页面顶部是有那个被注入的链接的。这可是来自银行域名的一个外部链接。
为了进一步验证,Tom把实验URL提交给Google,结果说明,Google索引了这个URL,快照显示,通过JS脚本注入的链接也正常出现在页面上:
Tom还发现,通过XSS注入,也可以添加、修改HTML中的标签,比如canonical标签,这个也是挺危险啊。不过这个和本帖XSS注入链接关系不大,就不细说了。
XSS攻击注入的链接有效果吗?
仅仅能索引不一定说明问题,如果如某些垃圾链接一样被Google忽略,没有链接的效果,那也不能利用来操控外部链接。为了验证这种URL上的链接是否有链接效果,Tom进一步做了实验。
Tom在Revolut域名的URL上注入一个链接,指向自己实验网站上以前不存在、刚刚创建的一个页面,提交Revolut的URL,没多久,Google就抓取了Tom自己实验网站上的新页面,而且索引了这个页面,出现在搜索结果中:
这说明,被注入的链接,至少是能起到吸引蜘蛛抓取的作用的。对权重流动和排名有没有普通链接一样的作用呢?Tom顾虑到可能会对正常搜索结果的影响而没有进一步试验了。
这里不得不说,国外很多SEO是很有情怀的。我在想,如果是国内SEO们发现这个等级的漏洞,会报告给搜索引擎补上漏洞吗?大概会把这个漏洞为己所用,运用到死吧。
对搜索结果的潜在影响有多大?
如果这种方式注入的链接有正常链接的效果,对权重、排名有效,那么只要被黑帽SEO使用,对操控权重、排名显然有很大帮助,对搜索结果有多大潜在影响呢?
https://www.openbugbounty.org/ 网站上列出了12万5千多有XSS漏洞的网站,其中包括260个.gov政府网站,971个.edu域名网站,包括了前500个链接最多网站中的195个,想象一下潜在的影响会有多大。
当然,Google很自信,他们的防御机制应该可以鉴别出这种黑帽方法,我猜想Google内部调查说明,这种方法到目前为止没有被利用。不过,这是 Tom发布信息之前,现在呢?我估计有很多人已经在疯狂实验这个方法的有效性了。我这篇帖子发出来,国内肯定也会有SEO去尝试。那么,大规模滥用这种注入方法的情况下,Google的预防机制还会有效吗?
另一方面,几乎可以肯定, Tom的帖子发出来,会迫使Google必须要积极采取措施,补上这个漏洞,不能让XSS攻击注入链接真的成为有效的SEO作弊方法。想尝试的,尽快吧,很快就会没用的。
5月8号更新:Google在7号的Google I/O开发大会上宣布,Google蜘蛛将使用最新版的Chrome引擎,目前版本是74,以后都会保持使用最新版本。看来Google早就做了准备,所以这么有信心。
Google也有傲慢的时候,希望早日修正这个漏洞,还站长们公平、公正的seo环境
还有这样的操作……
Google自信的表示可以公开这个漏洞,感觉能轻松应付,公司大了,流程就多,审批更慢,相应时间就拉长了
高深
牛逼,有教程吗?求要
如果一个服务器上就只有一个网站,会不会受到这个跨站的影响?
这个xss跨站不是你理解的那个跨站,我百度给你搜了下这个跨站攻击的解释—“恶意攻击者往Web页面里插入恶意的Script代码,当用户浏览该页之时,嵌入其中Web里面的Script代码会被执行,从而达到恶意攻击用户的目的”,这个属于网站安全范畴的东西了。
对于一些SEOer降权了。需要修改这些原因你怎么看
首页LOGO标签,首页H1标签,首页减少链接等删除。
难道是真的吗?
一个服务器对于网站影响那么大吗?或者说是空间问题?
国内网站应该对百度的漏洞更关注 特别是百度seo相关的
跟较早之前的页面劫持黑帽做法是不是有点类似?
很全面,对站长很有帮助
其实很好奇,新站如果这样玩过。会不会影响以后SEO效果?目前没有排名的站点。
高深的问题,学习了
这种渠道获取的SEO提升会不会被惩罚?
学到了,zac大神还是厉害
还好仅是google,百度没有问题就好。
那是因为百度蜘蛛到现在为止都还不支持 js执行
喜欢这样的文章
这个有点可怕啊
非互联网企业、政府与教育网站还是最好搞的…
不愧是ZAC,又一个SEO秘密被发现,说明即使是GOOGLE,也有百密一疏的时候。
这个漏洞对百度不管用
好像我原来的网站就被这么搞了,然后百度site没有,只有当我Google的时候,出来了好多,我才知道我原来一直再首页的排名为什么现在找不到了。
于是,我做了一个更错误的决定,重装了服务器,网站模板也全部更换了。www.8090shuo.com
结果是到现在一个多月了,找不到排名。
这个错了,这个是老域名,就是这个站,我昨天晚上发完,然后百度了下,居然排名首页了。哈哈
还是老域名有优势
相反,我这个新域名的站同样的遭遇,不过同一天换的模板同一天上线,到现在没有排名。ww.yizushuo.com
感觉就是以前的页面劫持的新玩法,只不过之前的页面劫持是直接截取流量到自己网站,这个只是劫持传递权重。
这些搞黑帽的真是费尽心思啊。
辉哥,如果说别人用软件对我的网站刷了好多点击,会不会引起百度的惊雷算法k我啊
这么说,已经是修复了,还没尝试。。。看来尝鲜要尽早。
应该教大家防止
我想问一下 为什么“”我网站全称搜出来的最下方推荐的是与行业不相关的东西
这个是搜索引擎算法的问题,你也可以尝试检查网站的关键词。
学习一下吧,谢谢
也许google真的行
网站漏洞现在其实有很多方法解决。禁止全站写入就ok了。最主要的是排名不怎么好搞啊。
好吧,只要被这么一曝,再去研究也没用了
文章介绍的干货很详细,用户搜索意图真心很重要。
还是老域名有优势
我这个新域名的站同样的遭遇,不过同一天换的模板同一天上线,到现在没有排名。
黑帽手法不可取
觉得还是要来多看看您的文章、
很有必要了解学习
感觉确实有点可怕,这样对很多站长就不公平了,可能还面临降权的风险不说还帮别人做嫁衣!
我的网站经常被别人这样搞,keyword换成了设情地址,不知道怎么办才好,现在一个词都没排名
现在一个词都没排名
学习了还不错的说
大神还是厉害
技术分享嘛
大神教导这些真的好么,老老实实做站才是王道。偏门永远上不得台面。
感觉确实有点可怕,这样对很多站长就不公平了,可能还面临降权的风险不说还帮别人做嫁衣!
很少人能做到独立思考。
这个漏洞GOOGLE有处理了吗?这种情况要如何处理?
这样的话,在有XSS漏洞的网站上,输个script标签加个while(true),网站就垮了
很有必要了解学习
这个和蜘蛛留痕有区别吗?
如果没有被曝光,利用这个漏洞,是不是更香
我静悄悄的来