999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

一種基于改進(jìn)的樸素貝葉斯算法的Android釣魚網(wǎng)站檢測方案

2018-08-23 02:58:02朱二周
關(guān)鍵詞:檢測

馬 剛,劉 鋒,朱二周

(安徽大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,安徽 合肥 230601)

1 引言

根據(jù)數(shù)據(jù)顯示,2015年中國移動(dòng)互聯(lián)網(wǎng)用戶數(shù)量達(dá)到了8.1億人,較2014年增長了近8.4%。預(yù)計(jì)到達(dá)2016年,中國移動(dòng)互聯(lián)網(wǎng)用戶數(shù)量將達(dá)到9.2億人。從智能手機(jī)的用戶數(shù)量可以看出,我國的移動(dòng)互聯(lián)網(wǎng)規(guī)模巨大,并在迅速發(fā)展中。但是,在移動(dòng)互聯(lián)網(wǎng)快速發(fā)展的同時(shí),針對移動(dòng)網(wǎng)絡(luò)攻擊和詐騙的現(xiàn)象時(shí)有發(fā)生。

網(wǎng)絡(luò)釣魚攻擊[1]是一種通過模擬正常網(wǎng)站的界面,誘騙用戶輸入用戶名和密碼等信息,從而達(dá)到盜取用戶賬號信息的目的。當(dāng)前,對于PC端的網(wǎng)絡(luò)釣魚攻擊已經(jīng)有了較好的防御和保護(hù)手段,但針對移動(dòng)端攻擊的檢測手段和方法還不是很健全。

當(dāng)前,對網(wǎng)頁釣魚攻擊檢測方法的研究主要包括基于黑名單的檢測、基于機(jī)器學(xué)習(xí)的檢測、基于啟發(fā)式的檢測和基于視覺相似的檢測[2]等四類。基于黑名單的檢測[2]技術(shù)主要根據(jù)知名IT企業(yè)提供的釣魚網(wǎng)站黑名單進(jìn)行檢測。基于黑名單的檢測技術(shù)雖然正確率很高,但是沒辦法檢測不在黑名單內(nèi)的釣魚網(wǎng)站。與此同時(shí),由于確認(rèn)黑名單需要人工驗(yàn)證,故需花費(fèi)大量的人力和時(shí)間等。基于機(jī)器學(xué)習(xí)[3,4]的檢測技術(shù)主要通過選擇釣魚網(wǎng)站URL的特征,以此來生成訓(xùn)練數(shù)據(jù),構(gòu)造分類器進(jìn)行檢測。在這種方法中,URL特征的選取和分類器的構(gòu)建是非常關(guān)鍵的因素。基于啟發(fā)式的檢測[2]技術(shù)主要根據(jù)網(wǎng)站存在的異常特征超出了設(shè)定的閾值和不合乎常規(guī)的訪問等方式來對釣魚網(wǎng)站進(jìn)行判斷。基于視覺相似的檢測[2,3]技術(shù)利用釣魚網(wǎng)站與真實(shí)網(wǎng)站的視覺相似超過設(shè)定的閾值來進(jìn)行檢測。然而,由于需要復(fù)雜的圖像處理操作,鑒于現(xiàn)在手機(jī)的性能還不能很好地滿足此類計(jì)算需求,這種方法并不適合移動(dòng)手機(jī)端。

本文通過結(jié)合URL鏈接和網(wǎng)頁內(nèi)容,提出一種基于改進(jìn)樸素貝葉斯算法[5]的釣魚網(wǎng)站檢測方案。樸素貝葉斯算法由于有著堅(jiān)實(shí)的數(shù)學(xué)基礎(chǔ)和穩(wěn)定的分類效率,故而在各種分類領(lǐng)域中得到廣泛的應(yīng)用。但是,傳統(tǒng)的樸素貝葉斯算法也存在一些不足。針對樸素貝葉斯算法的不足,本文做了如下改進(jìn):

(1)在收集樣本數(shù)據(jù)的過程中,屬性值缺失的情況時(shí)有發(fā)生,其中有些信息是無法獲取的,有些對象的某個(gè)屬性是不可用的。也就是說,對于這個(gè)對象,該屬性值是不存在的。本文將采用K-means算法對缺失的屬性值進(jìn)行填充。

(2)當(dāng)特征屬性的維數(shù)過多時(shí),樸素貝葉斯算法就會(huì)出現(xiàn)大量條件概率相乘的情況。這些概率值都是小于1的數(shù),而這些趨于零的條件概率相乘,很可能會(huì)出現(xiàn)有偏過低估計(jì)[6]的情況。本文將概率進(jìn)行適當(dāng)放大,以解決結(jié)果下溢的問題。

(3)傳統(tǒng)的樸素貝葉斯算法認(rèn)為屬性之間是相互獨(dú)立的,容易忽略屬性之間的關(guān)聯(lián)性問題。但是在現(xiàn)實(shí)數(shù)據(jù)中,屬性與類別之間都存在或多或少的關(guān)聯(lián)。本文根據(jù)屬性重要程度的不同對屬性進(jìn)行加權(quán)處理,提升樸素貝葉斯算法的分類性能,以此提高釣魚網(wǎng)站檢測的正確率。

