我個(gè)人雖然不建議做黑帽SEO,但了解一些黑帽技術(shù)是白帽SEO的必修課。SEO黑帽的常見技術(shù)和最新應(yīng)用至少可以讓我們:在不能失誤的正規(guī)網(wǎng)站上避免黑帽的坑;多渠道、深入理解搜索引擎的工作原理;幫助了解搜索排名算法的極限在哪里;從聰明的黑帽SEO技巧中發(fā)展白帽技巧。
對(duì)國(guó)內(nèi)黑帽SEO應(yīng)用廣泛的賭博、色情等網(wǎng)站和排名也做過一些研究,與相關(guān)公司也有些接觸,對(duì)這個(gè)行業(yè)的利潤(rùn)之大、團(tuán)隊(duì)規(guī)模之大、探索及應(yīng)用之深入等是很欽佩的。不過總體上說,國(guó)內(nèi)黑帽SEO的做法偏向傳統(tǒng),更多是對(duì)搜索算法的某些已知漏洞或參數(shù)的極端、大規(guī)模利用。國(guó)外一些黑帽對(duì)SEO的探索則更出人意料,腦洞更清奇。
前幾天看到一個(gè)可以用于黑帽SEO的例子,利用Google Search Console的XML Sitemap提交漏洞,劫持其它人網(wǎng)站原有排名??赐旰蟾杏X,還有這種操作?一些人真的思路非?;钴S,貌似也有時(shí)間,在不停地探索著各種可能性。好在這個(gè)漏洞沒有真正用于黑帽SEO,而是在Google的漏洞舉報(bào)獎(jiǎng)勵(lì)計(jì)劃中提交的,發(fā)現(xiàn)者Tom Anthony因此獲得1337美元獎(jiǎng)金。
Tom Anthony不是一般的IT安全人員,顯然是干SEO的,而且是英國(guó)著名SEO公司Distilled產(chǎn)品研發(fā)部門的頭。Tom Anthony在他的博客帖子里詳細(xì)介紹了這個(gè)漏洞的用法。
簡(jiǎn)單說,Tom Anthony通過自己的網(wǎng)站,用ping的機(jī)制向Google提交XML版Sitemap(里面包含索引指令,比如這個(gè)例子中利用的hreflang標(biāo)簽),由于Google及其它網(wǎng)站的漏洞,Google誤以為這個(gè)Sitemap是另一個(gè)網(wǎng)站的Sitemap,從而使Tom Anthony的網(wǎng)站快速索引,并且劫持了那個(gè)網(wǎng)站的排名。
Google允許幾種方式提交sitemap.xml:
a.在robots.txt文件中指定sitemap.xml的位置
b.Google Search Console后臺(tái)提交
c.把sitemap.xml的位置ping給Google
第3種ping的方式就是向Google的這個(gè)URL發(fā)get請(qǐng)求:
http://google.com/ping?sitemap=http://www.example.com/sitemap.xml
其中,http://www.example.com/sitemap.xml就是要提交的sitemap.xml的文件。Tom Anthony發(fā)現(xiàn),無(wú)論新舊網(wǎng)站,Google收到這個(gè)請(qǐng)求后10多秒鐘就會(huì)過來抓取sitemap.xml文件。
接下來還要利用某些網(wǎng)站的open redirect漏洞,也就是完全開放的可以指向其它網(wǎng)站的轉(zhuǎn)向。一些網(wǎng)站可以通過URL中的參數(shù)控制轉(zhuǎn)向,比如登錄后用戶被轉(zhuǎn)向到某個(gè)指定地址:
http://www.abc.com/login?continue=/page.html
也就是abc這個(gè)網(wǎng)站用戶登錄后被轉(zhuǎn)向到page.html頁(yè)面,繼續(xù)正常訪問。通常,page.html這個(gè)頁(yè)面應(yīng)該是abc.com這個(gè)域名上的。但有些網(wǎng)站的程序不大安全,可以轉(zhuǎn)向到其它網(wǎng)站,如:
http://www.abc.com/login?continue=xyz.com/page.html
用戶登錄完,被轉(zhuǎn)向到另一個(gè)網(wǎng)站xyz.com上去了。而且也不一定需要真的登錄,只要訪問這個(gè)URL,可以是login?,也可以是logout?,或者其它什么script.php?,就被轉(zhuǎn)向了。
這就是開放的轉(zhuǎn)向。這種開放轉(zhuǎn)向還挺常見的,包括大網(wǎng)站。
Tom Anthony注冊(cè)了一個(gè)新域名xyz.com,然后利用這兩個(gè)漏洞,通過ping向Google提交這樣的sitemap.xml:
http://google.com/ping?sitemap=http://www.abc.com/login?continue=xyz.com/sitemap.xml
xyz.com是他自己的新注冊(cè)的域名,abc.com是某支持開放轉(zhuǎn)向的、有很好搜索流量的、別人的網(wǎng)站。顯然,sitemap.xml文件是放在 xyz.com上的,但Google把這個(gè)文件當(dāng)成是abc.com的sitemap文件(轉(zhuǎn)向前的域名)。這樣,黑帽SEO可以控制其它人的網(wǎng)站sitemap文件,并利用某些指令劫持權(quán)重、排名、流量。
Tom Anthony做了很多測(cè)試,其中成功的是hreflang指令。他選了一個(gè)英國(guó)的零售商網(wǎng)站(作為上面例子中的abc.com域名),為了保護(hù)對(duì)方,并沒有說是哪個(gè)網(wǎng)站,在自己的xyz.com域名上采集了對(duì)方網(wǎng)站,包括結(jié)構(gòu)和內(nèi)容,只修改了地址、貨幣之類的信息。然后在xyz.com域名放上sitemap.xml文件,里面列出那個(gè)英國(guó)網(wǎng)站的URL,但每個(gè)URL加上了多語(yǔ)言網(wǎng)站需要用的hreflang指令,通知Google,這個(gè)英國(guó)網(wǎng)站頁(yè)面對(duì)應(yīng)的美國(guó)版本在xyz.com上。最后,如前面說的,用ping的機(jī)制提交xyz.com上的sitemap.xml文件,但Google卻誤以為是英國(guó)網(wǎng)站abc.com的合法sitemap.xml文件。
結(jié)果是,Google傳遞了英國(guó)網(wǎng)站的權(quán)重到xyz.com域名上。Tom Anthony這里說的不是很明確,但我理解,是在美國(guó)Google.com上獲得了那個(gè)英國(guó)網(wǎng)站在Google.co.uk上應(yīng)有的權(quán)重和排名。
48小時(shí)內(nèi),新域名就開始被索引,并獲得一些長(zhǎng)尾詞的排名:
在過幾天,重要的商業(yè)詞也獲得排名,和Amazon、Toys R Us、沃爾瑪?shù)纫惠^高下:
Tom Anthony特意說明,真是個(gè)只有6天的域名,沒有外鏈,內(nèi)容還是采集的。
Tom Anthony接下來發(fā)現(xiàn),xyz.com的Google Search Console賬號(hào)里顯示,那個(gè)英國(guó)網(wǎng)站被顯示在xyz.com的外鏈中了(人家并沒鏈接過來,估計(jì)完全不知道有這個(gè)事),更嚴(yán)重的是,Tom Anthony可以在xyz.com的Google Search Console賬號(hào)里提交那個(gè)英國(guó)網(wǎng)站的sitemap.xml文件了,不用ping了。Google貌似是把這兩個(gè)本來無(wú)關(guān)的網(wǎng)站當(dāng)成一個(gè)或者至少是相關(guān)的了。
Tom Anthony也測(cè)試了其它指令,比如noindex(陷害競(jìng)爭(zhēng)對(duì)手于無(wú)形?。瑀el-canonical,不過都沒管用。Tom Anthony也想過測(cè)試其它東西,比如是否xyz.com網(wǎng)站的結(jié)構(gòu)和內(nèi)容要和abc.com一樣呢?不一樣到什么程度還能起作用呢?
另一個(gè)有意思的地方是,被劫持的網(wǎng)站有可能根本不知道發(fā)生了什么。有些陷害競(jìng)爭(zhēng)對(duì)手的負(fù)面SEO技術(shù)是可以被發(fā)現(xiàn)的,比如給對(duì)手制造大量垃圾鏈接,這個(gè)在多個(gè)工具中是會(huì)被清楚顯示的。Tom Anthony發(fā)現(xiàn)的這個(gè)漏洞,被劫持的網(wǎng)站沒辦法發(fā)現(xiàn)是怎么回事?;蚋静恢辣唤俪至?,比如這個(gè)案例中的英國(guó)網(wǎng)站,沒有在美國(guó)運(yùn)營(yíng),所以可能根本不會(huì)去看Google美國(guó)的排名。
最后,Google對(duì)這個(gè)漏洞的評(píng)論是,“這個(gè)漏洞一經(jīng)發(fā)現(xiàn),他們就組織各相關(guān)團(tuán)隊(duì)解決了。這是個(gè)新發(fā)現(xiàn)的漏洞,相信還沒有被利用過。”