利用sitemap提交漏洞劫持其它網站排名

我個人雖然不建議做黑帽SEO,但瞭解一些黑帽技術是白帽SEO的必修課。SEO黑帽的常見技術和最新應用至少可以讓我們:
 


 

• 在不能失誤的正規網站上避免黑帽的坑


• 多渠道、深入理解搜索引擎的工作原理


• 幫助瞭解搜索排名算法的極限在哪裏


• 從聰明的黑帽SEO技巧中發展白帽技巧


對國內黑帽SEO應用廣泛的賭博、色情等網站和排名也做過一些研究,與相關公司也有些接觸,對這個行業的利潤之大、團隊規模之大、探索及應用之深入等是很欽佩的。不過總體上說,國內黑帽SEO的做法偏向傳統,更多是對搜索算法的某些已知漏洞或參數的極端、大規模利用。國外一些黑帽對SEO的探索則更出人意料,腦洞更清奇。


前幾天看到一個可以用於黑帽SEO的例子,利用Google Search Console的XML Sitemap提交漏洞,劫持其它人網站原有排名。看完後感覺,還有這種操作?一些人真的思路非常活躍,貌似也有時間,在不停地探索着各種可能性。好在這個漏洞沒有真正用於黑帽SEO,而是在Google的漏洞舉報獎勵計劃中提交的,發現者Tom Anthony因此獲得 1337 美元獎金。


Tom Anthony不是一般的IT安全人員,顯然是幹汕頭SEO的,而且是英國著名SEO公司Distilled產品研發部門的頭。Tom Anthony在他的博客帖子裏詳細介紹了這個漏洞的用法。


簡單說,Tom Anthony通過自己的網站,用ping的機制向Google提交XML版Sitemap(裏面包含索引指令,比如這個例子中利用的hreflang標籤),由於Google及其它網站的漏洞,Google誤以爲這個Sitemap是另一個網站的Sitemap,從而使Tom Anthony的網站快速索引,並且劫持了那個網站的排名。


Google允許幾種方式提交sitemap.xml:


• 在robots.txt文件中指定sitemap.xml的位置


• 在 Google Search Console後臺提交


• 把sitemap.xml的位置ping給Google


第 3 種ping的方式就是向Google的這個URL發get請求:


http://google.com/ping?sitemap=http://www.example.com/sitemap.xml


其中,http://www.example.com/sitemap.xml就是要提交的sitemap.xml的文件。Tom Anthony發現,無論新舊網站,Google收到這個請求後 10 多秒鐘就會過來抓取sitemap.xml文件。


接下來還要利用某些網站的open redirect漏洞,也就是完全開放的可以指向其它網站的轉向。一些網站可以通過URL中的參數控制轉向,比如登錄後用戶被轉向到某個指定地址:


http://www.abc.com/login?continue=/page.html


也就是abc這個網站用戶登錄後被轉向到page.html頁面,繼續正常訪問。通常,page.html這個頁面應該是abc.com這個域名上的。但有些網站的程序不大安全,可以轉向到其它網站,如:


http://www.abc.com/login?continue=xyz.com/page.html


用戶登錄完,被轉向到另一個網站xyz.com上去了。而且也不一定需要真的登錄,只要訪問這個URL,可以是login?,也可以是logout?,或者其它什麼script.php?,就被轉向了。


這就是開放的轉向。這種開放轉向還挺常見的,包括大網站。


Tom Anthony註冊了一個新域名xyz.com,然後利用這兩個漏洞,通過ping向Google提交這樣的sitemap.xml:


http://google.com/ping?sitemap=http://www.abc.com/login?continue=xyz.com/sitemap.xml


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的外鏈中了(人家並沒鏈接過來,估計完全不知道有這個事),更嚴重的是,Tom Anthony可以在xyz.com的Google Search Console賬號裏提交那個英國網站的sitemap.xml文件了,不用ping了。Google貌似是把這兩個本來無關的網站當成一個或者至少是相關的了。


Tom Anthony也測試了其它指令,比如noindex(陷害競爭對手於無形啊),rel-canonical,不過都沒管用。Tom Anthony也想過測試其它東西,比如是否xyz.com網站的結構和內容要和abc.com一樣呢?不一樣到什麼程度還能起作用呢?


另一個有意思的地方是,被劫持的網站有可能根本不知道發生了什麼。有些陷害競爭對手的負面SEO技術是可以被發現的,比如給對手製造大量垃圾鏈接,這個在多個工具中是會被清楚顯示的。Tom Anthony發現的這個漏洞,被劫持的網站沒辦法發現是怎麼回事。或根本不知道被劫持了,比如這個案例中的英國網站,沒有在美國運營,所以可能根本不會去看Google美國的排名。


2017 年 9 月 23 號,Tom Anthony提交了這個bug,經過一番來來去去的討論, 2018 年 3 月 25 號,Google確認bug已經修正,並同意Tom Anthony發佈博客帖子。


searchengineland的文章還有大段文字介紹Tom Anthony的心路歷程,爲什麼不把這個漏洞留着自己用,而是提交給Google?與潛在的流量和利益相比, 1 千多美金的獎金什麼都不是。情懷啊。感興趣的可以深入讀一下。


最後,Google對這個漏洞的評論是,“這個漏洞一經發現,他們就組織各相關團隊解決了。這是個新發現的漏洞,相信還沒有被利用過。”

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章