(4)在實(shí)際情況中,釣魚網(wǎng)站出現(xiàn)的概率還是比較小的,本文通過調(diào)整釣魚網(wǎng)站與可信網(wǎng)站間的概率比值P,最終選擇一個(gè)最佳的P值,以此來進(jìn)一步提高檢測的正確率。

本文的實(shí)驗(yàn)部署在Android 5.0操作系統(tǒng)上,結(jié)果表明,改進(jìn)后的樸素貝葉斯算法能夠有效地檢測出手機(jī)端的釣魚攻擊,進(jìn)而可為手機(jī)安全運(yùn)行提供可靠的保護(hù)技術(shù)。

2 樸素貝葉斯算法的基本原理

貝葉斯算法是以英國數(shù)學(xué)家Thomas Bayes命名的一種基于概率統(tǒng)計(jì)的可能性推理方法[6],即根據(jù)已經(jīng)發(fā)生的事件來預(yù)測將來事件可能發(fā)生的概率。貝葉斯定理的主要思想為:如果事件發(fā)生的可能性不確定,那么量化它的唯一方法就是事件發(fā)生的概率。如果事件出現(xiàn)的概率是已知的,那么可以根據(jù)數(shù)學(xué)方法計(jì)算出未來事件出現(xiàn)的概率。貝葉斯定理可以用一個(gè)數(shù)學(xué)公式表達(dá),即為貝葉斯定理。具體如式(1)所示:

(1)

其中,P(X)表示事件發(fā)生的概率,P(Bi)表示Bi的先驗(yàn)概率。之所以稱之為先驗(yàn)概率是因?yàn)樗母怕什缓蛣e的事件有關(guān)系。由于P(X|Bi)是根據(jù)Bi的概率得到的,因此被稱為X的后驗(yàn)概率。簡單地說,貝葉斯定理提供了一種基于先驗(yàn)概率計(jì)算后驗(yàn)概率的方法。

樸素貝葉斯算法是在貝葉斯算法的基礎(chǔ)上通過假定各屬性之間不存在任何關(guān)聯(lián),即屬性之間完全獨(dú)立而得到的一種簡化算法[5]。利用樸素貝葉斯算法進(jìn)行分類的具體過程如下所示:

(1)數(shù)據(jù)樣本集合由一個(gè)n維的特征向量T={t1,t2,…,tn}表示,ti(i=1,…,n) 表示數(shù)據(jù)集合中的一條數(shù)據(jù)。

(2)實(shí)驗(yàn)E的樣本空間為S,而B1,B2,…,Bn為S的一個(gè)劃分,且P(Bi)>0 (i=1,2,…,n)。對于給定的一條待檢測的數(shù)據(jù)項(xiàng)X,分類器將計(jì)算X屬于每個(gè)分類的概率,其中哪個(gè)分類的概率最大就將X歸為那個(gè)分類。P(Bi|X)即為對應(yīng)類Bi的后驗(yàn)概率。而P(Bi|X)可以根據(jù)式(1)來確定。由于P(X)為常數(shù),只需要P(X|Bi)P(Bi)最大,即可判斷出數(shù)據(jù)項(xiàng)X屬于哪一個(gè)分類。其中類的先驗(yàn)概率可以用P(Bi)=si/s計(jì)算,si為訓(xùn)練樣本中屬于Bi的個(gè)數(shù),s為訓(xùn)練樣本的總數(shù)。

由于樸素貝葉斯算法假定各個(gè)屬性之間是相互獨(dú)立的,沒有任何的依賴關(guān)系,所以有:

(2)

其中,概率P(X1|Bi),P(X2|Bi),…,P(Xk|Bi)可由訓(xùn)練樣本計(jì)算得到。P(Xk|Bi)表示待檢測數(shù)據(jù)項(xiàng)第k個(gè)屬性對應(yīng)的屬性值為Xk的概率,P(Xk|Bi)=sik/si,其中si表示樣本中類別屬于Bi的樣本數(shù),sik表示樣本中屬于類別Bi,并且第k個(gè)屬性對應(yīng)的屬性值為Xk的樣本數(shù)。

于是樸素貝葉斯公式可以表述為式(3):

(3)

3 樸素貝葉斯算法的不足及改進(jìn)

3.1 缺失屬性值的填充

3.1.1 缺失數(shù)據(jù)的現(xiàn)有處理方法

在收集樣本數(shù)據(jù)的過程中,屬性值缺失的情況經(jīng)常會(huì)發(fā)生。對于缺失數(shù)據(jù)的填充主要有刪除數(shù)據(jù)和補(bǔ)齊數(shù)據(jù)兩種方式。其中刪除數(shù)據(jù)可能會(huì)導(dǎo)致數(shù)據(jù)發(fā)生偏離,從而得出錯(cuò)誤的結(jié)論。當(dāng)前補(bǔ)齊數(shù)據(jù)主要有平均值填充以及使用最可能的值填充等方法。

