一種網(wǎng)頁(yè)篡改的檢測(cè)方法及裝置制造方法【專利摘要】本發(fā)明公開了一種網(wǎng)頁(yè)篡改的檢測(cè)方法,包括:代理服務(wù)器獲取源站針對(duì)訪問請(qǐng)求的響應(yīng)網(wǎng)頁(yè);所述代理服務(wù)器在所述網(wǎng)頁(yè)中嵌入篡改檢測(cè)腳本;將所述網(wǎng)頁(yè)發(fā)送至發(fā)出訪問請(qǐng)求的客戶端瀏覽器;所述瀏覽器執(zhí)行所述篡改檢測(cè)腳本,檢測(cè)所述網(wǎng)頁(yè)是否被篡改;若所述網(wǎng)頁(yè)已被篡改,則將所述網(wǎng)頁(yè)上報(bào)檢測(cè)服務(wù)器。本發(fā)明的上述方案既克服了現(xiàn)有技術(shù)中由統(tǒng)一的網(wǎng)頁(yè)篡改檢測(cè)服務(wù)器集中檢測(cè)帶來(lái)的效率低下問題,也克服了需要對(duì)每個(gè)網(wǎng)頁(yè)分別嵌入篡改檢測(cè)腳本而導(dǎo)致的靈活性問題,其在不影響用戶訪問網(wǎng)頁(yè)的同時(shí)極大地提高了網(wǎng)站安全性?!緦@f(shuō)明】一種網(wǎng)頁(yè)篡改的檢測(cè)方法及裝置【
技術(shù)領(lǐng)域:
】[0001]本發(fā)明涉及計(jì)算機(jī)網(wǎng)站安全領(lǐng)域,特別是涉及一種網(wǎng)頁(yè)篡改的檢測(cè)方法及裝置。【
背景技術(shù):
】[0002]隨著互聯(lián)網(wǎng)的快速發(fā)展,互聯(lián)網(wǎng)上網(wǎng)站數(shù)量也越來(lái)越多。許多網(wǎng)站都是實(shí)體機(jī)構(gòu)及組織在互聯(lián)網(wǎng)中的形象展示。而一些具有不良企圖的組織或個(gè)人通過掃描服務(wù)器的弱口令、漏洞,然后攻擊網(wǎng)站并對(duì)其進(jìn)行惡意篡改。[0003]雖然目前已有防火墻、入侵檢測(cè)等安全防范手段,但現(xiàn)代操作系統(tǒng)的復(fù)雜性和多樣性導(dǎo)致系統(tǒng)漏洞層出不窮,防不勝防。黑客入侵和篡改頁(yè)面的事件時(shí)有發(fā)生。針對(duì)此,網(wǎng)頁(yè)防篡改系統(tǒng)應(yīng)運(yùn)而生。例如,給網(wǎng)頁(yè)掛惡意鏈接,如黑鏈、掛馬鏈接等,這些是網(wǎng)頁(yè)篡改的主要表現(xiàn)形式。[0004]目前,國(guó)內(nèi)外主要采用以下兩類方式檢測(cè)網(wǎng)頁(yè)篡改內(nèi)容:[0005](I)靜態(tài)特征匹配方式:[0006]即通過特征串(即大量人工收集的關(guān)鍵字)匹配網(wǎng)頁(yè)中的HTML正文,以判斷其是否被加入惡意鏈接。[0007](2)在網(wǎng)頁(yè)發(fā)布系統(tǒng)中增加網(wǎng)頁(yè)內(nèi)容審核和校驗(yàn)機(jī)制:[0008]即在網(wǎng)頁(yè)發(fā)布系統(tǒng)中構(gòu)建一個(gè)網(wǎng)頁(yè)內(nèi)容實(shí)時(shí)檢測(cè)系統(tǒng),所有網(wǎng)頁(yè)發(fā)布的內(nèi)容都經(jīng)過該系統(tǒng),經(jīng)過確認(rèn)后才能發(fā)布,同時(shí)還建立了網(wǎng)頁(yè)內(nèi)容指紋庫(kù),篡改檢測(cè)系統(tǒng)通過定期掃描網(wǎng)頁(yè)內(nèi)容和指紋庫(kù)內(nèi)容對(duì)比來(lái)發(fā)現(xiàn)網(wǎng)頁(yè)是否被黑鏈篡改。[0009]現(xiàn)有技術(shù)中,通常由專門的網(wǎng)頁(yè)防篡改系統(tǒng)或搜索引擎對(duì)網(wǎng)頁(yè)篡改進(jìn)行檢測(cè)。其將先將從源站下載用戶請(qǐng)求的網(wǎng)頁(yè),并利用篡改特征庫(kù)中的篡改特征規(guī)則匹配所述網(wǎng)頁(yè)內(nèi)容,如果發(fā)現(xiàn)與所述篡改特征規(guī)則相匹配的內(nèi)容,則認(rèn)為該網(wǎng)頁(yè)被篡改,否則將其發(fā)送給用戶。所述篡改特征規(guī)則通常由正則表達(dá)式表示,而使用正則表達(dá)式匹配網(wǎng)頁(yè)內(nèi)容比較耗時(shí),效率低下,實(shí)時(shí)性比較差。目前網(wǎng)頁(yè)篡改方式層出不窮,日益變化,篡改特征規(guī)則庫(kù)中的篡改特征規(guī)則也將隨之增加,這就意味著每一次檢測(cè)都將耗費(fèi)大量資源,且用戶體驗(yàn)不佳,導(dǎo)致用戶對(duì)網(wǎng)站的期望值下降,對(duì)于一些商業(yè)網(wǎng)站來(lái)說(shuō),這將是致命的。[0010]因此需要一種新的檢測(cè)網(wǎng)頁(yè)篡改的方法,在不影響用戶訪問網(wǎng)頁(yè)速度的前提下,提供網(wǎng)站的安全性,為用戶提供更好地服務(wù)?!?br/>發(fā)明內(nèi)容】[0011]為解決現(xiàn)有技術(shù)中存在的上述問題,本發(fā)明提出了一種網(wǎng)頁(yè)篡改的檢測(cè)方法,在用戶毫無(wú)覺察的情況下檢測(cè)網(wǎng)頁(yè)中的篡改內(nèi)容,為用戶提供最佳的安全服務(wù)。[0012]根據(jù)本發(fā)明一方面,其提供了一種網(wǎng)頁(yè)篡改的檢測(cè)方法,包括:[0013]代理服務(wù)器獲取源站針對(duì)訪問請(qǐng)求的響應(yīng)網(wǎng)頁(yè);[0014]所述代理服務(wù)器在所述網(wǎng)頁(yè)中嵌入篡改檢測(cè)腳本;[0015]將所述網(wǎng)頁(yè)發(fā)送至發(fā)出訪問請(qǐng)求的客戶端瀏覽器;[0016]所述瀏覽器執(zhí)行所述篡改檢測(cè)腳本,檢測(cè)所述網(wǎng)頁(yè)是否被篡改;[0017]若所述網(wǎng)頁(yè)已被篡改,則將所述網(wǎng)頁(yè)上報(bào)檢測(cè)服務(wù)器。[0018]可選地,所述篡改檢測(cè)腳本通過判斷所述網(wǎng)頁(yè)中是否被掛馬來(lái)檢測(cè)所述網(wǎng)頁(yè)是否被篡改。[0019]可選地,所述篡改檢測(cè)腳本通過判斷所述網(wǎng)頁(yè)中是否存在黑鏈來(lái)檢測(cè)所述網(wǎng)頁(yè)是否被篡改。[0020]可選地,還包括:[0021]判斷所上報(bào)的網(wǎng)頁(yè)是否存在于白名單或黑名單中,其中,所述白名單和黑名單存儲(chǔ)于所述檢測(cè)服務(wù)器中;[0022]若所述網(wǎng)頁(yè)存在于白名單中,則不作處理;[0023]若所述網(wǎng)頁(yè)存在于黑名單中,則存入篡改數(shù)據(jù)庫(kù),并發(fā)出警報(bào)。[0024]可選地,還包括:[0025]在所述檢測(cè)服務(wù)器中對(duì)所上報(bào)的網(wǎng)頁(yè)進(jìn)行進(jìn)一步檢測(cè)。[0026]可選地,在所述檢測(cè)服務(wù)器中對(duì)所述網(wǎng)頁(yè)進(jìn)行進(jìn)一步檢測(cè)包括:[0027]根據(jù)篡改特征庫(kù)檢測(cè)網(wǎng)頁(yè)中的篡改內(nèi)容,提取所述篡改內(nèi)容中的黑詞-黑鏈對(duì),所述黑詞-黑鏈對(duì)由黑詞及其對(duì)應(yīng)的黑鏈組成;[0028]若所述黑詞-黑鏈對(duì)的出現(xiàn)頻率高于預(yù)定閾值,則將其存入黑詞-黑鏈庫(kù)中;[0029]根據(jù)黑詞-黑鏈庫(kù)檢測(cè)網(wǎng)頁(yè)中的篡改內(nèi)容;[0030]若待檢測(cè)網(wǎng)頁(yè)中出現(xiàn)的黑詞對(duì)應(yīng)的鏈接存在于所述黑詞-黑鏈庫(kù)中該黑詞對(duì)應(yīng)的黑鏈集中,則確定該待檢測(cè)網(wǎng)頁(yè)被篡改。[0031]可選地,所述發(fā)出警報(bào)包括:[0032]將篡改信息發(fā)送至通知服務(wù)器;[0033]所述通知服務(wù)器通過郵件/短信方式向網(wǎng)站管理員發(fā)出所述警報(bào)信息。[0034]可選地,所述篡改檢測(cè)腳本為Javascript腳本。[0035]根據(jù)本發(fā)明的另一方面,其還提供了一種網(wǎng)頁(yè)篡改的檢測(cè)裝置,包括:[0036]代理模塊,其獲取源站針對(duì)訪問請(qǐng)求的響應(yīng)網(wǎng)頁(yè),并在網(wǎng)頁(yè)中嵌入篡改檢測(cè)腳本;[0037]發(fā)送模塊,其將所述網(wǎng)頁(yè)發(fā)送至發(fā)出訪問請(qǐng)求的瀏覽器模塊;[0038]瀏覽器模塊,其用于執(zhí)行所述篡改檢測(cè)腳本,檢測(cè)所述網(wǎng)頁(yè)是否被篡改;[0039]上報(bào)模塊,若所述網(wǎng)頁(yè)已被篡改,其將所述網(wǎng)頁(yè)上報(bào)檢測(cè)服務(wù)器。[0040]可選地,所述篡改檢測(cè)腳本通過判斷所述網(wǎng)頁(yè)中是否被掛馬來(lái)檢測(cè)所述網(wǎng)頁(yè)是否被篡改。[0041]可選地,所述篡改檢測(cè)腳本通過判斷所述網(wǎng)頁(yè)中是否存在黑鏈來(lái)檢測(cè)所述網(wǎng)頁(yè)是否被篡改。[0042]可選地,還包括:[0043]判斷模塊,用于判斷所上報(bào)的網(wǎng)頁(yè)是否存在于白名單或黑名單中,其中,所述白名單和黑名單存儲(chǔ)于所述檢測(cè)服務(wù)器中;若所述網(wǎng)頁(yè)存在于白名單中,則不作處理;若所述網(wǎng)頁(yè)存在于黑名單中,則存入篡改數(shù)據(jù)庫(kù),并發(fā)出警報(bào)。[0044]可選地,還包括:[0045]檢測(cè)模塊,用于對(duì)所上報(bào)的網(wǎng)頁(yè)進(jìn)行進(jìn)一步檢測(cè)。[0046]可選地,所述檢測(cè)模塊包括:[0047]提取模塊,其根據(jù)篡改特征庫(kù)檢測(cè)網(wǎng)頁(yè)中的篡改內(nèi)容,提取所述篡改內(nèi)容中的黑詞-黑鏈對(duì),所述黑詞-黑鏈對(duì)由黑詞及其對(duì)應(yīng)的黑鏈組成;[0048]庫(kù)生成模塊,其在所述黑詞-黑鏈對(duì)的出現(xiàn)頻率高于預(yù)定閾值時(shí),將黑詞-黑鏈存入黑詞-黑鏈庫(kù)中;[0049]檢測(cè)子模塊:其根據(jù)黑詞-黑鏈庫(kù)檢測(cè)網(wǎng)頁(yè)中的篡改內(nèi)容,若待檢測(cè)網(wǎng)頁(yè)中出現(xiàn)的黑詞對(duì)應(yīng)的鏈接存在于所述黑詞-黑鏈庫(kù)中該黑詞對(duì)應(yīng)的黑鏈集中,則確定該待檢測(cè)網(wǎng)頁(yè)被篡改。[0050]可選地,所述判斷模塊進(jìn)一步包括:[0051]警報(bào)模塊,其將篡改信息發(fā)送至通知模塊;[0052]通知模塊,其通過郵件/短信方式向網(wǎng)站管理員發(fā)出所述警報(bào)信息。[0053]可選地,所述篡改檢測(cè)腳本為Javascript腳本。[0054]可見,本發(fā)明提出的上述網(wǎng)頁(yè)篡改的檢測(cè)方法及裝置,通過專門設(shè)置的代理服務(wù)器在網(wǎng)頁(yè)源碼中嵌入篡改檢測(cè)腳本,無(wú)需網(wǎng)站管理員手動(dòng)嵌入篡改檢測(cè)腳本,在用戶打開瀏覽器的同時(shí)由瀏覽器執(zhí)行所述篡改檢測(cè)腳本對(duì)網(wǎng)頁(yè)進(jìn)行檢測(cè)。且本發(fā)明提出的上述方案中的篡改檢測(cè)腳本為javascript腳本,其在啟動(dòng)后只在后臺(tái)執(zhí)行,對(duì)用戶不會(huì)產(chǎn)生任何影響。這種檢測(cè)方法既克服了現(xiàn)有技術(shù)中由統(tǒng)一的網(wǎng)頁(yè)篡改檢測(cè)服務(wù)器集中檢測(cè)帶來(lái)的效率低下問題,也克服了需要每個(gè)網(wǎng)站管理員手動(dòng)嵌入篡改檢測(cè)腳本而導(dǎo)致的靈活性問題,其在不影響用戶訪問網(wǎng)頁(yè)的同時(shí)極大地提高了網(wǎng)站安全性?!緦@綀D】【附圖說(shuō)明】[0055]圖1是本發(fā)明提出的一種網(wǎng)頁(yè)篡改的檢測(cè)方法流程圖;[0056]圖2是本發(fā)明實(shí)施例中檢測(cè)服務(wù)器根據(jù)上報(bào)網(wǎng)頁(yè)的篡改內(nèi)容進(jìn)行處理的方法流程圖;[0057]圖3是本發(fā)明實(shí)施例中檢測(cè)服務(wù)器對(duì)上報(bào)網(wǎng)頁(yè)的進(jìn)一步檢測(cè)方法流程圖;[0058]圖4是本發(fā)明提出的一種網(wǎng)頁(yè)篡改的檢測(cè)裝置結(jié)構(gòu)圖;[0059]圖5是本發(fā)明中檢測(cè)服務(wù)器中對(duì)上報(bào)網(wǎng)頁(yè)做進(jìn)一步檢測(cè)的裝置結(jié)構(gòu)圖?!揪唧w實(shí)施方式】[0060]為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚明白,以下結(jié)合具體實(shí)施例,并參照附圖,對(duì)本發(fā)明作進(jìn)一步的詳細(xì)說(shuō)明。[0061]圖1示出了本發(fā)明提出的一種網(wǎng)頁(yè)篡改的檢測(cè)方法流程圖。如圖1所示,該方法包括:[0062]步驟101:代理服務(wù)器獲取源站針對(duì)訪問請(qǐng)求的響應(yīng)網(wǎng)頁(yè);[0063]步驟102:所述代理服務(wù)器在所述網(wǎng)頁(yè)中嵌入篡改檢測(cè)腳本;[0064]步驟103:將所述網(wǎng)頁(yè)發(fā)送至發(fā)出訪問請(qǐng)求的客戶端瀏覽器;[0065]步驟104:所述瀏覽器執(zhí)行所述篡改檢測(cè)腳本,檢測(cè)所述網(wǎng)頁(yè)是否被篡改;[0066]步驟105:若所述網(wǎng)頁(yè)已被篡改,則將所述網(wǎng)頁(yè)上報(bào)檢測(cè)服務(wù)器。[0067]下面根據(jù)具體的實(shí)施例對(duì)本發(fā)明提出上述網(wǎng)頁(yè)篡改的檢測(cè)方法的各個(gè)步驟進(jìn)行詳細(xì)說(shuō)明。[0068]步驟101中,代理服務(wù)器獲取源站針對(duì)訪問請(qǐng)求的響應(yīng)網(wǎng)頁(yè)。[0069]代理服務(wù)器通常的功能是代理網(wǎng)絡(luò)用戶取得網(wǎng)絡(luò)信息,代理服務(wù)器通常是介于瀏覽器和Web網(wǎng)站服務(wù)器之間的一臺(tái)服務(wù)器,有了它之后,瀏覽器不是直接到Web網(wǎng)站服務(wù)器上取回網(wǎng)頁(yè),而是向代理服務(wù)器發(fā)出請(qǐng)求,代理服務(wù)器根據(jù)所述請(qǐng)求從Web網(wǎng)站服務(wù)器獲取所請(qǐng)求的網(wǎng)頁(yè)并返回給瀏覽器。通常代理服務(wù)器都設(shè)置一個(gè)較大的硬盤緩沖區(qū),它不斷的將新取得的數(shù)據(jù)儲(chǔ)存到它本地的硬盤緩沖區(qū)中,如果瀏覽器請(qǐng)求的數(shù)據(jù)在它本機(jī)的存儲(chǔ)器上,而且是最新的,那么它就不重新從Web服務(wù)器區(qū)數(shù)據(jù),而直接將存儲(chǔ)器上的數(shù)據(jù)傳送給用戶的瀏覽器,這樣就能顯著提高瀏覽器速度和效率。[0070]步驟102:所述代理服務(wù)器在所述網(wǎng)頁(yè)中嵌入篡改檢測(cè)腳本。[0071]所謂網(wǎng)頁(yè)篡改就是一些具有不良企圖的組織或個(gè)人通過掃描服務(wù)器的弱口令、漏洞,獲得網(wǎng)站的賬戶權(quán)限后,對(duì)網(wǎng)站的網(wǎng)頁(yè)源碼進(jìn)行惡意修改。最典型的一種修改方式就是在網(wǎng)頁(yè)源碼中插入惡意鏈接,如掛馬鏈接和黑鏈等。[0072]網(wǎng)頁(yè)是構(gòu)成網(wǎng)站的基本元素,通常網(wǎng)頁(yè)都是由超文本標(biāo)記語(yǔ)言(HTML語(yǔ)言)編寫而成的文件,其需要通過瀏覽器閱讀。而通過瀏覽器打開某個(gè)網(wǎng)頁(yè)時(shí),瀏覽器執(zhí)行相應(yīng)的HTML文件,根據(jù)HTML文件中的格式顯示網(wǎng)頁(yè)的文字、圖片等等。黑客通過各種方式獲得網(wǎng)站的管理員權(quán)限后,對(duì)該網(wǎng)站上的網(wǎng)頁(yè)源碼即其對(duì)應(yīng)的HTML文件進(jìn)行修改,在其中一些不良元素,如黑鏈和掛馬鏈接等。而黑客在網(wǎng)頁(yè)中所植入的黑鏈和掛馬鏈接用戶往往無(wú)法察覺,其可能是通過改寫網(wǎng)頁(yè)對(duì)應(yīng)的HTML文件,將黑鏈或掛馬鏈接隱藏起來(lái),如黑鏈或掛馬鏈接的顯示格式設(shè)置為不可見、或?yàn)g覽器顯示區(qū)域之外,或者隱藏在一張圖片底層等等。在用戶通過瀏覽器打開該被篡改的網(wǎng)頁(yè)時(shí),就可能直接轉(zhuǎn)向帶有木馬病毒的惡意網(wǎng)站,或者直接執(zhí)行木馬病毒等等。[0073]目前對(duì)網(wǎng)頁(yè)篡改的檢測(cè)機(jī)制是由專門的檢測(cè)工具或者搜索引擎集中檢測(cè),即對(duì)用戶請(qǐng)求的網(wǎng)頁(yè)先預(yù)下載之后進(jìn)行檢測(cè),并在檢測(cè)通過之后發(fā)送給用戶。這在網(wǎng)站較多和/或訪問網(wǎng)站用戶較多時(shí),會(huì)導(dǎo)致用戶的訪問速度下降。[0074]鑒于此,本發(fā)明利用代理服務(wù)器的特性,由代理服務(wù)器在所抓取的用戶請(qǐng)求網(wǎng)頁(yè)源碼中嵌入檢測(cè)網(wǎng)頁(yè)篡改內(nèi)容的篡改檢測(cè)腳本。采用這種方式的優(yōu)點(diǎn)在于:一、無(wú)需專門的服務(wù)器對(duì)用戶請(qǐng)求的網(wǎng)頁(yè)進(jìn)行集中檢測(cè),提高了效率;二、無(wú)需在網(wǎng)頁(yè)源碼中手動(dòng)嵌入篡改檢測(cè)腳本,便于統(tǒng)一管理,并且腳本的嵌入對(duì)網(wǎng)站開發(fā)人員及用戶都是透明的。[0075]代理服務(wù)器在具有了嵌入篡改檢測(cè)腳本這一功能之后,對(duì)從Web網(wǎng)站服務(wù)器抓取的網(wǎng)頁(yè)對(duì)應(yīng)的HTML文件中嵌入篡改檢測(cè)腳本。具體地,可以在獲取的HTML文件的頭標(biāo)簽head中插入嵌入篡改檢測(cè)腳本??蛇x地,本發(fā)明中篡改檢測(cè)腳本采用Javascript腳本來(lái)實(shí)現(xiàn)。Javascript是一種基于對(duì)象和事件驅(qū)動(dòng)并具有相對(duì)安全性的客戶端腳本語(yǔ)言。同時(shí)也是一種廣泛用于客戶端Web開發(fā)的腳本語(yǔ)言,常用來(lái)給Html網(wǎng)頁(yè)添加動(dòng)態(tài)功能。[0076]Javascript腳本程序是純文本語(yǔ)句,不需要編譯,因此其可以由瀏覽器直接解釋執(zhí)行。在將檢測(cè)網(wǎng)頁(yè)是否被篡改的Javascript語(yǔ)句嵌入到網(wǎng)頁(yè)對(duì)應(yīng)的HTML文件中,用戶在打開該網(wǎng)頁(yè)時(shí)就可觸發(fā)該Javascript腳本執(zhí)行相應(yīng)操作,以檢測(cè)網(wǎng)頁(yè)中的內(nèi)容是否被篡改。[0077]下面以嵌入Javascript腳本舉例說(shuō)明如何在HTML文件的頭標(biāo)簽head中嵌入篡改檢測(cè)腳本:[0078]假設(shè)HTML文件為:[0079]<htmlxmlns=http://www.XXXX.cn/xhtml><head><^也>歡迎訪問XXXX網(wǎng)站!〈/title〉</head>嵌入Javascript腳本之后如下所示:<htinlXmIηS=`http://www.XXXX.cn/xhtml><head><廿也>歡迎訪問XXXX網(wǎng)站!</til:le><!--開始嵌入JavaScript代碼--><scriptlanguage」”javascript,,type=,,text/javascriptw>functionsctAdd(){varAtag=docxiTrient.gclFlcrncntByTag(“a”);if(Atag.style.1ndexOf(“display:n()ne”)){初步命中黑鏈,需上傳服務(wù)器檢測(cè);}〈/script.〉<!--結(jié)束--></head>[0080]上述示例僅用作舉例說(shuō)明,本發(fā)明對(duì)腳本的嵌入形式并不做具體限定。[0081]采用Javascript腳本嵌入的方式除了能提高檢測(cè)速度外,另一個(gè)優(yōu)點(diǎn)是Javascript腳本程序只在后臺(tái)執(zhí)行,用戶對(duì)其不可見,因此不會(huì)妨礙用戶的其它操作。[0082]本發(fā)明中除了使用Javascript腳本外,還可以使用其他任何可以嵌入到網(wǎng)頁(yè)中的腳本語(yǔ)言,只要瀏覽器能夠解釋執(zhí)行即可,本發(fā)明對(duì)此不作具體限定。[0083]步驟103:將所述網(wǎng)頁(yè)發(fā)送至發(fā)出訪問請(qǐng)求的客戶端瀏覽器。該步驟中,代理服務(wù)器在獲取的網(wǎng)頁(yè)HTML文件中嵌入篡改檢測(cè)腳本后,將所述網(wǎng)頁(yè)HTML文件發(fā)送給請(qǐng)求訪問該網(wǎng)頁(yè)的客戶端瀏覽器。[0084]步驟104:所述瀏覽器執(zhí)行所述篡改檢測(cè)腳本,檢測(cè)所述網(wǎng)頁(yè)是否被篡改。[0085]瀏覽器在接收到代理服務(wù)器發(fā)送的網(wǎng)頁(yè)HTML文件后,在加載完該HTML文件后,開始執(zhí)行其頭標(biāo)簽head中插入的篡改檢測(cè)腳本由所述篡改檢測(cè)腳本檢測(cè)用戶打開的網(wǎng)頁(yè)源碼中是否存在篡改內(nèi)容。[0086]所述篡改檢測(cè)腳本的檢測(cè)方式可以有多種,本發(fā)明一實(shí)施例中,篡改檢測(cè)腳本通過判斷所述網(wǎng)頁(yè)中是否被掛馬來(lái)檢測(cè)所述網(wǎng)頁(yè)是否被篡改。[0087]所謂掛馬,就是黑客通過各種手段,包括SQL注入,網(wǎng)站敏感文件掃描,服務(wù)器漏洞,網(wǎng)站程序Oday等各種方法獲得網(wǎng)站管理員賬號(hào),[0088]然后登陸網(wǎng)站后臺(tái),通過國(guó)數(shù)據(jù)庫(kù)備份/恢復(fù)或者上傳漏洞獲得一個(gè)webshell,利用所獲得的webshell修改網(wǎng)站頁(yè)面的內(nèi)容,向網(wǎng)頁(yè)中加入惡意轉(zhuǎn)向代碼,即掛馬鏈接。當(dāng)用戶訪問被加入掛馬鏈接的頁(yè)面時(shí),自動(dòng)的訪問被轉(zhuǎn)向的地址或者下載木馬病毒。如果進(jìn)入了被掛馬的網(wǎng)站,則會(huì)感染木馬病毒,并丟失大量的寶貴文件資料和賬戶密碼,其危害極大。[0089]掛馬鏈接主要目的是散播木馬病毒或騙取流量和點(diǎn)擊率等。掛馬鏈接的插入方式多種多樣,如通過iframe框架進(jìn)行掛馬鏈接的插入:[0090]〈iframesrc=http://www.xxx.com/example,html[0091]width=Oheight=0><iframe>[0092]上述插入在網(wǎng)頁(yè)源碼中的語(yǔ)句表示在打開某一網(wǎng)站“www.xxx.com”的同時(shí),打開另一個(gè)網(wǎng)頁(yè)“example,html”,而“example,html”網(wǎng)頁(yè)極有可能包含大量的木馬病毒,也可能僅僅是為了騙取流量或點(diǎn)擊率。掛馬方式多種多樣,上面僅為舉例說(shuō)明,本領(lǐng)域技術(shù)人員應(yīng)當(dāng)理解本發(fā)明中涉及的掛馬方式不限于此。[0093]本發(fā)明另一實(shí)施例中,篡改檢測(cè)腳本通過判斷所述網(wǎng)頁(yè)中是否存在黑鏈來(lái)檢測(cè)所述網(wǎng)頁(yè)是否被篡改。[0094]插入黑鏈的主要目標(biāo)就是提升自己在搜索引擎中的排名。萬(wàn)維網(wǎng)成為大量信息的載體,為有效地提取并利用這些信息,搜索引擎(SearchEngine)作為一個(gè)輔助人們檢索信息的工具,成為用戶訪問萬(wàn)維網(wǎng)的入口和指南。[0095]例如,某新網(wǎng)站在搜索引擎中的排名很靠后,之后某個(gè)權(quán)利高(排名好,質(zhì)量高)的網(wǎng)站和這個(gè)新開的網(wǎng)站做了鏈接,那么搜索引擎就會(huì)認(rèn)為這個(gè)新開的網(wǎng)站既然可以和這樣權(quán)重高的網(wǎng)站做上鏈接,那么它的權(quán)重也不會(huì)低,所以這個(gè)網(wǎng)站在搜索弓丨擎中的排名就會(huì)提升。如果有多個(gè)權(quán)重高的網(wǎng)站也都和這個(gè)網(wǎng)站做了鏈接,那么它的排名將會(huì)上升得非??臁0096]反之,一個(gè)新網(wǎng)站的權(quán)重不會(huì)很高,搜索引擎不會(huì)給它很高的排名,其在搜索結(jié)果中的排名就會(huì)比較靠后。對(duì)于搜索引擎的這種特性,目前有些工具提供了黑鏈技術(shù),即通過入侵一些權(quán)重高的網(wǎng)站,入侵成功后將網(wǎng)站的鏈接插入到被入侵網(wǎng)站的頁(yè)面中,從而實(shí)現(xiàn)鏈接的效果,并且通過隱藏網(wǎng)站鏈接,使別人在被入侵網(wǎng)站的頁(yè)面上是看不到任何鏈接。[0097]然而,目前采用黑鏈技術(shù)來(lái)實(shí)現(xiàn)搜索排名提升的,相當(dāng)一部分是游戲私服網(wǎng)站、盜號(hào)木馬網(wǎng)站、釣魚網(wǎng)站和廣告網(wǎng)站等不安全網(wǎng)站。對(duì)于這些不安全網(wǎng)站,搜索引擎不會(huì)給它們很高的排名,但通過“黑鏈”,它們的排名就會(huì)很靠前,在這種情況下,當(dāng)使用搜索引擎的時(shí)候,點(diǎn)擊打開這些網(wǎng)站的概率就會(huì)很高,如果用戶沒有做好安全防護(hù)工作,那么就會(huì)容易就會(huì)感染網(wǎng)站上的病毒。[0098]現(xiàn)有的黑鏈技術(shù)中,隱藏鏈接有一些固定技巧,例如搜索引擎對(duì)javascript的識(shí)別不是很好,通過javascript來(lái)輸出隱藏的div。這樣的話,人工直接通過頁(yè)面無(wú)法看到這些鏈接,而搜索引擎確認(rèn)為這些鏈接是有效的。代碼為:首先通過javascript寫前面的div,設(shè)置display為none。然后輸出一個(gè)table,table中包含了要掛的黑鏈。最后再通過javascript輸出后半部分div。[0099]例如,黑客通過在網(wǎng)頁(yè)的源碼插入下面語(yǔ)句,實(shí)現(xiàn)在目標(biāo)網(wǎng)頁(yè)中插入黑鏈的目的:[0100]<ahref=“http://www.45u.com,,style=margin-left:-83791;”〉傳奇私服發(fā)布</a>[0101]其中,通過設(shè)置style=^margin-left:-83791;”,使得該黑鏈在網(wǎng)頁(yè)中不可見。[0102]本發(fā)明實(shí)施例中,對(duì)于黑鏈和/或掛馬連接等惡意鏈接,篡改檢測(cè)腳本可以通過將網(wǎng)頁(yè)的HTML文件解析成DOMTree,并對(duì)解析后得到的DOMTree文件進(jìn)行檢測(cè)。DOM是文檔對(duì)象化模模型(DocumentObjectModel)的簡(jiǎn)稱,DOMTree是指通過DOM將HTML頁(yè)面進(jìn)行解析,并生成HTMLtree樹狀結(jié)構(gòu)和對(duì)應(yīng)訪問方法。借助DOMTree,能夠直接而且簡(jiǎn)易的操作HTML頁(yè)面上的每個(gè)標(biāo)記內(nèi)容。[0103]以黑鏈檢測(cè)為例加以說(shuō)明。對(duì)于網(wǎng)頁(yè)中插入的下面的黑鏈形式:[0104]<ahref=“http://www.45u.com”style=”display:none;”〉傳奇私服發(fā)布</a>。[0105]篡改檢測(cè)腳本可以如下編寫:[0106]varAtag=document.gctElcmentByTag('a);if(Atag.style.1ndexOf(44display:nonew)){初步命中黑鏈,需上傳服務(wù)器檢測(cè);}[0107]代理服務(wù)器可以將上述腳本代碼插入在HTML文件的頭標(biāo)簽head中,也可以將腳本代碼嵌入HTML文件的主體標(biāo)簽body中。上述篡改檢測(cè)腳本在執(zhí)行的時(shí)候是通過從解析出的DOMTree文件中獲取“a”標(biāo)記,并且在該標(biāo)記后跟隨的style是“display:none”,即該標(biāo)記后的內(nèi)容的顯示格式為不顯示,則初步認(rèn)定其為篡改內(nèi)容。由于黑客為了防止用戶發(fā)現(xiàn)其插入的黑鏈和掛馬鏈接,通常將其顯示格式設(shè)置為不可見。因此篡改檢測(cè)腳本可以基于黑鏈和/或惡意鏈接的插入方式進(jìn)行編寫。[0108]以上代碼僅對(duì)黑鏈的顯示形式進(jìn)行了判斷,本領(lǐng)域的技術(shù)人員應(yīng)當(dāng)理解,黑鏈的檢測(cè)規(guī)則多種多樣,都可以通過編寫類似腳本嵌入網(wǎng)頁(yè)的方式進(jìn)行檢測(cè)。[0109]步驟105:若所述網(wǎng)頁(yè)已被篡改,則將所述網(wǎng)頁(yè)上報(bào)檢測(cè)服務(wù)器。[0110]該步驟中,瀏覽器利用篡改檢測(cè)腳本檢測(cè)出所述網(wǎng)頁(yè)被篡改后,將該被篡改的網(wǎng)頁(yè)上報(bào)給檢測(cè)服務(wù)器。[0111]所述檢測(cè)服務(wù)器在接收到所述被篡改的網(wǎng)頁(yè)之后,通知該網(wǎng)頁(yè)的網(wǎng)站管理人員,所述管理員可以通過修改網(wǎng)頁(yè)源碼和管理權(quán)限修補(bǔ)漏洞。為了降低誤報(bào)率,可選地,所述檢測(cè)服務(wù)器根據(jù)上報(bào)網(wǎng)頁(yè)的篡改內(nèi)容做進(jìn)一步處理。[0112]圖2示出了本發(fā)明中檢測(cè)服務(wù)器根據(jù)上報(bào)網(wǎng)頁(yè)的篡改內(nèi)容進(jìn)行處理的方法流程圖。如圖2所示,該方法包括:[0113]步驟201:判斷所上報(bào)的網(wǎng)頁(yè)中的篡改內(nèi)容是否存在于白名單或黑名單中,其中,所述白名單和黑名單存儲(chǔ)于所述檢測(cè)服務(wù)器中;[0114]步驟202:若所述網(wǎng)頁(yè)的篡改內(nèi)容存在于白名單中,則不作處理;[0115]步驟203:若所述網(wǎng)頁(yè)的篡改內(nèi)容存在于黑名單中,則存入篡改數(shù)據(jù)庫(kù),并發(fā)出警報(bào)。[0116]所述黑名單和白名單可以通過經(jīng)驗(yàn)值以及從可靠的第三方收集獲得,在白名單存儲(chǔ)確定為正常網(wǎng)站的鏈接,而在黑名單中存儲(chǔ)一些病毒網(wǎng)站、色情服務(wù)網(wǎng)站或在檢測(cè)的過程中確定的惡意網(wǎng)站等的鏈接。黑名單和白名單的更新還可以通過各個(gè)網(wǎng)站管理員的反饋進(jìn)行。[0117]可選地,為了提高準(zhǔn)確率,檢測(cè)服務(wù)器還對(duì)上報(bào)的網(wǎng)頁(yè)做進(jìn)一步檢測(cè)。由于篡改檢測(cè)腳本是嵌入在網(wǎng)頁(yè)中的檢測(cè)腳本,如javascript腳本,為了確保準(zhǔn)確率,檢測(cè)服務(wù)器對(duì)上報(bào)的網(wǎng)頁(yè)做進(jìn)一步檢測(cè)。[0118]下面以檢測(cè)篡改內(nèi)容中的黑鏈為例來(lái)說(shuō)明檢測(cè)服務(wù)器對(duì)上報(bào)網(wǎng)頁(yè)的進(jìn)一步檢測(cè)流程。本領(lǐng)域技術(shù)人員應(yīng)當(dāng)理解,下面將介紹的方法步驟雖然針對(duì)黑鏈,但不限于檢測(cè)黑鏈,使用類似的方法還可以檢測(cè)其它惡意鏈接如掛馬鏈接等。此外,還可以采用相應(yīng)的方式檢測(cè)其它篡改內(nèi)容。[0119]圖3示出了本發(fā)明實(shí)施例中檢測(cè)服務(wù)器對(duì)上報(bào)網(wǎng)頁(yè)的進(jìn)一步檢測(cè)方法流程圖。如圖3所示,該方法包括:[0120]步驟301:根據(jù)篡改特征庫(kù)檢測(cè)網(wǎng)頁(yè)中的篡改內(nèi)容,提取所述篡改內(nèi)容中的黑詞-黑鏈對(duì),所述黑詞-黑鏈對(duì)由黑詞及其對(duì)應(yīng)的黑鏈組成;[0121]步驟302:若所述黑詞-黑鏈對(duì)的出現(xiàn)頻率高于預(yù)定閾值,則將其存入黑詞-黑鏈庫(kù)中;[0122]步驟303:根據(jù)黑詞-黑鏈庫(kù)檢測(cè)網(wǎng)頁(yè)中的篡改內(nèi)容;[0123]步驟304:若待檢測(cè)網(wǎng)頁(yè)中出現(xiàn)的黑詞對(duì)應(yīng)的鏈接存在于所述黑詞-黑鏈庫(kù)中該黑詞對(duì)應(yīng)的黑鏈集中,則確定該待檢測(cè)網(wǎng)頁(yè)被篡改。[0124]本發(fā)明中,所述檢測(cè)服務(wù)器先根據(jù)篡改特征庫(kù)檢測(cè)網(wǎng)頁(yè)中的篡改內(nèi)容。所述篡改特征庫(kù)是由多個(gè)篡改關(guān)鍵詞和/或惡意鏈接的正則表達(dá)式所組成。對(duì)于待檢測(cè)網(wǎng)頁(yè),首先獲取其源碼,然后利用現(xiàn)有的篡改特征庫(kù)中的正則表達(dá)式匹配所述源碼,以獲取與正則表達(dá)式相一致的內(nèi)容。如果通過篡改特征庫(kù)中的正則表達(dá)式命中待檢測(cè)網(wǎng)頁(yè)中的內(nèi)容,則說(shuō)明該待檢測(cè)網(wǎng)頁(yè)中存在篡改內(nèi)容。[0125]正則表達(dá)式是用于進(jìn)行文本匹配的工具,通常由一些普通字符和一些元字符(metacharacters)組成。普通字符包括大小寫的字母和數(shù)字,而元字符則具有特殊的含義。正則表達(dá)式的匹配可以理解為,在給定的字符串中,尋找與給定的正則表達(dá)式相匹配的部分。有可能字符串里有不止一個(gè)部分滿足給定的正則表達(dá)式,這時(shí)每一個(gè)這樣的部分被稱為一個(gè)匹配。匹配在本文里可以包括三種含義:一種是形容詞性的,比如說(shuō)一個(gè)字符串匹配一個(gè)表達(dá)式;一種是動(dòng)詞性的,比如說(shuō)在字符串里匹配正則表達(dá)式;還有一種是名詞性的,就是剛剛說(shuō)到的“字符串中滿足給定的正則表達(dá)式的一部分”。[0126]以下通過舉例對(duì)正則表達(dá)式的生成規(guī)則進(jìn)行說(shuō)明。[0127]假設(shè)要查找hi,則可以使用正則表達(dá)式hi。這個(gè)正則表達(dá)式可以精確匹配這樣的字符串:由兩個(gè)字符組成,前一個(gè)字符是h,后一個(gè)是i。在實(shí)際中,正則表達(dá)式是可以忽略大小寫的。如果很多單詞里都包含hi這兩個(gè)連續(xù)的字符,比如him,history,high等等。用hi來(lái)查找的話,這此單詞里面的hi也會(huì)被找出來(lái)。如果要精確地查找hi這個(gè)單詞的話,則應(yīng)該使用\bhi\b。其中,\b是正則表達(dá)式的一個(gè)元字符,它代表著單詞的開頭或結(jié)尾,也就是單詞的分界處。雖然通常英文的單詞是由空格或標(biāo)點(diǎn)符號(hào)或換行來(lái)分隔的,但是\b并不匹配這些單詞分隔符中的任何一個(gè),它只匹配一個(gè)位置。假如要找的是hi后面不遠(yuǎn)處跟著一個(gè)Lucy,則應(yīng)該用\bhi\b.*\bLucv\b。其中,.是另一個(gè)元字符,匹配除了換行符以外的任意字符。*同樣是元字符,它代表的是數(shù)量——即指定*前邊的內(nèi)容可以連續(xù)重復(fù)出現(xiàn)任意次以使整個(gè)表達(dá)式得到匹配。現(xiàn)在\bhi\b.*\bLucy\b的意思就很明顯了:先是一個(gè)單詞hi,然后是任意個(gè)任意字符(但不能是換行),最后是Lucy這個(gè)單ο[0128]例如,篡改特征庫(kù)中篡改特征規(guī)則對(duì)應(yīng)的正則表達(dá)式如下所示:[0129]〈script.*?>document\.write.*?\(.*?\+.*?\+.*?\+.*?\+.*?\+.*?\).*?</script〉([\S\s]+?)</div>[0130]則該正則表達(dá)式在網(wǎng)頁(yè)中匹配命中的網(wǎng)頁(yè)元素可以為:[0131]<script>document.write('<d'+'ivst'+'yle1+1="po'+'si'+'tio/+'n:a'+'bso/+'lu'+'te;l'+'ef+'t:'+'+'10'+'00'+'0'+'p'+'X;'+""+'y)>XXXX<script>document.write('〈'+'/d'+'i'+'v>');</script>[0132]可見,篡改特征規(guī)則對(duì)應(yīng)的正則表達(dá)式用于匹配網(wǎng)頁(yè)中具有特定格式的網(wǎng)頁(yè)內(nèi)容,如具有“〈script>document.write”和“<script>document.write(1<1+1/d'+1i1+1v>');〈/script>”元素的內(nèi)容等。[0133]或如,另一篡改特征規(guī)則對(duì)應(yīng)的正則表達(dá)式如下所示:[0134]<a\s*href\s*=["\1].+?["\1]\s*style=["\1][\w+\_]+:-[0-9]+.*?["Xi].*?>.*?</a>。[0135]通過該篡改特征規(guī)則能夠命中的頁(yè)面元素可以為:[0136]<ahref=“http://www.45u.com”style=,>margin-left:-83791;”〉;[0137]該正則表達(dá)式用于匹配網(wǎng)頁(yè)中出現(xiàn)“〈ahref=”且其后面跟隨的篡改關(guān)鍵詞“style”的值中存在負(fù)值(負(fù)值表示其不在顯示區(qū)域中顯示)的網(wǎng)頁(yè)內(nèi)容。[0138]當(dāng)然,上述正則表達(dá)式的表示方式僅僅用作示例,本領(lǐng)域技術(shù)人員根據(jù)實(shí)際情況采用任一種正則表達(dá)式的表示方式都是可行的,本申請(qǐng)對(duì)此無(wú)需加以限制。[0139]本發(fā)明實(shí)施例中,檢測(cè)服務(wù)器可以通過所述正則表達(dá)式匹配分析所述待檢測(cè)網(wǎng)頁(yè)中的頁(yè)面元素位置和顯示方式,來(lái)判定其是否為被篡改的內(nèi)容。例如,判斷黑鏈篡改時(shí),可以通過正則表達(dá)式匹配判斷所述待檢測(cè)網(wǎng)頁(yè)中的頁(yè)面元素的位置是否不在預(yù)設(shè)閾值范圍內(nèi),或者所述頁(yè)面元素是否具有不可見的屬性,和/或,所述頁(yè)面元素是否對(duì)瀏覽器隱藏等,若是,則判定所述待檢測(cè)頁(yè)面中的所述頁(yè)面元素為被篡改內(nèi)容。例如,若檢測(cè)到某個(gè)頁(yè)面的超鏈接是不可見的,或者,頁(yè)面中某個(gè)html標(biāo)簽元素的長(zhǎng)寬高是負(fù)值,則可判定該頁(yè)面被篡改的內(nèi)容。[0140]本發(fā)明實(shí)施例中,檢測(cè)服務(wù)器還可以通過正則表達(dá)式匹配所述待檢測(cè)網(wǎng)頁(yè)中是否存在已確定的惡意鏈接和/或其對(duì)應(yīng)的篡改關(guān)鍵詞,來(lái)判讀其是否被篡改。檢測(cè)服務(wù)器還從所述篡改內(nèi)容中提取黑詞-黑鏈對(duì),所述黑詞-黑鏈對(duì)由黑詞及其對(duì)應(yīng)的黑鏈組成。例如,上述所命中的篡改內(nèi)容'<ahref=“http://www.45u.com”style=”margin-left:-83791;”〉傳奇私服發(fā)布</aV中的黑詞-黑鏈對(duì)為:傳奇私服發(fā)布-http://www.45u.com?,F(xiàn)有的網(wǎng)頁(yè)檢測(cè)方法中,通常都是篡改特征庫(kù)中的篡改特征規(guī)則對(duì)待檢測(cè)網(wǎng)頁(yè)的源碼進(jìn)行匹配,所述篡改特征規(guī)則為用于匹配網(wǎng)頁(yè)內(nèi)容中具有一定格式的連接,在檢測(cè)過程中,若命中篡改特征規(guī)則則認(rèn)為該網(wǎng)頁(yè)被篡改,若沒有命中,則認(rèn)為待檢測(cè)網(wǎng)頁(yè)是安全的,將其顯示給用戶。但是目前黑鏈的插入方式層出不窮,日益變化。而使用固定的篡改特征庫(kù)或者利用人工手動(dòng)更新篡改特征庫(kù)顯然跟不上黑客的步伐。[0141]基于此,本發(fā)明的檢測(cè)服務(wù)器在檢測(cè)出網(wǎng)頁(yè)被篡改后,還從篡改內(nèi)容中提取黑詞-黑鏈對(duì),以便之后根據(jù)該黑詞-黑鏈對(duì)對(duì)網(wǎng)頁(yè)進(jìn)一步進(jìn)行檢測(cè)。[0142]一般情況下,在被篡改的網(wǎng)頁(yè)內(nèi)容中,黑詞-黑鏈都會(huì)對(duì)應(yīng)特定的篡改關(guān)鍵詞??蛇x地,在提取黑詞-黑鏈的同時(shí)提取與其對(duì)應(yīng)的篡改關(guān)鍵詞,以便進(jìn)一步利用。[0143]例如:下面的黑鏈:[0144]<ahref=“http://www.45u.com”style=”display:none;”〉傳奇私服發(fā)布</a>。[0145]從中提取的篡改關(guān)鍵詞可以為“display:none”,其表示該黑詞-黑鏈的顯示屬性為不可見。[0146]步驟301中每提取一個(gè)黑詞-黑鏈對(duì),都將其存儲(chǔ)于數(shù)據(jù)存儲(chǔ)服務(wù)器中。[0147]本發(fā)明的方案中,為了提高檢測(cè)的準(zhǔn)確率,專門設(shè)置了黑詞-黑鏈庫(kù)。所述黑詞-黑鏈庫(kù)中用于存儲(chǔ)頻繁出現(xiàn)的黑詞-黑鏈對(duì)。本發(fā)明實(shí)施例中,在將所提取黑詞-黑鏈對(duì)存儲(chǔ)在數(shù)據(jù)存儲(chǔ)服務(wù)器的同時(shí),還統(tǒng)計(jì)其出現(xiàn)的次數(shù),如果統(tǒng)計(jì)出某個(gè)黑詞-黑鏈對(duì)的出現(xiàn)次數(shù)超過第一預(yù)定閾值,則將該黑詞-黑鏈對(duì)存儲(chǔ)至黑詞-黑鏈庫(kù)中。[0148]黑詞-黑鏈對(duì)在黑詞-黑鏈庫(kù)中的存儲(chǔ)方式可以根據(jù)具體需要進(jìn)行選擇??蛇x地,可以將所述黑詞-黑鏈對(duì)存儲(chǔ)為黑鏈集的方式,即每個(gè)黑詞對(duì)應(yīng)一個(gè)黑鏈集的方式進(jìn)行存儲(chǔ)。[0149]例如:黑詞-黑鏈庫(kù)中的黑詞-黑鏈對(duì)如下存儲(chǔ):[0150]黑詞I——{黑鏈I,黑鏈2,黑鏈3,……,黑鏈ml}[0151]黑詞2——{黑鏈I,黑鏈2,黑鏈3,……,黑鏈m2}[0152]......[0153]黑詞η——{黑鏈I,黑鏈2,黑鏈3,……,黑鏈mn}[0154]可選地,所述黑詞-黑鏈庫(kù)中的黑鏈集合可以是有序集合,即根據(jù)黑鏈集中黑鏈出現(xiàn)的次數(shù)對(duì)其進(jìn)行排序,次數(shù)最多的排在第一位,如黑鏈1,次數(shù)最少的排在最后,如黑鏈ml。在存儲(chǔ)過程中,每獲得一個(gè)黑詞-黑鏈對(duì),則根據(jù)其中的黑詞查找黑詞-黑鏈庫(kù)中是否已經(jīng)存在該黑詞,如果存在則查找該黑詞對(duì)應(yīng)的黑鏈集中是否存在所述黑詞-黑鏈對(duì)中的黑鏈,如果存在則更新該黑鏈的排名,否則將其插入在黑鏈集的尾端;如果黑詞-黑鏈庫(kù)中不存在黑詞-黑鏈對(duì)中的所述黑詞,則重新建立一條黑詞以及其對(duì)應(yīng)的黑鏈集。[0155]可選地,為提高檢測(cè)的準(zhǔn)確率,本發(fā)明不僅僅利用篡改特征庫(kù)檢測(cè)網(wǎng)頁(yè)的篡改內(nèi)容,其還利用黑詞-黑鏈庫(kù)對(duì)網(wǎng)頁(yè)進(jìn)行檢測(cè)。由于篡改特征庫(kù)相對(duì)穩(wěn)定且更新不及時(shí),因此對(duì)于很多新出現(xiàn)的黑詞-黑鏈,利用篡改特征庫(kù)無(wú)法及時(shí)檢測(cè)出篡改內(nèi)容。因此,本發(fā)明的方案中,對(duì)無(wú)法根據(jù)所述篡改規(guī)則庫(kù)檢測(cè)到的篡改內(nèi)容,還根據(jù)所述黑詞-黑鏈庫(kù)進(jìn)行檢測(cè)。[0156]本發(fā)明實(shí)施例中,利用黑詞-黑鏈庫(kù)對(duì)網(wǎng)頁(yè)進(jìn)行檢測(cè),是通過黑詞-黑鏈庫(kù)中的黑詞匹配所述網(wǎng)頁(yè)內(nèi)容,若網(wǎng)頁(yè)中存在與所述黑詞-黑鏈庫(kù)中的黑詞相匹配的內(nèi)容,則初步認(rèn)定該網(wǎng)頁(yè)被篡改,則提取相應(yīng)的初步篡改內(nèi)容。[0157]可選地,對(duì)于初步篡改內(nèi)容,再進(jìn)一步查看該初步篡改內(nèi)容中是否存在所述黑詞對(duì)應(yīng)的黑鏈,即可以匹配該黑詞對(duì)應(yīng)的黑鏈集中的黑鏈?zhǔn)欠翊嬖谟谠摮醪酱鄹膬?nèi)容中,若匹配成功則認(rèn)為該網(wǎng)頁(yè)被篡改。[0158]可選地,在利用黑詞對(duì)應(yīng)的黑鏈集中的黑鏈匹配所處初步篡改內(nèi)容時(shí),可以設(shè)置所述初步篡改內(nèi)容中存在排名靠前的黑鏈,即存在所述黑詞對(duì)應(yīng)的黑鏈集中預(yù)定位置前的黑鏈時(shí),才認(rèn)為該網(wǎng)頁(yè)被篡改。所述預(yù)定位置可以根據(jù)需要以及經(jīng)驗(yàn)進(jìn)行預(yù)先設(shè)定,如果檢測(cè)的目的是盡可能的查全,則所述預(yù)定位置可以設(shè)置的相對(duì)較大,如果檢測(cè)的目的是盡可能的查準(zhǔn),則所述預(yù)定位置可以設(shè)置的相對(duì)較小。[0159]檢測(cè)服務(wù)器對(duì)上報(bào)網(wǎng)頁(yè)的進(jìn)一步檢測(cè)過程中,之所以選擇先用黑詞進(jìn)行匹配,而不直接使用黑鏈進(jìn)行匹配是因?yàn)楹谠~匹配速度快,效率比較高。如果直接用黑鏈匹配的話,由于組成黑鏈的字符和/或字母等較多,匹配速度顯然不及直接用文字即黑詞進(jìn)行匹配??梢姡景l(fā)明提出的上述方案兼顧了網(wǎng)頁(yè)篡改檢測(cè)的準(zhǔn)確率及效率,使得整個(gè)檢測(cè)過程消耗資源較少,而且準(zhǔn)確率也有極大地提高。[0160]本發(fā)明的上述方案中,檢測(cè)服務(wù)器一旦確定上報(bào)網(wǎng)頁(yè)中確實(shí)存在篡改內(nèi)容后,將發(fā)出警報(bào)。所述警報(bào)可以先發(fā)送給通知服務(wù)器,即將所述篡改內(nèi)容、相應(yīng)的網(wǎng)頁(yè)信息等警報(bào)信息發(fā)送給通知服務(wù)器,通知服務(wù)器通過郵件或短信的方式將所述篡改信息發(fā)送給網(wǎng)站管理員。網(wǎng)站管理員在接收到警報(bào)信息后通過修改網(wǎng)頁(yè)源碼、網(wǎng)站管理員賬戶密碼等方式進(jìn)行修復(fù)。[0161]本發(fā)明提出的上述方案中,通過代理服務(wù)器統(tǒng)一在網(wǎng)頁(yè)中嵌入篡改檢測(cè)腳本,并將網(wǎng)頁(yè)的篡改檢測(cè)分散到各個(gè)用戶端執(zhí)行,且使用網(wǎng)頁(yè)中嵌入腳本的形式在后臺(tái)執(zhí)行檢測(cè)程序,對(duì)用戶不可見,不妨礙用戶的其它操作。用戶端的瀏覽器通過解釋執(zhí)行篡改檢測(cè)腳本檢測(cè)出網(wǎng)頁(yè)被篡改后,將其上報(bào)給檢測(cè)服務(wù)器,檢測(cè)服務(wù)器通過對(duì)其進(jìn)一步檢測(cè)后向網(wǎng)站管理人員發(fā)出警報(bào)信息,為網(wǎng)站提供網(wǎng)站安全檢測(cè)服務(wù)。本方案不但提高了網(wǎng)站安全檢測(cè)的檢測(cè)效率,還通過黑白名單和如黑詞黑鏈這種方式的進(jìn)一步檢測(cè)提高了檢測(cè)的準(zhǔn)確率。[0162]圖4示出了本發(fā)明提出的網(wǎng)頁(yè)篡改的檢測(cè)裝置結(jié)構(gòu)圖。如圖4所示,該裝置包括:[0163]代理模塊401,其獲取源站針對(duì)訪問請(qǐng)求的響應(yīng)網(wǎng)頁(yè),并在網(wǎng)頁(yè)中嵌入篡改檢測(cè)腳本;[0164]發(fā)送模塊402,其將所述網(wǎng)頁(yè)發(fā)送至發(fā)出訪問請(qǐng)求的瀏覽器模塊;[0165]瀏覽器模塊403,其用于執(zhí)行所述篡改檢測(cè)腳本,檢測(cè)所述網(wǎng)頁(yè)是否被篡改;[0166]上報(bào)模塊404,若所述網(wǎng)頁(yè)已被篡改,其將所述網(wǎng)頁(yè)上報(bào)檢測(cè)服務(wù)器。[0167]如圖1所示的方法實(shí)施例所述,本發(fā)明上述裝置中,代理模塊401從源站獲取用戶請(qǐng)求訪問的網(wǎng)頁(yè),并將檢測(cè)網(wǎng)頁(yè)篡改內(nèi)容的篡改檢測(cè)腳本直接嵌入到網(wǎng)頁(yè)源碼即網(wǎng)頁(yè)的HTML文件中。這樣,可以實(shí)現(xiàn)統(tǒng)一在網(wǎng)頁(yè)中嵌入篡改檢測(cè)腳本,且能夠?qū)⒕W(wǎng)頁(yè)篡改的檢測(cè)工作分散到各個(gè)用戶端,能夠提高檢測(cè)效率。[0168]具體地,代理服務(wù)器在獲取的HTML文件的頭標(biāo)簽中插入篡改檢測(cè)腳本代碼,之后通過發(fā)送模塊402將網(wǎng)頁(yè)返回給瀏覽器模塊403??蛇x地,本發(fā)明中篡改檢測(cè)腳本采用Javascript腳本來(lái)實(shí)現(xiàn)。Javascript腳本程序是純文本語(yǔ)句,不需要編譯,因此其可以由瀏覽器直接解釋執(zhí)行。在將檢測(cè)網(wǎng)頁(yè)是否被篡改的Javascript語(yǔ)句嵌入到網(wǎng)頁(yè)對(duì)應(yīng)的HTML文件中,用戶在打開該網(wǎng)頁(yè)時(shí)就可觸發(fā)該Javascript腳本執(zhí)行相應(yīng)操作,以檢測(cè)網(wǎng)頁(yè)中的內(nèi)容是否被篡改。[0169]采用Javascript腳本嵌入的方式除了能提高檢測(cè)速度外,另一個(gè)優(yōu)點(diǎn)是Javascript腳本程序只在后臺(tái)執(zhí)行,用戶對(duì)其不可見,因此不會(huì)妨礙用戶的其它操作。[0170]本發(fā)明中除了使用Javascript腳本外,還可以使用其他任何可以嵌入到網(wǎng)頁(yè)中的腳本語(yǔ)言,只要瀏覽器能夠解釋執(zhí)行即可,本發(fā)明對(duì)此不作具體限定。[0171]瀏覽器模塊404響應(yīng)用戶打開網(wǎng)頁(yè)事件而執(zhí)行所述篡改檢測(cè)腳本,并在加載完成所述HTML文件后,執(zhí)行該HTML文件頭標(biāo)簽中嵌入的篡改檢測(cè)腳本,并由所述篡改檢測(cè)腳本檢測(cè)用戶打開的網(wǎng)頁(yè)源碼中是否存在篡改內(nèi)容。[0172]所述篡改檢測(cè)腳本的檢測(cè)方式可以有多種,根據(jù)本發(fā)明一實(shí)施例,篡改檢測(cè)腳本通過判斷所述網(wǎng)頁(yè)中是否被掛馬來(lái)檢測(cè)所述網(wǎng)頁(yè)是否被篡改;根據(jù)本發(fā)明另一實(shí)施例,篡改檢測(cè)腳本通過判斷所述網(wǎng)頁(yè)中是否存在黑鏈來(lái)檢測(cè)所述網(wǎng)頁(yè)是否被篡改。[0173]本發(fā)明實(shí)施例中,對(duì)于黑鏈和/或掛馬連接等惡意鏈接,篡改檢測(cè)腳本可以通過將網(wǎng)頁(yè)的HTML文件解析成DOMTree,并對(duì)解析后得到的DOMTree文件進(jìn)行檢測(cè)。[0174]以黑鏈檢測(cè)為例加以說(shuō)明。對(duì)于網(wǎng)頁(yè)中插入的下面的黑鏈形式:[0175]<ahref=“http://www.45u.com”style=”display:none;”〉傳奇私服發(fā)布</a>。[0176]篡改檢測(cè)腳本可以如下編寫:[0177]【權(quán)利要求】1.一種網(wǎng)頁(yè)篡改的檢測(cè)方法,包括:代理服務(wù)器獲取源站針對(duì)訪問請(qǐng)求的響應(yīng)網(wǎng)頁(yè);所述代理服務(wù)器在所述網(wǎng)頁(yè)中嵌入篡改檢測(cè)腳本;將所述網(wǎng)頁(yè)發(fā)送至發(fā)出訪問請(qǐng)求的客戶端瀏覽器;所述瀏覽器執(zhí)行所述篡改檢測(cè)腳本,檢測(cè)所述網(wǎng)頁(yè)是否被篡改;若所述網(wǎng)頁(yè)已被篡改,則將所述網(wǎng)頁(yè)上報(bào)檢測(cè)服務(wù)器。2.如權(quán)利要求1所述的網(wǎng)頁(yè)篡改的檢測(cè)方法,其中,所述篡改檢測(cè)腳本通過判斷所述網(wǎng)頁(yè)中是否被掛馬來(lái)檢測(cè)所述網(wǎng)頁(yè)是否被篡改。3.如權(quán)利要求1所述的網(wǎng)頁(yè)篡改的檢測(cè)方法,其中,所述篡改檢測(cè)腳本通過判斷所述網(wǎng)頁(yè)中是否存在黑鏈來(lái)檢測(cè)所述網(wǎng)頁(yè)是否被篡改。4.如權(quán)利要求1所述的網(wǎng)頁(yè)篡改的檢測(cè)方法,還包括:判斷所上報(bào)的網(wǎng)頁(yè)中的篡改內(nèi)容是否存在于白名單或黑名單中,其中,所述白名單和黑名單存儲(chǔ)于所述檢測(cè)服務(wù)器中;若所述網(wǎng)頁(yè)的篡改內(nèi)容存在于白名單中,則不作處理;若所述網(wǎng)頁(yè)的篡改內(nèi)容存在于黑名單中,則存入篡改數(shù)據(jù)庫(kù),并發(fā)出警報(bào)。5.如權(quán)利要求1-4中任一項(xiàng)所述的網(wǎng)頁(yè)篡改的檢測(cè)方法,還包括:在所述檢測(cè)服務(wù)器中對(duì)所上報(bào)的網(wǎng)頁(yè)進(jìn)行進(jìn)一步檢測(cè)。6.如權(quán)利要求5所述的網(wǎng)頁(yè)篡改的檢測(cè)方法,其中,在所述檢測(cè)服務(wù)器中對(duì)所述網(wǎng)頁(yè)進(jìn)行進(jìn)一步檢測(cè)包括:根據(jù)篡改特征庫(kù)檢測(cè)網(wǎng)頁(yè)中的篡改內(nèi)容,提取所述篡改內(nèi)容中的黑詞-黑鏈對(duì),所述黑詞-黑鏈對(duì)由黑詞及其對(duì)應(yīng)的黑鏈組成;若所述黑詞-黑鏈對(duì)的出現(xiàn)頻率高于預(yù)定閾值,則將其存入黑詞-黑鏈庫(kù)中;根據(jù)黑詞-黑鏈庫(kù)檢測(cè)網(wǎng)頁(yè)中的篡改內(nèi)容;若待檢測(cè)網(wǎng)頁(yè)中出現(xiàn)的黑詞對(duì)應(yīng)的鏈接存在于所述黑詞-黑鏈庫(kù)中該黑詞對(duì)應(yīng)的黑鏈集中,則確定該待檢測(cè)網(wǎng)頁(yè)被篡改。7.如權(quán)利要求4所述的網(wǎng)頁(yè)篡改的檢測(cè)方法,其中,所述發(fā)出警報(bào)包括:將篡改信息發(fā)送至通知服務(wù)器;所述通知服務(wù)器通過郵件/短信方式向網(wǎng)站管理員發(fā)出所述警報(bào)信息。8.如權(quán)利要求1-4中任一項(xiàng)所述的網(wǎng)頁(yè)篡改的檢測(cè)方法,其中,所述篡改檢測(cè)腳本為Javascript腳本。9.一種網(wǎng)頁(yè)篡改的檢測(cè)裝置,包括:代理模塊,其獲取源站針對(duì)訪問請(qǐng)求的響應(yīng)網(wǎng)頁(yè),并在網(wǎng)頁(yè)中嵌入篡改檢測(cè)腳本;發(fā)送模塊,其將所述網(wǎng)頁(yè)發(fā)送至發(fā)出訪問請(qǐng)求的瀏覽器模塊;瀏覽器模塊,其用于執(zhí)行所述篡改檢測(cè)腳本,檢測(cè)所述網(wǎng)頁(yè)是否被篡改;上報(bào)模塊,若所述網(wǎng)頁(yè)已被篡改,其將所述網(wǎng)頁(yè)上報(bào)檢測(cè)服務(wù)器。10.如權(quán)利要求9所述的網(wǎng)頁(yè)篡改的檢測(cè)裝置,其中,所述篡改檢測(cè)腳本通過判斷所述網(wǎng)頁(yè)中是否被掛馬來(lái)檢測(cè)所述網(wǎng)頁(yè)是否被篡改?!疚臋n編號(hào)】G06F21/56GK103605926SQ201310631867【公開日】2014年2月26日申請(qǐng)日期:2013年11月29日優(yōu)先權(quán)日:2013年11月29日【發(fā)明者】何振科,趙武申請(qǐng)人:北京奇虎科技有限公司,奇智軟件(北京)有限公司