本發(fā)明涉及互聯(lián)網(wǎng)網(wǎng)站分類領(lǐng)域,特別涉及一種基于網(wǎng)絡(luò)關(guān)系圖的網(wǎng)站分類方法。
背景技術(shù):
互聯(lián)網(wǎng)是一個開放式的共享平臺,隨著互聯(lián)網(wǎng)不斷發(fā)展,網(wǎng)頁規(guī)模不斷擴(kuò)大,各類網(wǎng)頁不斷涌現(xiàn)。傳統(tǒng)的網(wǎng)絡(luò)安全機(jī)構(gòu)通常采用人工審核系統(tǒng)判定和啟發(fā)式爬蟲自動識別兩種方式對不斷涌現(xiàn)的網(wǎng)站進(jìn)行分類。但無論是哪種方式,都面臨著嚴(yán)峻的挑戰(zhàn)。首先,不斷擴(kuò)張的網(wǎng)頁數(shù)據(jù)規(guī)模使現(xiàn)有的技術(shù)很難覆蓋所有的網(wǎng)頁,數(shù)據(jù)的處理速度遠(yuǎn)遠(yuǎn)跟不上網(wǎng)頁的更新速度。人工審核的弊端體現(xiàn)在分類的效果依賴于審核人員的業(yè)務(wù)能力、處理周期相對比較長。其次,惡意網(wǎng)址往往存活周期短、隱匿性強(qiáng),通常會因為該網(wǎng)站的特征不夠明顯導(dǎo)致誤分類。
網(wǎng)站分類引擎主要用于對網(wǎng)站進(jìn)行分類,需要對數(shù)以億計的網(wǎng)站進(jìn)行特征識別。網(wǎng)站大體分為正規(guī)經(jīng)營網(wǎng)站和惡意網(wǎng)站兩種類型。對于正規(guī)經(jīng)營的網(wǎng)站,對網(wǎng)站進(jìn)行功能分類和行業(yè)分類,有助于企業(yè)挖掘優(yōu)質(zhì)的用戶,也有助于設(shè)計良好的網(wǎng)站推薦系統(tǒng)或建立健全的網(wǎng)絡(luò)社區(qū)。以功能分類,分為新聞媒體、社交網(wǎng)絡(luò)、網(wǎng)址導(dǎo)航、人才招聘及投資金融等。以行業(yè)分類,分為旅游行業(yè)、教育行業(yè)、醫(yī)療行業(yè)及電子商務(wù)等。對于惡意網(wǎng)站,網(wǎng)站分類能夠?qū)阂饩W(wǎng)站通過相關(guān)渠道進(jìn)行有效攔截,從而避免網(wǎng)民受騙。以安全聯(lián)盟的惡意數(shù)據(jù)共享平臺為例,其攔截(提醒)渠道包括電信運營商、瀏覽器、搜索引擎、聊天工具及搜索引擎等,有效預(yù)防網(wǎng)民上當(dāng)受騙。以惡意類型分類,則分為博彩、欺詐、釣魚、色情及被黑等。
傳統(tǒng)的網(wǎng)站分類引擎除了深度包檢測方法、基于機(jī)器學(xué)習(xí)的方法,還有基于這些方法改進(jìn)的方法。傳統(tǒng)的學(xué)習(xí)分類方法主要分為這幾個部分:1)收集樣本URL;2)利用爬蟲工具爬取網(wǎng)頁內(nèi)容或網(wǎng)站標(biāo)題;3)對內(nèi)容進(jìn)行分詞;4)對分詞結(jié)果做詞頻分析;5)對樣本數(shù)據(jù)進(jìn)行分類,提取不同類型的網(wǎng)站的特征;6)根據(jù)這些特征和提取的網(wǎng)站信息對網(wǎng)站進(jìn)行聚類分析;7)提取新的特征;8)循環(huán)3)至7)。改進(jìn)的學(xué)習(xí)算法也有很多,比如一種自學(xué)習(xí)的輕量學(xué)習(xí)算法,它引入了訪問關(guān)系的概念,從已有的惡意網(wǎng)頁集合出發(fā),自動發(fā)現(xiàn)可信度低的用戶和對應(yīng)的訪問關(guān)系。結(jié)合可信度低的用戶訪問惡意網(wǎng)址的可能性較高的特點,重點追蹤這類用戶的訪問習(xí)慣,提高惡意網(wǎng)頁的檢測效果,相比于簡單的機(jī)器學(xué)習(xí)方法,大幅降低平均檢測時間,提升處理效率。
上述網(wǎng)站分類方法分為傳統(tǒng)的機(jī)器學(xué)習(xí)方法和改進(jìn)的機(jī)器學(xué)習(xí)方法。傳統(tǒng)的機(jī)器學(xué)習(xí)方法面臨著網(wǎng)頁的總量呈幾何級增長的問題,改進(jìn)的機(jī)器學(xué)習(xí)方法通過構(gòu)建用戶與被訪問網(wǎng)站的訪問關(guān)系能夠有效地提高檢測效率。然而,這種輕量級的學(xué)習(xí)方法也帶來了一個新的局限,它必須依靠獲取用戶的訪問關(guān)系來解決問題。首先必須獲取用戶的訪問記錄日志,因此,它只能局限在一個局域網(wǎng)來區(qū)分網(wǎng)站是否惡意,并且需要調(diào)取網(wǎng)站的訪問記錄日志。對于局域網(wǎng)的用戶,他們的行為習(xí)慣往往有很大的共性,也帶來了訪問視野的局限性。其次,由于這種方法依靠用戶的行為進(jìn)行分析,僅能區(qū)分網(wǎng)站是否惡意,要區(qū)分該網(wǎng)站屬于何種惡意類型,也很難做到。更難以對一般網(wǎng)站進(jìn)行分類。
在傳統(tǒng)的機(jī)器學(xué)習(xí)算法的基礎(chǔ)上,構(gòu)建新型的網(wǎng)站分類引擎,以解決網(wǎng)站分類的效率問題,又盡量不帶來新的局限,這樣才能更好地服務(wù)于互聯(lián)網(wǎng)安全。
相關(guān)術(shù)語:
分類器:在機(jī)器學(xué)習(xí)領(lǐng)域,分類的目標(biāo)是指將具有相似特征的對象聚集。而一個線性分類器則透過特征的線性組合來做出分類決定,以達(dá)到此種目的。對象的特征通常被描述為特征值,在向量中則描述為特征向量。
樸素貝葉斯分類器:在機(jī)器學(xué)習(xí)中,樸素貝葉斯分類器是一系列以假設(shè)特征之間強(qiáng)(樸素)獨立下運用貝葉斯定理為基礎(chǔ)的簡單概率分類器。
訓(xùn)練集:在機(jī)器學(xué)習(xí)中,一般將樣本分成獨立的三部分,訓(xùn)練集、驗證集和測試集。其中,訓(xùn)練集用于建立模型。
圖聚類:圖聚類是指把圖中相對連接緊密的結(jié)點及其相關(guān)的邊分組形成一個可以用一個抽象結(jié)點表示的子圖。子圖內(nèi)各結(jié)點具有較高的相似性,而子圖之間各結(jié)點的相似性較低。圖聚類有很多不同的方式,比較具代表性的有:M arkov聚類、譜聚類和基于密度的聚類。
技術(shù)實現(xiàn)要素:
本發(fā)明所要解決的技術(shù)問題是提供一種基于網(wǎng)絡(luò)關(guān)系圖的網(wǎng)站分類方法,以傳統(tǒng)的學(xué)習(xí)分類算法為依托,通過提取網(wǎng)站頁面的外站鏈接,構(gòu)建帶權(quán)重的網(wǎng)絡(luò)關(guān)系圖。各計算單元通過相互之間并不復(fù)雜的數(shù)據(jù)交互,在不影響分類效果的前提下,有效地提升網(wǎng)站分類的計算性能。
為解決上述技術(shù)問題,本發(fā)明采用的技術(shù)方案是:
一種基于網(wǎng)絡(luò)關(guān)系圖的網(wǎng)站分類方法,包括以下步驟:
步驟1:以“安全聯(lián)盟”的惡意數(shù)據(jù)作為樣本數(shù)據(jù)源,獲取已有的數(shù)據(jù)分類和URL數(shù)據(jù);
步驟2:通過抽取樣本數(shù)據(jù)的外站鏈接和分詞器處理,形成站點映射表和詞頻分析表;利用站點指紋特征提取器提取樣本指紋特征,構(gòu)建特征表,通過抽取各指紋特征集形成類型表;
步驟3:由各站點和其連接權(quán)重構(gòu)成一個無向權(quán)重圖,各站點作為網(wǎng)絡(luò)圖的節(jié)點,初始權(quán)重由相互之間的頁面鏈接的緊密程度來確定;
步驟4:眾多的站點和權(quán)重構(gòu)成一個網(wǎng)絡(luò)關(guān)系圖,通過圖聚類算法把一個大圖分成若干個子圖;即將各子圖中的節(jié)點數(shù)統(tǒng)計出來,在分發(fā)隊列里存儲子圖ID和其對應(yīng)的節(jié)點數(shù),根據(jù)子圖的大小平均地把各子圖分發(fā)到不同的服務(wù)器上進(jìn)行計算;
步驟5:各任務(wù)單元在各自的服務(wù)器上通過站點指紋特征提取器和分類器來抽取指紋特征并分類。
進(jìn)一步的,所述步驟5具體為:基于樣本特征得到新的站點數(shù)據(jù)和指紋特征,劃分訓(xùn)練集,每個子訓(xùn)練集通過分類器得到分類結(jié)果,把這些數(shù)據(jù)存儲到相應(yīng)的表中。
進(jìn)一步的,還包括存儲各站點的特征詞匯、頻率和分類列表。
進(jìn)一步的,還包括根據(jù)分類結(jié)果中的特征值和權(quán)重系數(shù),更新整個關(guān)系圖的連接權(quán)重;對于新增的外站鏈接站點和其它來源的站點,在各任務(wù)處理單元處理時,添加到數(shù)據(jù)預(yù)處理隊列中進(jìn)行處理。
進(jìn)一步的,還包括重復(fù)前述步驟步驟1至步驟5,各數(shù)據(jù)分類結(jié)果構(gòu)成一套在每次迭代之后都不斷更新的網(wǎng)絡(luò)關(guān)系圖。
進(jìn)一步的,還包括在分類結(jié)果的基礎(chǔ)上,結(jié)合白名單數(shù)據(jù)表和傳統(tǒng)大站點的類型表對分類結(jié)果進(jìn)一步處理,避免特殊因素影響分類結(jié)果。
與現(xiàn)有技術(shù)相比,本發(fā)明的有益效果是:
本發(fā)明顯著地提高網(wǎng)站分類的檢測速度,區(qū)分具體類型。對于不斷新增的站點,并不是作為一個單獨的個體進(jìn)入訓(xùn)練集,而是依據(jù)其與現(xiàn)有的連接關(guān)系來確定處理單元,有效地減少了計算復(fù)雜度以及訓(xùn)練的迭代次數(shù),節(jié)省了計算資源。
區(qū)域分層檢測有效地分割檢測的范圍,實現(xiàn)局部同時計算,進(jìn)而提升檢測性能。同時,對于分割的部分,又通過分類結(jié)果更新網(wǎng)絡(luò)圖的邊權(quán)重,重組網(wǎng)絡(luò)圖再次進(jìn)行圖聚類,檢測效果相比于傳統(tǒng)的檢測方法不會有明顯的減弱。
本發(fā)明方法既可應(yīng)用于一般網(wǎng)站的行業(yè)分類處理,也可檢測惡意站點,區(qū)分站點的惡意類型。相比于傳統(tǒng)的分類引擎,只增加了圖聚類這一環(huán)節(jié),基于傳統(tǒng)的分類引擎作優(yōu)化,改動不大,卻可達(dá)到更好的效果。
在基本不影響分類準(zhǔn)確性和檢測精細(xì)度的情況下,還能有效提升檢測性能,是一種比較有實用價值的分類引擎。
附圖說明
圖1是本發(fā)明一種基于網(wǎng)絡(luò)關(guān)系圖的網(wǎng)站分類方法各模塊示意圖。
具體實施方式
下面結(jié)合附圖和具體實施方式對本發(fā)明作進(jìn)一步詳細(xì)的說明。本發(fā)明分類方法分為三大部分:數(shù)據(jù)收集及邏輯處理、數(shù)據(jù)表維護(hù)、特征提取及分類。本發(fā)明的核心在于充分利用站點網(wǎng)絡(luò)關(guān)系圖在分類過程中的重要作用。本發(fā)明方法處理流程具體為:
1、訓(xùn)練數(shù)據(jù)的收集及數(shù)據(jù)預(yù)處理
以“安全聯(lián)盟”的惡意數(shù)據(jù)作為樣本數(shù)據(jù)源,獲取已有的數(shù)據(jù)分類和URL數(shù)據(jù)。該方法不僅要能處理系統(tǒng)內(nèi)的站點,如已有的樣本數(shù)據(jù)源和這些站點頁面上爬取到的新站點,還需要處理系統(tǒng)外的隨時可能從其它來源獲取到的需要分類的站點。
2、數(shù)據(jù)抽取及分詞處理
通過抽取樣本數(shù)據(jù)的外站鏈接和分詞器處理,形成站點映射表和詞頻分析表;利用站點指紋特征提取器提取樣本指紋特征,構(gòu)建特征表;通過抽取各指紋特征集形成類型表(惡意類型或行業(yè)類型等)。特別的,需要有效地維護(hù)這幾張表,形成一整套數(shù)據(jù)集。各站點指向一個或多個(原則上不超過三個)類型。
3、網(wǎng)絡(luò)關(guān)系圖構(gòu)建及處理
由各站點和其連接權(quán)重構(gòu)成一個無向權(quán)重圖。各站點作為網(wǎng)絡(luò)圖的節(jié)點,初始權(quán)重由相互之間的頁面鏈接的緊密程度來確定。兩個對象之間的相異度是這兩個對象差異程度的數(shù)值化度量,對象越相似,它們的相異度就越低。眾多的站點和權(quán)重構(gòu)成一個網(wǎng)絡(luò)關(guān)系圖,通過圖聚類算法計算,把一個大圖分成若干個子圖。各子圖中的節(jié)點數(shù)可以統(tǒng)計出來,在分發(fā)隊列里存儲子圖ID和其對應(yīng)的節(jié)點數(shù),根據(jù)子圖的大小盡量平均的把各子圖分發(fā)到不同的服務(wù)器(任務(wù)處理單元)中進(jìn)行計算。各任務(wù)處理單元可以相對獨立地處理各自的任務(wù)。
4、特征提取及分類
各任務(wù)處理單元在各自的服務(wù)器上通過站點指紋特征提取器和分類器來抽取指紋特征并分類?;跇颖咎卣鞯玫叫碌恼军c數(shù)據(jù)和指紋特征,劃分訓(xùn)練集,每個子訓(xùn)練集通過分類器得到分類結(jié)果,把這些數(shù)據(jù)存儲到相應(yīng)的表中。同時,存儲各站點的特征詞匯,頻率及分類列表等。處理好各單元的任務(wù)之后,根據(jù)分類結(jié)果表中的特征值和權(quán)重系數(shù),更新整個關(guān)系圖的連接權(quán)重。對于新增的外站鏈接站點和其它來源的站點,在各任務(wù)處理單元處理時,添加到數(shù)據(jù)預(yù)處理隊列中處理。各任務(wù)處理單元完成任務(wù)時,形成一套新的網(wǎng)絡(luò)圖。
5、迭代計算及結(jié)果集成
重復(fù)步驟1到步驟4的整個過程,各數(shù)據(jù)結(jié)果表構(gòu)成一套在每次迭代之后都不斷更新的網(wǎng)絡(luò)關(guān)系圖,該關(guān)系圖的節(jié)點之間的權(quán)重不僅與相互之間的頁面連接關(guān)系有關(guān),還與各類型的特征指紋相關(guān),并隨著迭代次數(shù)的增多,特征指紋的影響系數(shù)越大,分類的結(jié)果也就越準(zhǔn)確。最后,對分類結(jié)果進(jìn)行處理,結(jié)合白名單數(shù)據(jù)表和傳統(tǒng)大站點的類型表等(均可擴(kuò)展)對分類結(jié)果進(jìn)一步處理,避免一些特殊因素影響分類結(jié)果。