圖1的實(shí)驗(yàn)結(jié)果顯示了使用刪除法(菱形線)和平均值法(方形線)改變樣本數(shù)據(jù)中缺失的屬性數(shù)的正確率。實(shí)驗(yàn)中樣本數(shù)為2 000,釣魚網(wǎng)站數(shù)為500,可信網(wǎng)站數(shù)為1 500。從圖1中可以看出,由于刪除法是直接將缺失數(shù)據(jù)的數(shù)據(jù)項(xiàng)去掉,這樣雖然可以得到完整的數(shù)據(jù)集,但是丟失了大量的有價(jià)值的數(shù)據(jù),導(dǎo)致正確率很低(平均準(zhǔn)確率為74.93%)。平均值填充方法是靠屬性在其他對象中的取值求平均得到的,但是平均值法只是利用了數(shù)據(jù)樣本中的一個(gè)數(shù)據(jù)項(xiàng),沒有充分利用其它數(shù)據(jù)項(xiàng)和樣本的類別,因此所得到的平均值并不是非常準(zhǔn)確(平均準(zhǔn)確率為80.52%)。

Figure 1 Accuracy comparison vs. missing attribute by different methods圖1 不同方法關(guān)于缺失屬性正確率的對比

3.1.2 基于K-means算法的數(shù)據(jù)填充方法

由于刪除法和平均值法都不能得到最符合實(shí)際情況的數(shù)據(jù)值,本文采用K-means算法來對缺失的數(shù)據(jù)進(jìn)行填充。

(1)K-means算法基本原理。

K-means算法[7]是劃分聚類方法中一種典型的算法。該算法的目標(biāo)是根據(jù)輸入的參數(shù)K,將給定的數(shù)據(jù)集分為K個(gè)簇,同一個(gè)簇內(nèi)的數(shù)據(jù)具有較高的相似度,而不同簇之間的相似度較低。K-means算法的處理過程為:

①從n個(gè)數(shù)據(jù)對象中任意選擇K個(gè)對象作為初始聚類中心;

②根據(jù)每個(gè)聚類對象的均值(中心位置),計(jì)算每個(gè)對象與中心位置的距離,將它賦給最近的簇;

③重新計(jì)算每個(gè)聚類的均值(中心位置);

④循環(huán)②~③直到每個(gè)聚類不再發(fā)生變化為止。

屬性對象間相似度的計(jì)算:若對象屬性均為區(qū)間標(biāo)度度量,則對象之間的相似度最常用的度量方法是歐氏距離,如式(4)所示:

sim(i,j)=

(4)

其中,i=(xi1,xi2,…,xin)和j=(xj1,xj2,…,xjn)分別是兩個(gè)n維的數(shù)據(jù)對象。若對象的屬性值只有0和1兩個(gè)狀態(tài)。則評價(jià)兩個(gè)對象之間的相似度用的是Jaccard系數(shù),如式(5)所示:

(5)

由數(shù)學(xué)知識可得:

sim(i,j)=(r+s)/(q+r+s)

(6)

其中,r是對于i的值為1而對于j的值為0的變量的個(gè)數(shù);s是對于i的值為0而對于j的值為1的變量的個(gè)數(shù);q是對于i和j的值都是1的變量的個(gè)數(shù)。由于本文使用數(shù)據(jù)的屬性值只有兩個(gè)狀態(tài),故使用Jaccard系數(shù)計(jì)算對象之間的相似度。

(2)使用K-means算法填充缺失數(shù)據(jù)的具體過程。

針對傳統(tǒng)算法對缺失數(shù)據(jù)處理出現(xiàn)準(zhǔn)確率偏低的問題,本文使用K-means算法對缺失數(shù)據(jù)進(jìn)行填充,具體過程為:

①原始數(shù)據(jù)的分離。將原始數(shù)據(jù)中不完備的數(shù)據(jù)分離出來,這樣原始數(shù)據(jù)分為兩部分:完備數(shù)據(jù)子集和缺失數(shù)據(jù)子集。

②完備數(shù)據(jù)子集聚類。在完備數(shù)據(jù)子集上使用K-means算法進(jìn)行聚類,最終產(chǎn)生K個(gè)簇。K-means中K值表示的是數(shù)據(jù)集聚類中心的個(gè)數(shù)。由于本文的數(shù)據(jù)集在聚類過程中只有兩種類別,一種是釣魚網(wǎng)站,另外一種是非釣魚網(wǎng)站(可信網(wǎng)站),因此這里的K值取2。

③缺失數(shù)據(jù)填充。計(jì)算缺失數(shù)據(jù)集中的每條記錄與K個(gè)簇中心的相似度,根據(jù)相似度將該條記錄劃分到相似度最高的一個(gè)簇中去,最后用該簇中相應(yīng)屬性出現(xiàn)次數(shù)最多的值來補(bǔ)齊缺失的屬性值。

④重新計(jì)算均值,循環(huán)②~④直到所有的缺失數(shù)據(jù)都填充完畢。

如圖1所示,使用K-means算法(三角形線)來對缺失的數(shù)據(jù)進(jìn)行補(bǔ)齊的正確率比其它兩種方法的正確率都要高(平均準(zhǔn)確率達(dá)到83.79%),這是因?yàn)镵-means方法充分利用了當(dāng)前數(shù)據(jù)樣本中所包含的其它信息,并利用其它屬性的值和屬性類別來預(yù)測當(dāng)前所缺失的屬性值,因此本文使用K-means方法對缺失的屬性值進(jìn)行填充。

