GG資源網

怎樣利用XSS漏洞在其它網站注入鏈接

怎樣利用XSS漏洞在其它網站注入鏈接?

 

乾貨分享;轉載請註明出處5g雲

英國的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=。有這種漏洞的網站就是在URL中注入惡意腳本時,沒有進行安全過濾,而瀏覽器也沒有分辨出是惡意腳本,所以執行了惡意腳本。

XSS可以被用來獲取用戶敏感信息,可以用來冒充用戶向網站發出請求等等,還可以執行腳本,在生成的HTML代碼中插入內容,這就是黑帽SEO可以利用來注入鏈接的漏洞。

怎樣利用XSS漏洞在別人網站注入鏈接?
答:修改URL中的參數,替換為腳本,瀏覽器執行腳本,在HTML中插入內容,所以也可以插入鏈接。當然如果只是訪問用戶的瀏覽器上顯示鏈接,搜索引擎不抓取這個URL的話,黑帽SEO也就不感興趣了。問題就是 Google蜘蛛可以抓取被注入腳本的URL,也可以執行JS,所以也就可以看到被注入的鏈接。

防止XSS攻擊,一是伺服器端的程序要做安全過濾,最基本的是HTML轉義,把當作被搜索的字元串,而不是要執行的腳本。二是瀏覽器端的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蜘蛛的方式渲染頁面。結果是這樣:

怎樣利用XSS漏洞在其它網站注入鏈接
顯然,Google能夠抓取URL,執行注入的腳本,生成的頁面頂部是有那個被注入的鏈接的。這可是來自銀行域名的一個外部鏈接。

為了進一步驗證,Tom把實驗URL提交給Google,結果說明,Google索引了這個URL,快照顯示,通過JS腳本注入的鏈接也正常出現在頁面上:
怎樣利用XSS漏洞在其它網站注入鏈接
Tom還發現,通過XSS注入,也可以添加、修改HTML中的標籤,比如canonical標籤,這個也是挺危險啊。不過這個和本帖XSS注入鏈接關係不大,就不細說了。

XSS攻擊注入的鏈接有效果嗎?
僅僅能索引不一定說明問題,如果如某些垃圾鏈接一樣被Google忽略,沒有鏈接的效果,那也不能利用來操控外部鏈接。為了驗證這種URL上的鏈接是否有鏈接效果,Tom進一步做了實驗。

Tom在Revolut域名的URL上注入一個鏈接,指向自己實驗網站上以前不存在、剛剛創建的一個頁面,提交Revolut的URL,沒多久,Google就抓取了Tom自己實驗網站上的新頁面,而且索引了這個頁面,出現在搜索結果中:
怎樣利用XSS漏洞在其它網站注入鏈接
這說明,被注入的鏈接,至少是能起到吸引蜘蛛抓取的作用的。對權重流動和排名有沒有普通鏈接一樣的作用呢?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早就做了準備,所以這麼有信心。

由於網站搬家,部分鏈接失效,如無法下載,請聯繫站長!謝謝支持!
1. 帶 [親測] 說明源碼已經被站長親測過!
2. 下載後的源碼請在24小時內刪除,僅供學慣用途!
3. 分享目的僅供大家學習和交流,請不要用於商業用途!
4. 本站資源售價只是贊助,收取費用僅維持本站的日常運營所需!
5. 本站所有資源來源於站長上傳和網路,如有侵權請郵件聯繫站長!
6. 沒帶 [親測] 代表站長時間緊促,站長會保持每天更新 [親測] 源碼 !
7. 盜版ripro用戶購買ripro美化無擔保,若設置不成功/不生效我們不支持退款!
8. 本站提供的源碼、模板、插件等等其他資源,都不包含技術服務請大家諒解!
9. 如果你也有好源碼或者教程,可以到審核區發布,分享有金幣獎勵和額外收入!
10.如果您購買了某個產品,而我們還沒來得及更新,請聯繫站長或留言催更,謝謝理解 !
GG資源網 » 怎樣利用XSS漏洞在其它網站注入鏈接

發表回復

CAPTCHAis initialing...