專利名稱:一種檢測黑鏈的方法和裝置的制作方法
一種檢測黑鏈的方法和裝置
技術(shù)領(lǐng)域:
本發(fā)明涉及計算機安全技術(shù)領(lǐng)域,特別涉及一種檢測黑鏈的方法和裝置。
背景技術(shù):
黑鏈又稱暗鏈、隱藏鏈接,是黑帽手法中相當(dāng)普遍的一種手段,是指用非正常手段獲取的其他網(wǎng)頁的反向鏈接,最常見的黑鏈就是通過各種網(wǎng)頁程序漏洞獲取搜索引擎權(quán)重或網(wǎng)頁級別(PR)較高的網(wǎng)頁的管理權(quán)限代碼(Webshell),進而在被黑網(wǎng)頁上鏈接自己的網(wǎng)頁。該手段是搜索引擎中進行作弊最有效最迅速的方法之一,在暴利行業(yè)使用尤多,例如游戲、外掛、彩鈴等業(yè)務(wù)的行業(yè)。現(xiàn)有的黑鏈檢測方法主要包括以下幾種其一、網(wǎng)站管理人員通過經(jīng)常查看網(wǎng)頁源代碼的方式,檢查網(wǎng)頁是否被掛上黑鏈。其二、查看網(wǎng)頁中的鏈接是否可訪問,如果存在未知鏈接,則懷疑被掛上黑鏈,刪除該未知鏈接。其三、通過FTP工具查看網(wǎng)頁文件的修改時間,如果存在修改時間異于大多數(shù)文件修改時間的文件,則該文件就可能被修改了文件源代碼,掛了黑鏈。上述幾種黑鏈檢測方法都需要大量的人工操作,一方面浪費人力資源,對網(wǎng)站管理人員的黑鏈知識提出較高要求,無法實現(xiàn)黑鏈的自動檢測;另一方面,對于新出現(xiàn)的黑鏈作弊方式,很難及時有效地發(fā)現(xiàn)。
發(fā)明內(nèi)容本發(fā)明提供了一種檢測黑鏈的方法和裝置,以便于實現(xiàn)黑鏈的自動檢測。具體技術(shù)方案如下一種檢測黑鏈的方法,該方法包括SI、提取待檢測網(wǎng)頁的超鏈接,逐一對獲取的超鏈接執(zhí)行黑鏈檢測流程所述黑鏈檢測流程包括:Al、判斷超鏈接的視覺特征參數(shù)是否滿足預(yù)設(shè)的不可見特征要求,如果是,則確定該超鏈接為黑鏈。根據(jù)本發(fā)明一優(yōu)選實施例,在所述黑鏈檢測流程的步驟Al中,如果判斷結(jié)果為否,則進一步執(zhí)行步驟A2:A2、判斷該超鏈接的外鏈引用次數(shù)是否超過預(yù)設(shè)的次數(shù)閾值,如果是,則確定該超鏈接為黑鏈。根據(jù)本發(fā)明一優(yōu)選實施例,如果所述A2的判斷結(jié)果為否,則將該超鏈接加入白名單數(shù)據(jù)庫,結(jié)束對該超鏈接的黑鏈檢測流程。根據(jù)本發(fā)明一優(yōu)選實施例,在所述步驟SI之前還包括S0、將所述待檢測網(wǎng)頁的網(wǎng)址與已有的白名單數(shù)據(jù)庫進行匹配,如果匹配得上,則確定所述待檢測網(wǎng)頁不存在黑鏈,結(jié)束流程;否則繼續(xù)執(zhí)行所述步驟Si。
根據(jù)本發(fā)明一優(yōu)選實施例,所述確定該超鏈接為黑鏈進一步包括
獲取該超鏈接的網(wǎng)頁內(nèi)容特征;將獲取的內(nèi)容特征與已挖掘出的惡意特征數(shù)據(jù)庫進行匹配,如果匹配得上,則確定該超鏈接為黑鏈。
根據(jù)本發(fā)明一優(yōu)選實施例,所述惡意特征數(shù)據(jù)庫中存儲有被識別為黑鏈的網(wǎng)頁的關(guān)鍵詞;所述將獲取的內(nèi)容特征與已挖掘出的惡意特征數(shù)據(jù)庫進行匹配具體包括將獲取的該超鏈接的網(wǎng)頁標(biāo)題title或網(wǎng)頁元信息Meta與所述惡意特征數(shù)據(jù)庫中存儲的關(guān)鍵詞進行匹配。根據(jù)本發(fā)明一優(yōu)選實施例,在確定出該超鏈接為黑鏈后,進一步包括從該黑鏈的網(wǎng)頁中進一步提取關(guān)鍵詞,將該關(guān)鍵詞存儲于惡意特征數(shù)據(jù)庫。根據(jù)本發(fā)明一優(yōu)選實施例,在所述步驟Al中,當(dāng)所述視覺特征參數(shù)為顏色設(shè)置參數(shù)時,對應(yīng)的不可見特征要求為該超鏈接的顏色設(shè)置參數(shù)與所述待檢測網(wǎng)頁背景顏色一致;或者,當(dāng)所述視覺特征參數(shù)為字體參數(shù)時,對應(yīng)的不可見特征要求為該超鏈接的字體參數(shù)的值小于或等于預(yù)設(shè)的字體參數(shù)閾值;或者,當(dāng)所述視覺特征參數(shù)為關(guān)鍵字位置參數(shù)時,對應(yīng)的不可見特征要求為該超鏈接的關(guān)鍵字位置在所述待檢測網(wǎng)頁的可見范圍之外;或者,當(dāng)所述視覺特征參數(shù)為鏈接展現(xiàn)參數(shù)時,對應(yīng)的不可見特征要求為該超鏈接以跑馬燈形式閃現(xiàn)或者不顯示。根據(jù)本發(fā)明一優(yōu)選實施例,所述惡意特征數(shù)據(jù)庫存儲有被確定為黑鏈的鏈接;該方法還包括從網(wǎng)頁庫中獲取超鏈接中包含了所述惡意特征數(shù)據(jù)庫中鏈接的網(wǎng)頁,對該網(wǎng)頁中的其他超鏈接逐一執(zhí)行所述黑鏈檢測流程,并將檢測出的黑鏈加入所述惡意特征數(shù)據(jù)庫;或者,從網(wǎng)頁庫中找出與所述惡意特征數(shù)據(jù)庫中鏈接的網(wǎng)頁相似度滿足預(yù)設(shè)相似度要求的網(wǎng)頁,將找出的網(wǎng)頁作為待檢測網(wǎng)頁轉(zhuǎn)至步驟Si處開始執(zhí)行,然后將檢測出的黑鏈加入所述惡意特征數(shù)據(jù)庫。一種檢測黑鏈的裝置,該裝置包括鏈接提取模塊,用于提取待檢測網(wǎng)頁的超鏈接,并將提取的超鏈接逐一提供給檢測模塊;檢測模塊,用于判斷超鏈接的視覺特征參數(shù)是否滿足預(yù)設(shè)的不可見特征要求,如果是,則將該超鏈接發(fā)送給黑鏈確定模塊;黑鏈確定模塊,用于將接收到的超鏈接確定為黑鏈。根據(jù)本發(fā)明一優(yōu)選實施例,該裝置還包括引用次數(shù)判斷模塊,用于在所述檢測模塊的判斷結(jié)果為否時,判斷該超鏈接的外鏈引用次數(shù)是否超過預(yù)設(shè)的次數(shù)閾值,如果是,則將該超鏈接發(fā)送給所述黑鏈確定模塊。根據(jù)本發(fā)明一優(yōu)選實施例,該裝置還包括白名單維護模塊,用于在所述引用次數(shù)判斷模塊的判斷結(jié)果為否時,將該超鏈接加入白名單數(shù)據(jù)庫。根據(jù)本發(fā)明一優(yōu)選實施例,該裝置還包括白名單判斷模塊,用于將所述待檢測網(wǎng)頁的網(wǎng)址與已有白名單數(shù)據(jù)庫進行匹配,如果匹配得上,則確定所述待檢測網(wǎng)頁不存在黑鏈;否則,觸發(fā)所述鏈接提取模塊。
根據(jù)本發(fā)明一優(yōu)選實施例,該裝置還包括惡意特征匹配模塊,用于獲取發(fā)送給所述黑鏈確定模塊的超鏈接,獲取該超鏈接的網(wǎng)頁內(nèi)容特征,將獲取的內(nèi)容特征與已挖掘出的惡意特征數(shù)據(jù)庫進行匹配,如果匹配得上,則將該超鏈接發(fā)送給所述黑鏈確定模塊。根據(jù)本發(fā)明一優(yōu)選實施例,所述惡意特征數(shù)據(jù)庫中存儲有被識別為黑鏈的網(wǎng)頁的關(guān)鍵詞;所述惡意特征匹配模塊在將獲取的內(nèi)容特征與已挖掘出的惡意特征數(shù)據(jù)庫進行匹配時,具體將獲取的該超鏈接的網(wǎng)頁標(biāo)題title或網(wǎng)頁元信息Meta與所述惡意特征數(shù)據(jù)庫中存儲的關(guān)鍵詞進行匹配。根據(jù)本發(fā)明一優(yōu)選實施例,該裝置還包括惡意特征庫維護模塊,用于在所述黑鏈確定模塊將該超鏈接確定黑鏈后,從該黑鏈的網(wǎng)頁中進一步提取關(guān)鍵詞,將該關(guān)鍵詞存儲于惡意特征數(shù)據(jù)庫。根據(jù)本發(fā)明一優(yōu)選實施例,在所述檢測模塊中,當(dāng)所述視覺特征參數(shù)為顏色設(shè)置參數(shù)時,采用的不可見特征要求為該超鏈接的顏色設(shè)置參數(shù)與所述待檢測網(wǎng)頁背景顏色一致;或者,當(dāng)所述視覺特征參數(shù)為字體參數(shù)時,采用的不可見特征要求為該超鏈接的字體參數(shù)的值小于或等于預(yù)設(shè)的字體參數(shù)閾值;或者,當(dāng)所述視覺特征參數(shù)為關(guān)鍵字位置參數(shù)時,采用的不可見特征要求為該超鏈接的關(guān)鍵字位置在所述待檢測網(wǎng)頁的可見范圍之外;或者,當(dāng)所述視覺特征參數(shù)為鏈接展現(xiàn)參數(shù)時,采用的不可見特征要求為該超鏈接以跑馬燈形式閃現(xiàn)或者不顯示。根據(jù)本發(fā)明一優(yōu)選實施例,所述惡意特征數(shù)據(jù)庫存儲有被確定為黑鏈的鏈接;該裝置還包括惡意特征庫挖掘模塊,用于從網(wǎng)頁庫中獲取超鏈接中包含了所述惡意特征數(shù)據(jù)庫中鏈接的網(wǎng)頁,將該網(wǎng)頁中的其他超鏈接逐一提供給所述檢測模塊,并將所述黑鏈確定模塊確定的黑鏈加入所述惡意特征數(shù)據(jù)庫;或者,從網(wǎng)頁庫中找出與所述惡意特征數(shù)據(jù)庫中鏈接的網(wǎng)頁相似度滿足預(yù)設(shè)相似度要求的網(wǎng)頁,將找出的網(wǎng)頁作為待檢測網(wǎng)頁提供給所述鏈接提取模塊,然后將所述黑鏈確定模塊確定的黑鏈加入所述惡意特征數(shù)據(jù)庫。由以上技術(shù)方案可以看出,本發(fā)明提供了一種自動實現(xiàn)黑鏈檢測的方式,無需手工操作,不再受限于網(wǎng)站管理員對黑鏈知識的掌握,由于本發(fā)明基于黑鏈的基本行為特性,即不可見的視覺特征,因此即便是新出現(xiàn)的黑鏈,只要滿足該基本行為特性均能夠及時有效地發(fā)現(xiàn)。
圖I為本發(fā)明實施例一提供的檢測黑鏈的方法流程圖;圖2為本發(fā)明實施例二提供的對超鏈接的視覺特征參數(shù)進行檢測的流程圖; 圖3為本發(fā)明實施例四提供的檢測黑鏈的裝置結(jié)構(gòu)圖。
具體實施方式為了使本發(fā)明的目的、技術(shù)方案和優(yōu)點更加清楚,下面結(jié)合附圖和具體實施例對本發(fā)明進行詳細(xì)描述。實施例一、圖I為本發(fā)明實施例一提供的檢測黑鏈的方法流程圖,如圖I所示,該方法可以包括以下步驟步驟101 :將待檢測網(wǎng)頁的網(wǎng)址與已有的白名單數(shù)據(jù)庫進行匹配,如果待檢測網(wǎng)頁存在于白名單數(shù)據(jù)庫中,則確定該待檢測網(wǎng)頁不存在黑鏈,結(jié)束流程;否則執(zhí)行步驟102。進行黑鏈檢測時,可以首先調(diào)用白名單數(shù)據(jù)庫進行檢測。在本發(fā)明實施例中可以預(yù)先將已經(jīng)確認(rèn)的沒有被掛黑鏈的網(wǎng)頁的url存儲在白名單數(shù)據(jù)庫中,該白名單數(shù)據(jù)庫可以是一個動態(tài)更新的數(shù)據(jù)庫,可以采用手工方式進行添加,也可以在本實施例步驟104中確定某超鏈接安全時,將該超鏈接加入白名單數(shù)據(jù)庫。本步驟用于提高黑鏈的檢測效率,并不是本發(fā)明的必要步驟。步驟102 :提取該待檢測網(wǎng)頁的超鏈接,逐一對獲取的超鏈接執(zhí)行步驟103至步驟106。針對待檢測網(wǎng)頁進行黑鏈檢測時,目的是為了檢測該待檢測網(wǎng)頁中是否被掛上了黑鏈,因此提取其中所有的超鏈接,逐一進行檢測。步驟103 :判斷超鏈接的視覺特征參數(shù)是否滿足預(yù)設(shè)的不可見特征要求,如果是,則確定該超鏈接為可疑鏈接,執(zhí)行步驟105 ;否則,執(zhí)行步驟104。經(jīng)觀察被掛的黑鏈通常都具有一些不可見特征,目的是為了不易被察覺,這些特征通過鏈接的視覺特征參數(shù)體現(xiàn),這些視覺特征參數(shù)包括但不限于顏色設(shè)置參數(shù)、字體參數(shù)、關(guān)鍵字位置參數(shù)、鏈接展現(xiàn)參數(shù)等中的一種或任意組合。當(dāng)視覺特征參數(shù)為顏色設(shè)置參數(shù)時,對應(yīng)的不可見特征要求可以為該超鏈接的顏色設(shè)置參數(shù)與待檢測網(wǎng)頁背景顏色一致。當(dāng)視覺特征參數(shù)為字體參數(shù)時,其中字體參數(shù)可以為字體大小和/或字體高度,對應(yīng)的不可見特征要求可以為該超鏈接的字體參數(shù)的值小于或等于預(yù)設(shè)字體參數(shù)閾值。例如,字體大小小于I像素,或者,字體高度小于I像素等。當(dāng)視覺特征參數(shù)為關(guān)鍵字位置參數(shù)時,關(guān)鍵字位置參數(shù)可以通過div標(biāo)簽中的left和top參數(shù)體現(xiàn),對應(yīng)的不可見特征要求可以為該超鏈接的關(guān)鍵字位置在待檢測網(wǎng)頁的可見范圍之外。當(dāng)視覺特征參數(shù)為鏈接展現(xiàn)參數(shù)時,鏈接展現(xiàn)參數(shù)可以為滾動文字(marquee)標(biāo)簽中的,此時對應(yīng)的不可見特征要求可以為該超鏈接以跑馬燈形式閃現(xiàn);鏈接展現(xiàn)參數(shù)還可以為顯示屬性(display)參數(shù),該參數(shù)可以是div標(biāo)簽中的、document, write中的或者javascript中的,此時對應(yīng)的不可見特征要求為該超鏈接不顯示。具體檢測將以實施例二為例進行描述。步驟104 :判斷該超鏈接的外鏈引用次數(shù)是否超過預(yù)設(shè)的次數(shù)閾值,如果是,則確定該超鏈接為可疑鏈接,執(zhí)行步驟105 ;否則將該超鏈接加入白名單數(shù)據(jù)庫,結(jié)束對該超鏈接的判斷流程。
在通過步驟103所述的檢測方式?jīng)]有確定出可疑鏈接時,還可以通過本步驟進行進一步的判斷,如果一個超鏈接被掛在其他網(wǎng)頁上的次數(shù),即外鏈引用次數(shù),超過預(yù)設(shè)的次數(shù)閾值,說明該超鏈接多次被掛在其他網(wǎng)頁上,這通常是不正常的現(xiàn)象,例如多個視頻或音頻等網(wǎng)頁上均掛了一個相同的賣藥的超鏈接,則該賣藥的超鏈接很有可能就是黑鏈。其中預(yù)設(shè)的次數(shù)閾值通常采用經(jīng)驗值。 優(yōu)選地,在判斷出該超鏈接的外鏈引用次數(shù)沒有超過預(yù)設(shè)的次數(shù)閾值時,可以進一步存在一個審核的步驟,待審核確認(rèn)后可以將該超鏈接加入白名單,從而避免誤報。步驟105 :獲取該超鏈接的網(wǎng)頁內(nèi)容特征。在確定出可疑鏈接時,為了提高檢測準(zhǔn)確性,可以進一步對該超鏈接進行基于內(nèi)容特征的檢測。本步驟中獲取的網(wǎng)頁內(nèi)容特征可以包括但不限于網(wǎng)頁標(biāo)題(title)、網(wǎng)頁元信息(Meta)等。步驟106 :將獲取的內(nèi)容特征與已挖掘出的惡意特征數(shù)據(jù)庫進行匹配,如果匹配得上,則確定該超鏈接為黑鏈。本發(fā)明實施例中惡意特征數(shù)據(jù)庫的形成可以通過手工的方式預(yù)先設(shè)置,也可以通過自動挖掘的方式形成。惡意特征數(shù)據(jù)庫中至少存儲有被識別為黑鏈的網(wǎng)頁的關(guān)鍵詞,該關(guān)鍵詞可以從網(wǎng)頁title和/或Meta中提取,關(guān)鍵詞用于在黑鏈檢測過程中將超鏈接的內(nèi)容特征與惡意特征數(shù)據(jù)庫進行匹配時使用,即將從超鏈接的網(wǎng)頁中提取的title或Meta與惡意特征數(shù)據(jù)庫中的關(guān)鍵詞進行匹配,如果匹配得上,則可以確認(rèn)該超鏈接為黑鏈,也就是說被檢測網(wǎng)頁存在黑鏈,如果沒有匹配上,則可以確認(rèn)該超鏈接為安全的鏈接。除此之外,惡意特征數(shù)據(jù)庫還可以存儲有被識別為黑鏈的網(wǎng)頁url,用于進行惡意特征數(shù)據(jù)庫的進一步挖掘,該過程將在實施例三中詳細(xì)描述。在此從確定出的黑鏈的網(wǎng)頁中進一步提取關(guān)鍵詞,將該關(guān)鍵詞存入惡意特征數(shù)據(jù)庫,并將該黑鏈存入惡意特征數(shù)據(jù)庫。在確定出黑鏈之后,可以將黑鏈和掛黑鏈的網(wǎng)頁(即待檢測網(wǎng)頁)進行上報。需要說明的是,上述步驟105和步驟106可以是進一步的過程,如果不需要足夠高的準(zhǔn)確度,也可以直接將可疑鏈接確定為黑鏈。實施例二、圖2為本發(fā)明實施例二提供的對超鏈接的視覺特征參數(shù)進行檢測的流程圖,如圖2所示,該流程可以具體包括以下步驟步驟201 :獲取超鏈接的顏色設(shè)置參數(shù)。步驟202 :判斷該顏色設(shè)置參數(shù)是否與被檢測網(wǎng)頁的網(wǎng)頁背景顏色設(shè)置一致,如果是,則確定該超鏈接為可疑鏈接;否則執(zhí)行步驟203。如果超鏈接的顏色設(shè)置與其被掛在的網(wǎng)頁背景顏色設(shè)置一致,這種情況該超鏈接不易被察覺,很有可能是黑鏈。這種黑鏈實現(xiàn)代碼為<a href = http://www. xxx. com/style = " color :#FFFFFF ;" > 關(guān)鍵字〈/a>步驟203 :獲取該超鏈接的字體大小(font-size)參數(shù)和字體高度(line-size)參數(shù)。本步驟是獲取超鏈接的字體參數(shù)。步驟204 :判斷font-size或line-size是否小于或等于I像素,如果是,則確定該超鏈接為可疑鏈接;否則執(zhí)行步驟205。
此處I像素 是采用的一個經(jīng)驗值,如果超鏈接的鏈接文字大小小于或等于I像素,則不易被察覺,很有可能為黑鏈。這種黑鏈實現(xiàn)代碼為<a herf = http://www. xxx. com/style = " font-size: Ipx ;" > 關(guān)鍵字 </a><a herf = http://www. xxx. com/style = " line-height: Ipx ; 〃 > 關(guān)鍵字 </a>步驟205 :獲取該超鏈接所對應(yīng)標(biāo)簽中的關(guān)鍵字位置參數(shù)。例如,獲取超鏈接所對應(yīng)div標(biāo)簽中的top和left參數(shù)。步驟206 :根據(jù)該關(guān)鍵字位置參數(shù)判斷該超鏈接是否位于被檢測網(wǎng)頁的可見范圍之外,如果是,確定該超鏈接為可疑鏈接;否則執(zhí)行步驟207。如果鏈接的關(guān)鍵字位于其鎖掛在的網(wǎng)頁可見范圍之外,則不易被察覺,很有可能為黑鏈,例如偏離屏幕左上角999像素,在屏幕上是顯示不到的,再例如如果其位置參數(shù)為一個較大的負(fù)值,在屏幕上也是顯示不到的。其黑鏈實現(xiàn)代碼為〈div style = " position:absolute ;top:_999px ;lefi:_999px ;" ><a herf = http://www. xxx. com〉關(guān)鍵詞 </a>〈/div>或者,〈div style = " position:absolute ;Ieft:expression_r(1-900) ;top:expression_r(3-999);" ><a href = http://www. xxx. com/〉關(guān)鍵字 </a>〈/div>步驟207 :獲取超鏈接所對應(yīng)的marquee標(biāo)簽中的鏈接展現(xiàn)參數(shù)。步驟208 :判斷該marquee標(biāo)簽中的鏈接展現(xiàn)參數(shù)是否為跑馬燈形式閃現(xiàn),如果是,則確定該超鏈接為可疑鏈接;否則執(zhí)行步驟209。如果marquee標(biāo)簽中的長度和高度參數(shù)為I或者0,則說明該超鏈接以跑馬燈形式閃現(xiàn),不易被察覺,很有可能是黑鏈。這種黑鏈實現(xiàn)代碼為〈marquee height = I width = I scrollamount = 3000 scrolldelay =20000><ahref = http://www. xxx. com> 關(guān)鍵詞 </a></marquee>除了從超鏈接的marquee標(biāo)簽直接判斷之外,還可以采用檢測超鏈接腳本(javascript)中marquee標(biāo)簽的方式來判斷,如果腳本中marquee標(biāo)簽指示調(diào)用跑馬燈形式閃現(xiàn),同樣確定為黑鏈。此種黑鏈實現(xiàn)代碼為〈script language = " javascript" type = " text/javascript" >document, write ( " 〈marquee scrolIAmount = 5000 width = ' I ' height=,5,〉");〈/script〉<div><a href = " http://www.xxx.com/" title ="關(guān)鍵字" > 關(guān)鍵字〈/a>〈script language = " javascript" type = " text/javascript" >document, write ("〈/marquee〉");〈/script〉步驟209 :獲取超鏈接所對應(yīng)標(biāo)簽的display參數(shù)。步驟210 :判斷display參數(shù)是否為none,如果是,則確定該超鏈接為可疑鏈接;否則,轉(zhuǎn)至實施例一中的步驟104。
其中display參數(shù)可以是div標(biāo)簽中的,如果div標(biāo)簽中出現(xiàn)display:none,則表明其屬性為不顯示,有可能該超鏈接為黑鏈。這種黑鏈的實現(xiàn)代碼為<a herf = http://www. xxx. com style = " display:none" > 關(guān)鍵詞 </a>或者〈div style = " display:none ;" ><a href = http://www. xxx. com/〉關(guān)鍵字 </a>〈/div>另外,display參數(shù)也可以該超鏈接的document, write中的,如果document.write中出現(xiàn)display:none,貝U表明其屬性為不顯示,有可能該超鏈接為黑鏈。這種黑鏈的實現(xiàn)代碼為〈script language = " javascript" type = " text/javascript" >document, write ("〈div style = ' display:none ;' >")</script><div><a href = http://www. xxx. com/〉關(guān)鍵字 </a>〈script language = " javascript" type = " text/javascript" >document, write (" </div>" ) ;</script)另外,display參數(shù)也可以該超鏈接的javascript中的,如果javascript中出現(xiàn)displaymone,則表明其屬性為不顯示,有可能該超鏈接為黑鏈。這種黑鏈的實現(xiàn)代碼為〈div id ="關(guān)鍵字"><a href = " http://www.xxx.com" > 關(guān)鍵字〈/a></div>〈script language = javascript)document. getElementByld (關(guān)鍵字)· style, display = " none "〈/script〉需要說明的是,本實施例中各步驟的實現(xiàn)可以采用其中的一種或任意組合的方式以任意順序?qū)崿F(xiàn),本實施例所示的僅是一種優(yōu)選實例。實施例三、在該實施例中主要對惡意特征數(shù)據(jù)庫的挖掘過程進行描述,首先說明惡意數(shù)據(jù)庫的挖掘來源,在此主要存在兩種來源第一種來源包含黑鏈的網(wǎng)頁中的其他超鏈接。如果確定出某鏈接為黑鏈,則說明掛了該鏈接的網(wǎng)頁存在漏洞,很有可能還掛有其他黑鏈,因此,可以從網(wǎng)頁庫中獲取超鏈接中包含了惡意特征數(shù)據(jù)庫中鏈接的網(wǎng)頁,該對該網(wǎng)頁中的其他超鏈接逐一執(zhí)行本發(fā)明實施例一中步驟103至步驟106所述的檢測黑鏈的方式來檢測其他超鏈接是否為黑鏈。當(dāng)然,如實施例一種所述,也可以僅采用步驟103的方式檢測黑鏈,也可以采用步驟103至步驟104檢測黑鏈。如果檢測到其他超鏈接中存在黑鏈,則將檢測出的黑鏈加入惡意特征數(shù)據(jù)庫。第二種來源從網(wǎng)頁庫中找出與惡意特征數(shù)據(jù)庫中的網(wǎng)頁相似度滿足預(yù)設(shè)相似度要求的網(wǎng)頁,將該網(wǎng)頁作為待檢測網(wǎng)頁執(zhí)行本發(fā)明實施例一所述的檢測方法來檢測該待檢測網(wǎng)頁中是否包含黑鏈,并將檢測出的黑鏈加入惡意特征數(shù)據(jù)庫。之所以采用這種挖掘來源,是因為攻擊者在掛黑鏈時通常會采用具有相似性的網(wǎng)頁。當(dāng)采用了上述惡意特征數(shù)據(jù)庫的挖掘方式之后,使本發(fā)明實施例提供的黑鏈檢測方法形成了一個迭代,可以利用惡意網(wǎng)頁數(shù)據(jù)庫對網(wǎng)頁進行檢測確定是否存在黑鏈,而對于挖掘到黑鏈的網(wǎng)頁又可以作為惡意網(wǎng)頁數(shù)據(jù)庫的挖掘來源或者作為特征從網(wǎng)頁庫中為惡意網(wǎng)頁數(shù)據(jù)庫中選取挖掘來源。以上是對本發(fā)明所提供的方法進行的描述,下面通過實施例四對本發(fā)明所提供的裝置進行詳細(xì)描述。實施例四、圖3為本發(fā)明實施例四提供的檢測黑鏈的裝置結(jié)構(gòu)圖,如圖3所示,該裝置包括鏈接提取模塊301、檢測模塊302以及黑 鏈確定模塊303。鏈接提取模塊301提取待檢測網(wǎng)頁的超鏈接,并將提取的超鏈接逐一提供給檢測模塊302。檢測模塊302判斷超鏈接的視覺特征參數(shù)是否滿足預(yù)設(shè)的不可見特征要求,如果是,則將該超鏈接發(fā)送給黑鏈確定模塊303。這些視覺特征參數(shù)包括但不限于顏色設(shè)置參數(shù)、字體參數(shù)、關(guān)鍵字位置參數(shù)、鏈接展現(xiàn)參數(shù)等中的一種或任意組合。在檢測模塊302中,當(dāng)視覺特征參數(shù)為顏色設(shè)置參數(shù)時,采用的不可見特征要求為該超鏈接的顏色設(shè)置參數(shù)與待檢測網(wǎng)頁背景顏色一致;或者,當(dāng)視覺特征參數(shù)為字體參數(shù)時,采用的不可見特征要求為該超鏈接的字體參數(shù)的值小于或等于預(yù)設(shè)的字體參數(shù)閾值;或者,當(dāng)視覺特征參數(shù)為關(guān)鍵字位置參數(shù)時,采用的不可見特征要求為該超鏈接的關(guān)鍵字位置在待檢測網(wǎng)頁的可見范圍之外;或者,當(dāng)視覺特征參數(shù)為鏈接展現(xiàn)參數(shù)時,采用的不可見特征要求為該超鏈接以跑馬燈形式閃現(xiàn)或者不顯示。黑鏈確定模塊303將接收到的超鏈接確定為黑鏈。除此之外,黑鏈確定模塊303可以進一步上報確定出的黑鏈以及被掛了黑鏈的網(wǎng)頁。為了提高檢測效率,該裝置還可以包括白名單判斷模塊300,在檢測開始時,該白名單判斷模塊300首先被調(diào)用,用于將待檢測網(wǎng)頁的網(wǎng)址與已有白名單數(shù)據(jù)庫進行匹配,如果匹配得上,則確定待檢測網(wǎng)頁不存在黑鏈;否則,觸發(fā)鏈接提取模塊301。在本發(fā)明實施例中可以預(yù)先將已經(jīng)確認(rèn)的沒有被掛黑鏈的網(wǎng)頁的url存儲在白名單數(shù)據(jù)庫中,該白名單數(shù)據(jù)庫可以是一個動態(tài)更新的數(shù)據(jù)庫。更進一步地,如果一個超鏈接被掛在其他網(wǎng)頁上的次數(shù),S卩外鏈引用次數(shù),超過預(yù)設(shè)的次數(shù)閾值,說明該超鏈接多次被掛在其他網(wǎng)頁上,這通常是不正常的現(xiàn)象,例如多個視頻或音頻等網(wǎng)頁上均掛了一個相同的賣藥的超鏈接,則該賣藥的超鏈接很有可能就是黑鏈。針對于此,該裝置還可以包括引用次數(shù)判斷模塊304,用于在檢測模塊302的判斷結(jié)果為否時,判斷該超鏈接的外鏈引用次數(shù)是否超過預(yù)設(shè)的次數(shù)閾值,如果是,則將該超鏈接發(fā)送給黑鏈確定模塊303。其中預(yù)設(shè)的次數(shù)閾值通常采用經(jīng)驗值。如果引用次數(shù)判斷模塊304的判斷結(jié)果為否,則說明該超鏈接安全,對于此,該裝置還可以包括白名單維護模塊305,用于在引用次數(shù)判斷模塊304的判斷結(jié)果為否時,將該超鏈接加入白名單數(shù)據(jù)庫。為了進一步提高檢測準(zhǔn)確性,該裝置還可以包括惡意特征匹配模塊306,用于獲取檢測模塊302以及引用次數(shù)判斷模塊304發(fā)送給黑鏈確定模塊303的超鏈接,獲取該超鏈接的網(wǎng)頁內(nèi)容特征,將獲取的內(nèi)容特征與已挖掘出的惡意特征數(shù)據(jù)庫進行匹配,如果匹配得上,則將該超鏈接發(fā)送給黑鏈確定模塊303。也就是說,檢測模塊302以及引用次數(shù)判斷模塊304經(jīng)過判斷后,如果判斷結(jié)果為是,可以首先確定該超鏈接為可疑鏈接,然后經(jīng)由惡意特征匹配模塊306的匹配之后,在進一步確定該可疑鏈接是否為黑鏈。其中,惡意特征數(shù)據(jù)庫中存儲有被識別為黑鏈的網(wǎng)頁的關(guān)鍵詞;此時,惡意特征匹 配模塊306在將獲取的內(nèi)容特征與已挖掘出的惡意特征數(shù)據(jù)庫進行匹配時,可以具體將獲取的該超鏈接的網(wǎng)頁title或Meta與惡意特征數(shù)據(jù)庫中存儲的關(guān)鍵詞進行匹配。另外,該裝置還可以包括惡意特征庫維護模塊307,用于在黑鏈確定模塊303將該超鏈接確定黑鏈后,從該黑鏈的網(wǎng)頁中進一步提取關(guān)鍵詞,將該關(guān)鍵詞存儲于惡意特征數(shù)據(jù)庫。上述惡意特征數(shù)據(jù)庫的形成可以通過手工的方式預(yù)先設(shè)置,也可以通過自動挖掘的方式形成。惡意特征數(shù)據(jù)庫存儲有被確定為黑鏈的鏈接,為了實現(xiàn)惡意特征數(shù)據(jù)庫的挖掘,該裝置還包括惡意特征庫挖掘模塊308,從網(wǎng)頁庫中獲取超鏈接中包含了惡意特征數(shù)據(jù)庫中鏈接的網(wǎng)頁,將該網(wǎng)頁中的其他超鏈接逐一提供給檢測模塊302,并將黑鏈確定模塊303確定的黑鏈加入惡意特征數(shù)據(jù)庫;或者,從網(wǎng)頁庫中找出與惡意特征數(shù)據(jù)庫中鏈接的網(wǎng)頁相似度滿足預(yù)設(shè)相似度要求的網(wǎng)頁,將找出的網(wǎng)頁作為待檢測網(wǎng)頁提供給鏈接提取模塊301,然后將黑鏈確定模塊303確定的黑鏈加入惡意特征數(shù)據(jù)庫。在采用本發(fā)明的上述實施例檢測出黑鏈以及被掛了黑鏈的網(wǎng)頁之后,可以方便對被掛了黑鏈的網(wǎng)頁進行漏洞掃描和安全加固。例如,可以進行端口掃描、系統(tǒng)漏洞掃描或web安全漏洞掃描等等。具體的漏洞掃描和安全加固方式本發(fā)明并不加以限制。由以上描述可以看出,本發(fā)明提供的方法和裝置具備以下優(yōu)點I)能夠自動實現(xiàn)黑鏈的檢測,無需手工操作,不再受限于網(wǎng)站管理員對黑鏈知識的掌握。2)本發(fā)明基于黑鏈的基本行為特性,即不可見的視覺特征,因此即便是新出現(xiàn)的黑鏈,只要滿足該基本行為特性均能夠及時有效地發(fā)現(xiàn)。3)對于基于不可見的視覺特性無法檢測出的黑鏈,能夠進一步采用基于外鏈引用次數(shù)的判別方式,從而提高黑鏈檢測的覆蓋率。4)在基于不可見的視覺特性和外鏈引用次數(shù)的判別方式之外,進一步對可疑的超鏈接進行基于惡意特征數(shù)據(jù)庫的匹配,從而提高黑鏈的檢測正確率。5)本發(fā)明還額外提供了惡意特征數(shù)據(jù)庫的挖掘方式,這種挖掘方式使黑鏈檢測方法形成了一個迭代,從而使得黑鏈檢測更加趨近于豐富和高覆蓋率。以上所述僅為本發(fā)明的較佳實施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所做的任何修改、等同替換、改進等,均應(yīng)包含在本發(fā)明保護的范圍之內(nèi)。
權(quán)利要求
1.一種檢測黑鏈的方法,其特征在于,該方法包括 Si、提取待檢測網(wǎng)頁的超鏈接,逐一對獲取的超鏈接執(zhí)行黑鏈檢測流程 所述黑鏈檢測流程包括Al、判斷超鏈接的視覺特征參數(shù)是否滿足預(yù)設(shè)的不可見特征要求,如果是,則確定該超鏈接為黑鏈。
2.根據(jù)權(quán)利要求I所述的方法,其特征在于,在所述黑鏈檢測流程的步驟Al中,如果判斷結(jié)果為否,則進一步執(zhí)行步驟A2 A2、判斷該超鏈接的外鏈引用次數(shù)是否超過預(yù)設(shè)的次數(shù)閾值,如果是,則確定該超鏈接為黑鏈。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,如果所述A2的判斷結(jié)果為否,則將該超鏈接加入白名單數(shù)據(jù)庫,結(jié)束對該超鏈接的黑鏈檢測流程。
4.根據(jù)權(quán)利要求I或3所述的方法,其特征在于,在所述步驟SI之前還包括 SO、將所述待檢測網(wǎng)頁的網(wǎng)址與已有的白名單數(shù)據(jù)庫進行匹配,如果匹配得上,則確定所述待檢測網(wǎng)頁不存在黑鏈,結(jié)束流程;否則繼續(xù)執(zhí)行所述步驟SI。
5.根據(jù)權(quán)利要求I或2所述的方法,其特征在于,所述確定該超鏈接為黑鏈進一步包括 獲取該超鏈接的網(wǎng)頁內(nèi)容特征; 將獲取的內(nèi)容特征與已挖掘出的惡意特征數(shù)據(jù)庫進行匹配,如果匹配得上,則確定該超鏈接為黑鏈。
6.根據(jù)權(quán)利要求5所述的方法,其特征在于,所述惡意特征數(shù)據(jù)庫中存儲有被識別為黑鏈的網(wǎng)頁的關(guān)鍵詞; 所述將獲取的內(nèi)容特征與已挖掘出的惡意特征數(shù)據(jù)庫進行匹配具體包括將獲取的該超鏈接的網(wǎng)頁標(biāo)題title或網(wǎng)頁元信息Meta與所述惡意特征數(shù)據(jù)庫中存儲的關(guān)鍵詞進行匹配。
7.根據(jù)權(quán)利要求6所述的方法,其特征在于,在確定出該超鏈接為黑鏈后,進一步包括從該黑鏈的網(wǎng)頁中進一步提取關(guān)鍵詞,將該關(guān)鍵詞存儲于惡意特征數(shù)據(jù)庫。
8.根據(jù)權(quán)利要求I所述的方法,其特征在于,在所述步驟Al中,當(dāng)所述視覺特征參數(shù)為顏色設(shè)置參數(shù)時,對應(yīng)的不可見特征要求為該超鏈接的顏色設(shè)置參數(shù)與所述待檢測網(wǎng)頁背景顏色一致;或者, 當(dāng)所述視覺特征參數(shù)為字體參數(shù)時,對應(yīng)的不可見特征要求為該超鏈接的字體參數(shù)的值小于或等于預(yù)設(shè)的字體參數(shù)閾值;或者, 當(dāng)所述視覺特征參數(shù)為關(guān)鍵字位置參數(shù)時,對應(yīng)的不可見特征要求為該超鏈接的關(guān)鍵字位置在所述待檢測網(wǎng)頁的可見范圍之外;或者, 當(dāng)所述視覺特征參數(shù)為鏈接展現(xiàn)參數(shù)時,對應(yīng)的不可見特征要求為該超鏈接以跑馬燈形式閃現(xiàn)或者不顯示。
9.根據(jù)權(quán)利要求5所述的方法,其特征在于,所述惡意特征數(shù)據(jù)庫存儲有被確定為黑鏈的鏈接; 該方法還包括從網(wǎng)頁庫中獲取超鏈接中包含了所述惡意特征數(shù)據(jù)庫中鏈接的網(wǎng)頁,對該網(wǎng)頁中的其他超鏈接逐一執(zhí)行所述黑鏈檢測流程,并將檢測出的黑鏈加入所述惡意特征數(shù)據(jù)庫;或者,從網(wǎng)頁庫中找出與所述惡意特征數(shù)據(jù)庫中鏈接的網(wǎng)頁相似度滿足預(yù)設(shè)相似度要求的網(wǎng)頁,將找出的網(wǎng)頁作為待檢測網(wǎng)頁轉(zhuǎn)至步驟Si處開始執(zhí)行,然后將檢測出的黑鏈加入所述惡意特征數(shù)據(jù)庫。
10.一種檢測黑鏈的裝置,其特征在于,該裝置包括 鏈接提取模塊,用于提取待檢測網(wǎng)頁的超鏈接,并將提取的超鏈接逐一提供給檢測模塊; 檢測模塊,用于判斷超鏈接的視覺特征參數(shù)是否滿足預(yù)設(shè)的不可見特征要求,如果是,則將該超鏈接發(fā)送給黑鏈確定模塊; 黑鏈確定模塊,用于將接收到的超鏈接確定為黑鏈。
11.根據(jù)權(quán)利要求10所述的裝置,其特征在于,該裝置還包括引用次數(shù)判斷模塊,用于在所述檢測模塊的判斷結(jié)果為否時,判斷該超鏈接的外鏈引用次數(shù)是否超過預(yù)設(shè)的次數(shù)閾值,如果是,則將該超鏈接發(fā)送給所述黑鏈確定模塊。
12.根據(jù)權(quán)利要求11所述的裝置,其特征在于,該裝置還包括白名單維護模塊,用于在所述引用次數(shù)判斷模塊的判斷結(jié)果為否時,將該超鏈接加入白名單數(shù)據(jù)庫。
13.根據(jù)權(quán)利要求10或12所述的裝置,其特征在于,該裝置還包括白名單判斷模塊,用于將所述待檢測網(wǎng)頁的網(wǎng)址與已有白名單數(shù)據(jù)庫進行匹配,如果匹配得上,則確定所述待檢測網(wǎng)頁不存在黑鏈;否則,觸發(fā)所述鏈接提取模塊。
14.根據(jù)權(quán)利要求10或11所述的裝置,其特征在于,該裝置還包括惡意特征匹配模塊,用于獲取發(fā)送給所述黑鏈確定模塊的超鏈接,獲取該超鏈接的網(wǎng)頁內(nèi)容特征,將獲取的內(nèi)容特征與已挖掘出的惡意特征數(shù)據(jù)庫進行匹配,如果匹配得上,則將該超鏈接發(fā)送給所述黑鏈確定模塊。
15.根據(jù)權(quán)利要求14所述的裝置,其特征在于,所述惡意特征數(shù)據(jù)庫中存儲有被識別為黑鏈的網(wǎng)頁的關(guān)鍵詞; 所述惡意特征匹配模塊在將獲取的內(nèi)容特征與已挖掘出的惡意特征數(shù)據(jù)庫進行匹配時,具體將獲取的該超鏈接的網(wǎng)頁標(biāo)題title或網(wǎng)頁元信息Meta與所述惡意特征數(shù)據(jù)庫中存儲的關(guān)鍵詞進行匹配。
16.根據(jù)權(quán)利要求15所述的裝置,其特征在于,該裝置還包括惡意特征庫維護模塊,用于在所述黑鏈確定模塊將該超鏈接確定黑鏈后,從該黑鏈的網(wǎng)頁中進一步提取關(guān)鍵詞,將該關(guān)鍵詞存儲于惡意特征數(shù)據(jù)庫。
17.根據(jù)權(quán)利要求10所述的裝置,其特征在于,在所述檢測模塊中,當(dāng)所述視覺特征參數(shù)為顏色設(shè)置參數(shù)時,采用的不可見特征要求為該超鏈接的顏色設(shè)置參數(shù)與所述待檢測網(wǎng)頁背景顏色一致;或者, 當(dāng)所述視覺特征參數(shù)為字體參數(shù)時,采用的不可見特征要求為該超鏈接的字體參數(shù)的值小于或等于預(yù)設(shè)的字體參數(shù)閾值;或者, 當(dāng)所述視覺特征參數(shù)為關(guān)鍵字位置參數(shù)時,采用的不可見特征要求為該超鏈接的關(guān)鍵字位置在所述待檢測網(wǎng)頁的可見范圍之外;或者, 當(dāng)所述視覺特征參數(shù)為鏈接展現(xiàn)參數(shù)時,采用的不可見特征要求為該超鏈接以跑馬燈形式閃現(xiàn)或者不顯示。
18.根據(jù)權(quán)利要求14所述的裝置,其特征在于,所述惡意特征數(shù)據(jù)庫存儲有被確定為黑鏈的鏈接;該裝置還包括惡意特征庫挖掘模塊,用于從網(wǎng)頁庫中獲取超鏈接中包含了所述惡意特征數(shù)據(jù)庫中鏈接的網(wǎng)頁,將該網(wǎng)頁中的其他超鏈接逐一提供給所述檢測模塊,并將所述黑鏈確定模塊確定的黑鏈加入所述惡意特征數(shù)據(jù) 庫;或者,從網(wǎng)頁庫中找出與所述惡意特征數(shù)據(jù)庫中鏈接的網(wǎng)頁相似度滿足預(yù)設(shè)相似度要求的網(wǎng)頁,將找出的網(wǎng)頁作為待檢測網(wǎng)頁提供給所述鏈接提取模塊,然后將所述黑鏈確定模塊確定的黑鏈加入所述惡意特征數(shù)據(jù)庫。
全文摘要
本發(fā)明提供了一種檢測黑鏈的方法和裝置,其中方法包括提取待檢測網(wǎng)頁的超鏈接,逐一對獲取的超鏈接執(zhí)行黑鏈檢測流程,所述黑鏈檢測流程包括判斷超鏈接的視覺特征參數(shù)是否滿足預(yù)設(shè)的不可見特征要求,如果是,則確定該超鏈接為黑鏈,并進一步可以結(jié)合外鏈引用次數(shù)和惡意特征數(shù)據(jù)庫的檢測方式,自動實現(xiàn)黑鏈檢測,無需手工操作,不再受限于網(wǎng)頁管理員對黑鏈知識的掌握,對于新出現(xiàn)的黑鏈也能夠及時有效地發(fā)現(xiàn)。
文檔編號G06F21/00GK102622435SQ20121004949
公開日2012年8月1日 申請日期2012年2月29日 優(yōu)先權(quán)日2012年2月29日
發(fā)明者周向榮 申請人:百度在線網(wǎng)絡(luò)技術(shù)(北京)有限公司