3.2 避免有偏的過低估計(jì)

對概率進(jìn)行放大的方法主要有兩種。第一種是給每一個(gè)sik加上一個(gè)比較小的數(shù),這樣使得計(jì)算出來的概率值較小,也不會(huì)占有絕對的統(tǒng)治地位,從而提高了分類的精度,如Laplace平滑方法[5]。Laplace平滑方法是直接在si的基礎(chǔ)上加上n(n表示樣本類別的種類數(shù)),在sik的基礎(chǔ)上加上1。這樣可以有效地避免概率為零的情況。第二種方法是基于先驗(yàn)概率估計(jì)的方法,即對P(Xk|Bi)的計(jì)算先給一個(gè)先驗(yàn)的估計(jì)概率,然后以此概率為基礎(chǔ)對統(tǒng)計(jì)的樣本數(shù)進(jìn)行放大,如m估計(jì)[5]方法。該方法是一種更一般的貝葉斯概率估計(jì)方法,它將原來的樣本容量添加m個(gè)等效的樣本,同時(shí)樣本中增加的等效的類別數(shù)量就是樣本數(shù)量m乘以概率估計(jì)E。

圖2的實(shí)驗(yàn)結(jié)果顯示了采用Laplace平滑方法(三角形線)和m估計(jì)(方形線)的方法對樣本數(shù)據(jù)集進(jìn)行放大,可以有效地提高正確率。其中,m估計(jì)方法由于擴(kuò)大的樣本數(shù)量比Laplace平滑方法要大,因此采用m估計(jì)方法的正確率比Laplace平滑方法要高。特別地,當(dāng)樣本的數(shù)據(jù)集很小的時(shí)候,m估計(jì)方法和其它兩個(gè)方法的正確率的差值就越大,因?yàn)閿?shù)據(jù)集越小,出現(xiàn)零概率事件的概率就越大,從而導(dǎo)致正確率很低。因此,使用m估計(jì)對樣本數(shù)據(jù)進(jìn)行放大,可以進(jìn)一步提高正確率。

Figure 2 Accuracy comparison among different probability estimation method圖2 不同概率估計(jì)方法的正確率對比

基于以上分析,本文采取m估計(jì)來對樣本數(shù)據(jù)進(jìn)行放大,計(jì)算方法如式(7)所示:

(7)

其中,sik和si與前面的定義相同,E是確定的概率的一個(gè)先驗(yàn)估計(jì)值,而m是一個(gè)放大的樣本容量的大小。最終的結(jié)果是將n個(gè)實(shí)際的觀察樣本進(jìn)行了放大,加大了m個(gè)按E分布的虛擬樣本。在這里,假定E是均勻的先驗(yàn)概率,那么,如果某屬性有k個(gè)可能的值,那么就設(shè)置E=1/k。

3.3 屬性加權(quán)

傳統(tǒng)的樸素貝葉斯算法為了降低算法的復(fù)雜度,直接忽略了屬性之間的關(guān)聯(lián)。但是,在現(xiàn)實(shí)情況中,屬性與類別之間都存在或多或少的關(guān)聯(lián),如果不考慮屬性之間的關(guān)聯(lián),就會(huì)使得分類的效果明顯下降。Tan等人[8]提出了加權(quán)樸素貝葉斯模型,該模型根據(jù)屬性和最終所屬的類別之間的關(guān)系賦予不同的權(quán)重,這種方法簡單有效。因此,本文使用加權(quán)樸素貝葉斯方法對屬性與類別之間的相應(yīng)關(guān)系進(jìn)行量化,并以該量化值作為加權(quán)系數(shù)對該屬性進(jìn)行加權(quán),以此來提高樸素貝葉斯算法的分類效果。在這種情況下,關(guān)聯(lián)程度較大的屬性將獲得比較大的加權(quán)系數(shù),而關(guān)聯(lián)程度較小的屬性將獲得比較小的加權(quán)系數(shù)。

根據(jù)以上分析,可得加權(quán)后的樸素貝葉斯公式如式(8)所示:

(8)

其中,wi為數(shù)據(jù)中第i個(gè)屬性對于樣本的權(quán)重,屬性的權(quán)重越大,說明該屬性對分類的影響越大。加權(quán)樸素貝葉斯算法的關(guān)鍵問題在于如何確定不同屬性對于樣本的加權(quán)值。首先定義:

(9)

其中,count(Bi)表示樣本數(shù)據(jù)中類別為Bi的個(gè)數(shù),count(Bi∧Xk)表示數(shù)據(jù)中類別是Bi且第k個(gè)屬性值為Xk的個(gè)數(shù)。根據(jù)數(shù)學(xué)知識很容易定義權(quán)重wi為:

(10)

由于P(Xk|Bi)為小數(shù),由數(shù)學(xué)知識可得,需要把權(quán)值wi取倒數(shù)。

3.4 K值估計(jì)

