朱超群等
摘 要: 網(wǎng)絡釣魚是目前信息安全領(lǐng)域的一個研究熱點,基于域名信息的釣魚檢測是使用較為廣泛的一種方法。文章利用編輯距離尋找與已知正常域名相近的域名,根據(jù)域名信息提取域名單詞最大匹配特征、域名分割特征和URL分割特征,利用這些特征訓練貝葉斯分類器,根據(jù)給定特征屬于哪一類的概率來判斷此URL是否為釣魚URL,實驗結(jié)果表明該方法能有效提高判斷準確性。
關(guān)鍵詞: 釣魚檢測; 單詞匹配; 編輯距離; 貝葉斯分類器
中圖分類號:TP309 文獻標志碼:A 文章編號:1006-8228(2015)05-16-03
Abstract: Phishing is one of the research hotspot in the field of information security at present, and URL based phishing detection is a method used widely. This paper proposes a phishing detection method which searches approximate normal domain names by calculating edit distance firstly. Then domain name word maximum match features, domain name segmentation features and URL segmentation features are extracted according to the domain name information. Finally, a bayes binary classifier, which is trained by using these features, can distinguish whether a URL is phishing URL or not. The experimental results show that this method can effectively improve the judgment accuracy.
Key words: phishing detection; words matching; edit distance; bayes classifier
0 引言
目前電子商務、網(wǎng)絡銀行逐漸走入人們的日常生活,商務類應用呈上升趨勢,與此同時,互聯(lián)網(wǎng)絡安全問題十分嚴峻,其中網(wǎng)絡釣魚攻擊作為當今在線交易和電子商務所面臨的最危險的欺詐形式已越來越成為關(guān)注的焦點。
反釣魚技術(shù)涉及領(lǐng)域極廣,應用場景和問題領(lǐng)域多種多樣,目前并沒有統(tǒng)一的、權(quán)威的研究視角和方法。研究人員從多個層面出發(fā),提出了反釣魚的方法和機制。
⑴ 基于人工判定和質(zhì)量評價的黑名單技術(shù)
該類技術(shù)通過維護一個黑名單來阻止用戶對已發(fā)現(xiàn)的釣魚網(wǎng)站的訪問。黑名單的建立主要通過人工舉報和審查,或者用戶群對網(wǎng)站質(zhì)量評價來完成,例如:Cloudmark的黑名單是由大量用戶對網(wǎng)站的評級來維護,IE和Firefox等瀏覽器通過用戶舉報實時更新釣魚網(wǎng)頁黑名單[1]。
⑵ 基于規(guī)則的啟發(fā)式檢測技術(shù)
利用釣魚網(wǎng)站的特征自動判斷網(wǎng)站真?zhèn)?,如SpoofGuard分析釣魚網(wǎng)站啟發(fā)式特征,包括主機域名、網(wǎng)頁圖片、頁面鏈接等判斷真假;Zhang等人提出通過對網(wǎng)頁文本內(nèi)容的特征定義網(wǎng)站身份,然后利用搜索引擎的結(jié)果來判斷網(wǎng)站真?zhèn)?;Fu等人提出的EMS算法是通過計算兩個網(wǎng)頁的視覺相似性來判斷是否為釣魚網(wǎng)頁[2]。
⑶ 基于統(tǒng)計機器學習的模式分類技術(shù)
該類技術(shù)是將釣魚攻擊檢測視為一個二元分類問題,即如何判定未知網(wǎng)頁為正常網(wǎng)頁或釣魚網(wǎng)頁。一般采用統(tǒng)計學習的方法建立分類模型,如Likarish等人借鑒垃圾郵件的檢測方法,建立釣魚特征貝葉斯過濾器;Ma等人通過對 URL黑白名單的字符串特征的統(tǒng)計學習,形成基于URL的分類器[3]。
以上三類方法各有利弊。黑名單檢測結(jié)果準確可靠,但實時性差,并浪費大量人工資源;啟發(fā)式檢測方法可實時檢測釣魚網(wǎng)站,若檢測規(guī)則加入人工干預后準確性極高,但魯棒性稍差;基于機器學習的模式分類技術(shù)有很好的魯棒性,檢出率也較高,但是準確性不如啟發(fā)式檢測,且需要大量釣魚樣本訓練分類器。本文提出一種基于URL的貝葉斯二值分類方法,首先利用編輯距離尋找與已知域名相近的域名,提取域名單詞最大匹配特征、域名分割特征和URL分割特征,然后用上述特征訓練貝葉斯分類器,根據(jù)給定特征屬于哪一類的概率判斷是否為釣魚URL。
1 基于URL的釣魚檢測方法
基于URL的釣魚檢測主要分為兩種:一是根據(jù)URL檢索與之相似的域名,以發(fā)現(xiàn)潛在釣魚網(wǎng)站;二是用機器學習的方法判斷URL是否為釣魚URL。
1.1 基于域名分割的相似度判斷
許多釣魚網(wǎng)站采用混淆域名的方法蒙蔽用戶,如中國工商銀行(www.icbc.com.cn)的一個釣魚網(wǎng)站就是www.1cbc.com.cn。通過分析二者的相似度可判斷是否為釣魚網(wǎng)站。首先利用“.”對網(wǎng)站域名分割域名,如對www.icbc.com.cn分割為:“www”、“icbc”、“com”、“cn”;然后對各部分相似度匹配,匹配原則為判斷域名長度是否一致,并將各部分的相似度相加,結(jié)果若與分割后的部分越接近說明相似度越高。這種方法會造成一個域名可能產(chǎn)生大量相似域名,因而只能作為初步判斷之用[4]。
1.2 基于字符串編輯距離的相似度判斷
編輯距離表示一個字符串經(jīng)過多少次增加、刪除及修改轉(zhuǎn)化為另一字符串,編輯距離越小,字符串越相似。如果2個字符串為空,則編輯距離為0;如果2個字符串中一個是空,則ed(ε,s)=|s|;其余情況用式⑴計算:
1.3 域名單詞最大匹配得到的單詞特征
一般地,釣魚網(wǎng)站的域名包含英文單詞,本方法是與中文切詞的最大匹配方法類似,其算法流程如圖1所示。其中,域名分割單元是指用“.”把一個域名分割的部分。
2 基于貝葉斯分類器的釣魚檢測方法
本文用貝葉斯分類器檢測釣魚URL。貝葉斯分類器的理論基礎(chǔ)是貝葉斯理論,它根據(jù)給定樣本屬于某個類的概率進行分類[6]。假設(shè)在給定類別的情況下,數(shù)據(jù)x服從一定的概率分布,如果類型為正,則x出現(xiàn)的概率為P(x|class=+1)。因此,后驗概率Pr(class=+1|x)可用下式計算:
其中,xj是向量x的第j個元素。
根據(jù)一個類別在訓練數(shù)據(jù)中出現(xiàn)的頻率計算先驗概率P(x|class=+1)和Pr(class=-1),對于x,P(x)是一個常數(shù),樸素貝葉斯算法僅給出類型元素分布的估計,用以下兩種方式估計該分布。
⑴ 正規(guī)密度。給定一個類別,假定元素值趨于正態(tài)分布。對每個xj,P(xj|class=+1)和P(xj|class=-1)為帶均值和方差的正態(tài)分布,僅需估計均值和方差。由于已經(jīng)訓練了樣本,可用訓練結(jié)果估計參數(shù),用訓練數(shù)據(jù)的最大似然估計來獲得每個類型元素樣本的均值和方差。
⑵ 核密度。如果去除正態(tài)分布的假設(shè),就可得到另一種估計P(xj|class=+1)和P(xj|class=-1)分布更強大的模型。
計算完P(guān)(xj|class=+1)和P(xj|class=-1)后,即可對x分類。如果Pr(class=+1|x)>Pr(class=-1|x),則x的類別為正,否則類別為負。
貝葉斯分類釣魚URL檢測流程如下:
具體步驟如下:
⑴ 獲取大量釣魚網(wǎng)站URL作為測試樣本;
⑵ 抽取URL特征;
⑶ 在抽取完特征值后生成訓練樣本,對貝葉斯分類器進行訓練;
⑷ 生成特征向量,用貝葉斯分類器作分類檢測,最終判斷是否為釣魚網(wǎng)站的URL地址。
3 實驗與結(jié)果分析
實驗所用數(shù)據(jù)中釣魚 URL數(shù)據(jù)來自安全聯(lián)盟和http://www.phishtank.com共計有19247個,而正常URL的個數(shù)是15145。通過編寫爬蟲程序,從網(wǎng)站下載網(wǎng)頁后把網(wǎng)頁解析為DOM樹,然后將網(wǎng)站中的URL信息提取出來。本文采用僅單詞匹配和單詞匹配與URL分割二者結(jié)合后,釣魚網(wǎng)站檢測的準確率對比圖如圖3所示,其中X坐標代表測試中URL數(shù)據(jù)所占百分數(shù),Y坐標代表準確率,WM表示采用僅單詞匹配的實驗結(jié)果,WM+US表示單詞匹配與URL分割二者結(jié)合后的實驗結(jié)果。從圖3中可看出,采用WM+US的檢測準確率更高。
4 結(jié)束語
目前網(wǎng)絡釣魚檢測已是電子商務發(fā)展的需要,其科學意義和應用價值正受到世界各國學術(shù)界、工業(yè)界的普遍重視。本文介紹了當前釣魚檢測所涉及的相關(guān)技術(shù),對基于編輯距離和單詞匹配的貝葉斯釣魚分類檢測技術(shù)進行了深入研究。該分類器根據(jù)編輯距離找出與給定域名的相似域名,從域名信息中提取域名單詞最大匹配特征、域名分割特征和URL分割特征訓練貝葉斯釣魚分類器,用來判定未知的URL是否為釣魚URL。實驗結(jié)果表明,該方法能有效提高判斷的準確性。
參考文獻:
[1] Cao Jiuxin, Dong Dan, Mao Bo, Wang Tianfeng,Phishing detection method based on URL features[J].Journal of Sourtheast University,2013.2(29):134-138
[2] Ma J, Saul L K, Savage S, et al. Beyond Blacklists: Learning to Detect Malicious Web Sites from Suspicious URLs[C]//Proc. of the 15th ACM SIGKDD Conference on Knowledge Discovery and Data Mining.Paris, France: [s. n.],2009:1245-1254
[3] Bilge L, Kirda E, Kruegel C, et al. EXPOSURE: Finding
Malicious Domains Using Passive DNS Analysis[C]//Proc. of the 18th Annual Network & Distributed System Security Symposium. California,USA: [s. n.],2011:1-17
[4] 鄭禮雄,李青山,李素科,袁春陽.基于域名信息的釣魚URL探測[J].計算機工程,2012.38(10):108-110
[5] 藺亞東.基于URL特征的釣魚網(wǎng)站檢測方式[J].電子測試,2014.3:70-72
[6] 鄒永斌,陳興蜀,王文賢.基于貝葉斯分類器的主題爬蟲研究[J].計算機應用研究,2009.26(9):3418-3421