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