利用前面的樸素貝葉斯公式(式(3))可以計(jì)算出每一個(gè)待分類網(wǎng)站X屬于釣魚網(wǎng)站和可信網(wǎng)站的概率:P(B1|X)(B1為釣魚網(wǎng)站類別)和P(B2|X)(B2為可信網(wǎng)站類別)。如果按照傳統(tǒng)的方法,當(dāng)P(B1|X)>P(B2|X)時(shí),就判定X屬于釣魚網(wǎng)站,否則就判定為可信網(wǎng)站。但是在實(shí)際的情況中,正常網(wǎng)站的數(shù)量往往比釣魚網(wǎng)站的數(shù)量多很多,傳統(tǒng)的樸素貝葉斯算法就會(huì)產(chǎn)生較高的誤判率,如果直接使用的話,分類的偏差會(huì)比較大。因此,為了能更加準(zhǔn)確地檢測出釣魚網(wǎng)站,減少檢測過程中的誤判率,需要對樸素貝葉斯算法進(jìn)行改進(jìn)。

改進(jìn)的樸素貝葉斯算法的基本思想是:在比較兩個(gè)分類P(Bi|X)的概率時(shí)設(shè)定一個(gè)閾值P[9]:若第一類除以第二類的結(jié)果大于P時(shí),表明X屬于第一類的概率遠(yuǎn)大于屬于第二類的概率,即將待檢測的網(wǎng)站歸為第一類;否則將它歸為第二類。其中P值越大,待檢測網(wǎng)站屬于第一類的可能性也就越大。

我們定義P1表示X屬于釣魚網(wǎng)站的概率,P2表示X屬于可信網(wǎng)站的概率。當(dāng)P(B1|X)/P(B2|X)>P(P>0)時(shí),就判定X為釣魚網(wǎng)站,否則就判定為可信網(wǎng)站。即當(dāng)一個(gè)待檢測的網(wǎng)站為釣魚網(wǎng)站的概率是可信網(wǎng)站概率的P倍時(shí),就將其判定為釣魚網(wǎng)站。P越大,其為釣魚網(wǎng)站的可能性就越大。P的取值是通過大量實(shí)驗(yàn)最終確定的。

4 基于改進(jìn)的樸素貝葉斯算法的防釣魚方案

4.1 方案的具體實(shí)現(xiàn)

本文提出的移動(dòng)平臺釣魚網(wǎng)站檢測方法的大致流程為:首先,從用戶訪問的URL入手,當(dāng)手機(jī)端用戶通過瀏覽器輸入U(xiǎn)RL加載網(wǎng)頁的時(shí)候,開始提取URL的4個(gè)特性屬性[10],即URL中是否包含IP地址、URL中是否包含‘_’‘@’等異常字符、URL是否具有多級域名以及URL的字符長度是否過長。其次,通過URL獲取網(wǎng)頁內(nèi)容(HTML源碼),同時(shí)提取網(wǎng)頁內(nèi)容的4個(gè)特性屬性,即否包含‘form’表單、是否包含‘username’關(guān)鍵字、是否包含‘password’關(guān)鍵字以及是否存在外部鏈接。最后,將提取到的8個(gè)特征屬性組成一個(gè)特征向量[5],利用改進(jìn)的樸素貝葉斯方法進(jìn)行檢測,如果是釣魚網(wǎng)站,就向用戶發(fā)出警告。具體的檢測過程如圖3所示。

Figure 3 Flow chart of phishing site detection圖3 釣魚網(wǎng)站檢測流程

4.2 特征向量的構(gòu)建

釣魚網(wǎng)站通常為了迷惑用戶,將網(wǎng)站的URL和網(wǎng)頁內(nèi)容進(jìn)行了偽裝[7,11]。根據(jù)總結(jié)和歸納釣魚網(wǎng)站的特點(diǎn),本文從中提取了釣魚網(wǎng)站的8個(gè)特性,將這些特性組成特征向量(V)[12 - 14]。特征向量的具體定義為:V=〈v1,v2,v3,v4,v5,v6,v7,v8〉,V中各個(gè)分量的具體含義為:

(1)v1:URL中是否包含IP地址[15,16]。攻擊者經(jīng)常用IP地址作為網(wǎng)站的URL來迷惑用戶,而這樣的URL極有可能是惡意的釣魚網(wǎng)站。

(2)v2:網(wǎng)站的URL中是否包含‘_’‘@’等異常字符。釣魚網(wǎng)站通常用添加特殊字符的方法來迷惑用戶。

(3)v3:URL是否具有多級域名。當(dāng)網(wǎng)站域名過長時(shí),大部分用戶往往會(huì)忽視URL后半部分的內(nèi)容,而很多釣魚網(wǎng)站通過多級域名來達(dá)到迷惑用戶的目的。本文通過檢測URL中是否含有大于5個(gè)‘.’來判斷該URL是否包含多級域名。

(4)v4:URL的字符長度是否大于30。一般可信網(wǎng)站的長度都不會(huì)太長,如果URL的長度過長,極有可能是釣魚網(wǎng)站。

(5)v5:網(wǎng)頁內(nèi)容中是否包含‘form’表單。‘form’表單是用來提交用戶信息的,存在‘form’表單,說明網(wǎng)頁需要用戶填寫信息,用戶需要特別注意。

(6)v6:網(wǎng)頁內(nèi)容中是否包含‘username’關(guān)鍵字。‘username’在網(wǎng)頁源代碼中通常表示用戶的登錄ID,如果存在,極有可能是攻擊者想要獲取用戶的ID。

(7)v7:網(wǎng)頁內(nèi)容中是否包含‘password’關(guān)鍵字。‘password’在網(wǎng)頁源代碼中通常代表用戶的登錄密碼,如果存在,很有可能是攻擊者想要竊取用戶的登錄密碼。

(8)v8:是否存在外部鏈接。網(wǎng)頁中存在外部鏈接是正常的,但是如果網(wǎng)頁中外部鏈接的數(shù)量過多(這里指外部鏈接的數(shù)量超過20個(gè)),這個(gè)網(wǎng)頁很有可能是可疑的,用戶需要特別注意。

5 實(shí)驗(yàn)

5.1 實(shí)驗(yàn)數(shù)據(jù)

由于釣魚網(wǎng)站的存活周期短,實(shí)驗(yàn)以實(shí)時(shí)收集的網(wǎng)站信息作為測試用例。實(shí)驗(yàn)所用的釣魚網(wǎng)站是從安全聯(lián)盟網(wǎng)[17]上獲取的,可信網(wǎng)站是從Alexa[18]網(wǎng)站上獲取的。實(shí)驗(yàn)隨機(jī)抽取了數(shù)據(jù)集的1/2用作訓(xùn)練,余下1/2用作測試。

5.2 實(shí)驗(yàn)平臺

實(shí)驗(yàn)部署在Android平臺(基于Android 5.0的系統(tǒng)),手機(jī)的內(nèi)存為2 GB,編程環(huán)境為Eclipse,JDK版本為1.7.0_79。測試算法性能的實(shí)驗(yàn)環(huán)境是一臺擁有4 GB內(nèi)存和雙核i3處理器的PC機(jī),運(yùn)行Windows 7操作系統(tǒng)和Eclipse,JDK版本為1.7.0_79。

5.3 實(shí)驗(yàn)結(jié)果評估標(biāo)準(zhǔn)

實(shí)驗(yàn)通過驗(yàn)證結(jié)果的正確率(Y)、精確率(Q)和召回率(R)[12]等幾個(gè)方面來分析改進(jìn)后算法的性能。正確率、精確率和召回率是廣泛用于信息檢索和統(tǒng)計(jì)學(xué)分類領(lǐng)域的三個(gè)度量值,用于評價(jià)結(jié)果的質(zhì)量。其中,正確率反映的是被分類器判定為正確的檢查結(jié)果占所有樣本的比重;精確率反映的是被分類器判定為正例中真正的正例樣本的比重;召回率反映的是正例中被分類器判斷為正例的比重。Y、Q、R的具體定義如下:

Y=(A+D) / (A+B+C+D)

(11)

Q=A/ (A+B)

(12)

R=A/ (A+C)

(13)

其中A、B、C、D的含義和關(guān)系如表1所示。

Table 1 Definition of parameter A,B,C and D

5.4 實(shí)驗(yàn)結(jié)果及分析

(1)P值的確定。

實(shí)驗(yàn)首先需要尋找一個(gè)固定的概率比值P。實(shí)際應(yīng)用中需要通過大量的實(shí)驗(yàn)才能確定較為合適的P值。在實(shí)驗(yàn)過程中往往要根據(jù)所研究的具體問題,適當(dāng)估算P的取值范圍。

本文實(shí)驗(yàn)中設(shè)定比值P的初始值為0.1,并按步長為0.1逐步增加。從測試數(shù)據(jù)集中選取了500個(gè)URL,其中包括300個(gè)可信網(wǎng)站和200個(gè)釣魚網(wǎng)站。圖4顯示了隨著比值P的增加,實(shí)驗(yàn)正確率的變化情況。

Figure 4 Relationship between P and Y圖4 正確率Y隨著P值的變化

經(jīng)過大量的實(shí)驗(yàn)發(fā)現(xiàn),當(dāng)P=1.5時(shí),可信網(wǎng)站被誤判為釣魚網(wǎng)站的概率最低。同時(shí),釣魚網(wǎng)站被誤判成可信網(wǎng)站的數(shù)量也是最少的。由此可見,當(dāng)P=1.5時(shí),系統(tǒng)的正確率是最高的。在此,只列出當(dāng)P=1.5時(shí)的實(shí)驗(yàn)數(shù)據(jù),如表2所示。

Table 2 Experiment results when P=1.5

(2)實(shí)驗(yàn)結(jié)果。

為了測試改進(jìn)后的算法在不同數(shù)據(jù)集中的性能,實(shí)驗(yàn)對數(shù)據(jù)集進(jìn)行采樣,測試不同大小數(shù)據(jù)集在相同環(huán)境下的正確率、精確率和召回率。

實(shí)驗(yàn)從測試數(shù)據(jù)集中選取了8組數(shù)據(jù)作為樣本。第1組實(shí)驗(yàn)總共選取了500個(gè)URL,其中可信URL數(shù)量為300個(gè),釣魚URL為200個(gè);第2組實(shí)驗(yàn)總共選取了1 000個(gè)URL,其中可信URL為600個(gè),釣魚URL為400個(gè);第3組實(shí)驗(yàn)總共選取了1 500個(gè)URL,其中可信URL為1 000個(gè),釣魚URL為500個(gè);第4組實(shí)驗(yàn)總共選取了2 000個(gè)URL,其中可信URL為1 200個(gè),釣魚URL為800個(gè);第5組實(shí)驗(yàn)總共選取了2 500個(gè)URL,其中可信URL為1 500個(gè),釣魚URL為1 000個(gè);第6組實(shí)驗(yàn)總共選取了3 000個(gè)URL,其中可信URL為2 000個(gè),釣魚URL為1 000個(gè);第7組實(shí)驗(yàn)總共選取了3 500個(gè)URL,其中可信URL為2 500個(gè),釣魚URL為1 000個(gè);第8組實(shí)驗(yàn)總共選取了4 000個(gè)URL,其中可信URL為2 500個(gè),釣魚URL為1 500個(gè)。

分別對改進(jìn)前的樸素貝葉斯方法、改進(jìn)后的樸素貝葉斯方法以及主流的基于決策樹的分類方法[4]在召回率、精確率和正確率等方面進(jìn)行對比。

如圖5~圖7所示,改進(jìn)后的樸素貝葉斯方法在正確率、精確率和召回率等方面的指標(biāo)比未改進(jìn)的方法有大約10%的提高。和主流的基于決策樹分類器相比,改進(jìn)后的樸素貝葉斯方法的精確率、召回率都比基于決策樹的分類器要高。在正確率方面,只有當(dāng)樣本數(shù)據(jù)為1 000時(shí),基于決策樹的分類方法才高于改進(jìn)后的樸素貝葉斯方法;在其余樣本點(diǎn)數(shù)情況下,改進(jìn)后的樸素貝葉斯方法的正確率都要比基于決策樹的分類方法的正確率高;以此同時(shí),隨著樣本數(shù)據(jù)的增大,兩者正確率的差值也會(huì)越來越大,這是因?yàn)闃闼刎惾~斯方法非常依賴于樣本數(shù)據(jù)集,樣本數(shù)據(jù)集越大,它在計(jì)算概率的時(shí)候就越準(zhǔn)確。當(dāng)測試數(shù)據(jù)達(dá)到3 000時(shí),系統(tǒng)檢測的正確率達(dá)到了97.32%。因此,當(dāng)用戶使用瀏覽器進(jìn)行網(wǎng)絡(luò)訪問時(shí),可以對手機(jī)的安全性進(jìn)行很好的保護(hù)。

Figure 5 Comparison of Y圖5 正確率對比

Figure 6 Comparison of Q圖6 精確率對比

Figure 7 Comparison of R圖7 召回率對比

方案的運(yùn)行結(jié)果如圖8所示。當(dāng)用戶輸入釣魚網(wǎng)站的URL時(shí),系統(tǒng)會(huì)很快檢測出來,并用提示框的形式提醒用戶。

Figure 8 Experiment of phishing site detection圖8 釣魚網(wǎng)站檢測實(shí)驗(yàn)

以下實(shí)驗(yàn)比較不同方案之間檢測效果的差異。實(shí)驗(yàn)的樣本數(shù)為2 000,其中釣魚網(wǎng)站數(shù)為500,可信網(wǎng)站數(shù)為1 500。其中,基于決策樹的方案[4]是根據(jù)使用樹形結(jié)構(gòu)對網(wǎng)站的特征屬性進(jìn)行分類的。基于屬性加權(quán)的分類器是對數(shù)據(jù)樣本的屬性進(jìn)行加權(quán)處理來對釣魚網(wǎng)站進(jìn)行檢測[8]。基于貝葉斯和支持向量機(jī)的分類器是將URL和網(wǎng)頁內(nèi)容分別用貝葉斯和支持向量機(jī)進(jìn)行分類[19]。表3展示了不同方案檢測釣魚網(wǎng)站正確率的對比。

從表3的對照結(jié)果可以看出:(1)在正確率上,本文提出的改進(jìn)的樸素貝葉斯方案相比其它三個(gè)方案都有不同程度的提高;(2)本文方案的方差也稍低于其它三種方案,說明本文方案的穩(wěn)定性要好于其它三種方案。與此同時(shí),由于貝葉斯算法在分類消耗時(shí)間上有著自身的優(yōu)勢,綜合比較可知,本文的方案要優(yōu)于其它三個(gè)方案。

Table 3 Accuracy comparison of different schemes

5.5 檢測時(shí)間

當(dāng)用戶輸入U(xiǎn)RL開始連接網(wǎng)絡(luò)時(shí),系統(tǒng)必須在極短的時(shí)間內(nèi)對用戶輸入的URL做出判斷,如果是釣魚網(wǎng)站,需要及時(shí)提醒用戶。

反釣魚方案的檢測過程大致可以分為三個(gè)階段:(1)提取URL特征屬性;(2)通過URL加載HTML源代碼,并提取網(wǎng)頁內(nèi)容的特征屬性;(3)通過樣本數(shù)據(jù)得出結(jié)果。每個(gè)階段的檢測時(shí)間如表4所示。從表4可以看出,三個(gè)階段的平均執(zhí)行時(shí)間[20]分別是0.013 s,1.3 s和0.085 s。其中,通過URL加載網(wǎng)頁內(nèi)容并提取特征屬性階段占據(jù)了整個(gè)檢測階段93%的時(shí)間。

三個(gè)階段執(zhí)行時(shí)間的實(shí)驗(yàn)結(jié)果是取100次結(jié)果的平均值,最終檢測一次所花費(fèi)的平均時(shí)間為1.398 s。當(dāng)檢測開始時(shí),如果檢測的結(jié)果是釣魚網(wǎng)站,系統(tǒng)會(huì)用提示框的形式提醒用戶。在大多數(shù)情況下,在用戶輸入隱私信息之前,檢測的結(jié)果就會(huì)出來,這對于用戶來說是可以接受的。

Table 4 Execution time

6 結(jié)束語

本文針對移動(dòng)平臺釣魚網(wǎng)站頻發(fā)的現(xiàn)象,提出了一種基于改進(jìn)樸素貝葉斯算法的方案來檢測針對移動(dòng)端的釣魚網(wǎng)站。在檢測過程中,對于缺失屬性值的數(shù)據(jù),本文用K-means算法對缺失的值進(jìn)行填充;針對樸素貝葉斯算法計(jì)算概率時(shí)會(huì)出現(xiàn)過低估計(jì)的問題,本文將概率進(jìn)行放大,解決了結(jié)果下溢的問題;針對樸素貝葉斯算法容易忽略屬性之間的關(guān)聯(lián)性問題,本文對不同的屬性值進(jìn)行了加權(quán)處理,進(jìn)而提高了檢測的正確率;根據(jù)實(shí)際情況中釣魚網(wǎng)站出現(xiàn)概率較小的情況,本文通過調(diào)整釣魚網(wǎng)站與可信網(wǎng)站的概率比值,從而進(jìn)一步提高了檢測的正確率。本文實(shí)驗(yàn)部署在基于Android 5.0操作系統(tǒng)的手機(jī)上,結(jié)果表明改進(jìn)后的算法能夠在較短的時(shí)間內(nèi)有效判斷出用戶需要連接的網(wǎng)站是否是釣魚網(wǎng)站。

雖然本方案可以有效地判別用戶連接的網(wǎng)站是否是釣魚網(wǎng)站,但是釣魚網(wǎng)站的更新速度很快,本文所選取的特征屬性只有8個(gè),涉及的范圍不夠全面,所以需要做進(jìn)一步的改進(jìn),以擴(kuò)大本方案的適用范圍。

猜你喜歡
檢測
QC 檢測
“不等式”檢測題
“一元一次不等式”檢測題
“一元一次不等式組”檢測題
“幾何圖形”檢測題
“角”檢測題
“有理數(shù)的乘除法”檢測題
“有理數(shù)”檢測題
“角”檢測題
“幾何圖形”檢測題
主站蜘蛛池模板: 色婷婷色丁香| 欧美自慰一级看片免费| 色天天综合| 国产精品无码影视久久久久久久| 97视频在线精品国自产拍| 国内丰满少妇猛烈精品播| 免费日韩在线视频| 1级黄色毛片| 婷婷开心中文字幕| 亚洲区一区| 自拍亚洲欧美精品| 999国内精品久久免费视频| 精品国产亚洲人成在线| 免费毛片a| 中文字幕久久波多野结衣| 国产视频自拍一区| 色噜噜综合网| 中文字幕无线码一区| www.亚洲一区| 国产乱子伦一区二区=| 秋霞一区二区三区| 国产美女叼嘿视频免费看| 99视频在线观看免费| 制服丝袜亚洲| 日本精品视频一区二区 | 2021精品国产自在现线看| 中文字幕人妻av一区二区| 婷婷亚洲综合五月天在线| 免费aa毛片| 国产精品林美惠子在线观看| 久久精品中文字幕免费| 国产成人精品一区二区三区| 综合色区亚洲熟妇在线| 无码电影在线观看| 99久久精品国产自免费| 国产熟女一级毛片| 亚洲色成人www在线观看| 亚洲熟女中文字幕男人总站| 国产一级α片| 欧美性精品不卡在线观看| 精品久久蜜桃| 亚洲二三区| 毛片免费在线视频| 免费日韩在线视频| 欧美成人影院亚洲综合图| 美女国产在线| 亚洲欧美色中文字幕| 国产精品自在拍首页视频8| 伊人色婷婷| 国产精品成| 欧美日韩一区二区三| 亚洲精品视频在线观看视频| 国产精品福利导航| 婷婷伊人久久| 精品视频在线观看你懂的一区| 欧美午夜视频在线| 国产精品自在自线免费观看| а∨天堂一区中文字幕| 欧美成人精品一区二区 | 欧美日韩一区二区三区在线视频| 这里只有精品在线| 国产欧美视频在线| 欧美一区二区人人喊爽| 国产精品一线天| 亚洲日韩精品欧美中文字幕| 久久久精品无码一二三区| 亚洲欧洲一区二区三区| 亚洲一区二区日韩欧美gif| 国产成人无码Av在线播放无广告| 九九热视频精品在线| 一级黄色欧美| 亚洲第一成网站| 色呦呦手机在线精品| 亚洲欧美日韩精品专区| 欧美精品v| 亚洲日韩第九十九页| 一本久道热中字伊人| 午夜福利在线观看入口| 夜夜操狠狠操| 亚洲二三区| 人妖无码第一页| 日本久久久久久免费网络|