殷蘭芳 吳舒辭 黃華軍
(中南林業科技大學計算機與信息工程學院 湖南 410004)
網絡釣魚(phishing)是一種基于社會工程學的網絡攻擊手段。其主要通過即時聊天工具或虛假網頁廣告等向用戶發送聲稱來自于某些知名機,構意圖引誘用戶登錄假冒網站來獲取用戶敏感信息,并謀利的一種惡意網絡攻擊手段。
依照已有的方法,可將網絡釣魚的防御分為服務器端防御、用戶端防御和第三方防御。
服務器端的防御是指由服務供應商,包括銀行、ISP、商務網站等采取多種措施保護用戶數據的安全。如Liu等人分析并選定6個特征采用多種方式來進行綜合比較與檢測,但其關鍵特征提取規則和提取方式均具有局限和不完善性[1]。Huang等人提出了一次性密碼防御釣魚網站。
用戶端防御是指在用戶瀏覽器安裝插件,主要有基于URL檢測技術、基于啟發式檢測技術、基于機器學習的檢測技術[7][8]和基于視覺相似的檢測技術這四種方法。
第三方防御包括建立URL黑名單、安全軟件廠商防御機制、公眾保護機制,如國際反網絡釣魚聯盟(AWPG)、中國反釣魚網站聯盟(APAC)等等。
國內對于釣魚網站的防御技術相對較少。目前代表性防御方法有:黃華軍等人提出基于半脆弱水印的網絡釣魚主動防御[13]和基于異常特征釣魚URL檢測算法。其余防御措施包括針對web-mail郵箱的跨站網絡釣魚攻擊的研究、基于云計算的URL過濾、SVM學習算法等,由于文章篇幅,不一一介紹。
綜合以上介紹可知,現有釣魚網站防御方法主要采用網頁正文文本或圖片作為特征來進行釣魚網站防御研究,這類方法不僅增加了用戶體驗成本,且未能在面對現今高速變化地網絡釣魚方式,精湛的仿造技術和海量網絡數據時,保證其檢測的準確率以及效率。基于此,提出一種以網頁中含量穩定且少的網頁噪聲作為網頁特征的釣魚網站檢測算法,借此簡化算法數據,提高釣魚網站檢測效率。
網頁噪聲是指網頁中與應用目的不符合的內容。通過對本實驗已有噪聲樣本的統計研究發現,網頁中噪聲的含量小且穩定。且在對比釣魚網站和與之對應的受保護網站的網頁噪聲時發現,其相似度值相對穩定。如果利用此特征,選擇網頁噪聲作為特征對網頁進行描述,那么將可節省大量的存儲空間,以此來提高網頁處理效率,最終提升檢測效果的精準度。
依統計,每個網頁都含有20%~40%左右的模板,且各網頁模板相對固定。又鑒于n-gram語言模型能簡單、直接的表達出文本各個元詞之間概率關系的特點。因此,提取網頁中的網頁噪聲部分作為特征來描述網站,再采用n-gram語言模型對其進行處理。以上各要點,通過所得結果找出釣魚網站與受保護網站之間特征的相似度規律,設定釣魚網站排查閾值。由此達到對網絡釣魚高效、便捷的檢測的目的,并起到排查其惡意攻擊的作用。
在提取噪聲模型時,基于HTML是一種本身具有一定嵌套樹型關系結構的簡單標識語言,并且其定義了一系列的標簽來刻畫網頁所顯示的內容。因此可以將網頁中主要的標簽依照其嵌套關系整理成DOM(Document Object Model)樹狀結構來對網頁的結構進行簡單、直觀地描述。并且,通過實驗組對大量的樣本數據的觀察發現,網頁中的主題內容往往都不會出現在模板標簽內。
由此,本文通過對標簽中噪聲的分析,將網頁源代碼中的噪聲分為兩類。第Ⅰ類標簽中含有的總噪聲量約占整個網頁的98%,而第Ⅱ類標簽中所含的均為主題以及與主題相關的內容。標簽分類如下表1所示:

表1 標簽分類表
基于以上描述,將受保護網頁代碼和被測網頁代碼均解析成DOM樹狀結構,解析后,直接從DOM樹狀圖中提取第Ⅰ類標簽的節點中的所有內容作為本算法的實驗數據。噪聲特征提取流程圖1如下:

圖1 基于噪聲的網頁特征提取流程圖
n-gram是一種可以計算出文本信息中句子概率的語言模型。利用n-gram語言模型可以將文本信息用概率的形式描述出來以便于研究計算。

通過此語言模型處理網頁噪聲數據,即可得到所有被測網站基于噪聲的特征頻率矩陣。將所有樣本采用此方法處理后得到的相應的特征頻率矩陣分類保存,作為隨后實驗所需的樣本數據。
選定cosine定律來對文本進行相似度檢測。記受保護網站的特征頻率矩陣為,第個被測網站的特征頻率矩陣為。和分別表示在被保護網站和第i個被測網站的特征頻率矩陣的第t個元素。通過計算兩個網站特征頻率向量之間的夾角余弦值來判定這被測網站與被保護網站的相似度.設被保護網站為x被測網站為,從而計算公式如下:

通過PhishTank(http://www.phishtank.com/)網站,抓取由用戶舉報,已確定為釣魚網站的URL鏈接以及相關Whois信息分類保存。本實驗主要針對PayPal和eBay這兩類網站收集數據進行研究。目前已從PhishTank網站中保存釣魚網站共4812個,其中PayPal有2610個;eBay有2202個。經標簽選擇,參與檢測的實際釣魚網站數分別為PayPal為2490個;eBay為1699個。
2.2.1 相似度結果及分析
收集PayPal和eBay釣魚網站數據,通過公式(1)計算PayPal和eBay的官方網站與被測釣魚網站得出相似度值,分布如下圖2所示:

圖2 受保護網站與被測網站相似度點圖
圖2(a)、(b)中,橫坐標為通過余弦公式計算所得的0到1之間的值,即相似度值,縱坐標具有相同相似度值的網站個數。觀察圖2(a)發現,PayPal受保護網站和釣魚網站相似度值集中分布在0.67附近以及0.65到0.67之間。而由圖2(b)可知,eBay受保護網站和釣魚網站相似度值在0.56、0.57以及0.69這三個值的數量較多。
2.2.2 聚類分析
為了能更直接、清晰地觀察實驗所得的數據,且觀察可知,實驗樣本的相似度值數據為2維連續空間。基于此,采用常用于對n維連續空間中的對象進行聚類的K-means均值法對數據進行聚類分析,以便更準確地確定釣魚網站排查閾值。
基于K-means均值聚類基于原型而劃分類別的特點,選定k=7。設定相似度值0到0.8之間均分八等分為初始狀態,取間隔的點作為初始聚類中心相似度值點。
本實驗部分網頁源代碼中未含有任何實驗所需的HTML標簽的樣本。聚類分析結果如下表2和表3所示:

表2 PayPal聚類結果

表3 eBay聚類結果
為了檢測閾值的精準度,采用反應算法準確性的查準率(precision)、反應算法漏報性的召回率(recall)以及F值對其檢測結果進行評估。具體計算公式如下所示:

本算法融合了網頁噪聲與n-gram對釣魚網站進行檢測。較以往的防御算法計算成本更低。又選定網頁中變化較少的網頁噪聲作為特征來描述整個網頁,使算法性能得到了很大提升,相應穩定性也更優。同時,針對PayPal和eBay網站設定了釣魚網站排查閾值,達到了快速、有效地檢測釣魚網站惡意攻擊的目的。較其他算法,該算法計算量小,精確度高,能更好的應對當今互聯網變化快、數據量大的特點。考慮現在互聯網帶來的大數據以及云計算的發展趨勢,今后的工作將是把釣魚網站的防御大數據化,智能化,并在檢測中達到效率和性能的高度平衡。
[1]Liu YANG,Zhang MIAO. Title:Financial Websites Oriented Heuristic Anti-Phishing Research,2012[C]. China:Chinese Association of Artificial Intelligence,2012:21-27. [Proceedings of 2012 IEEE 2nd International Conference on Cloud Computing and Intelligence Systems]
[2]Huang C,Ma S,Chen K. Using One-Time Passwords to Prevent Password Phishing Attacks [J]. 2011,34(4):1292-1301.[Journal of Network and Computer Applications.]
[3]Garera S,Provos N,Chew M. Title:A Framework for Detection and Measurement of Phishing Attacks,2007[C],American:Johns Hopkins University,2007:1-8. [Proc. of WORM’07]
[4]Chou N,Ledesma R,Teraguchi Y,et al. Client-side Defense against Web-based Identity Theft [EO/BL].http://crypto.stanford.edu/SpoofGuard/webspoof.pdf,2007-7-5.
[5]Kirda E,Kruegel C. Protecting Users against Phishing Attacks [J].2006,49(5):554-561. [The Computer Journal]
[6]Zhang H,Liu G,Chow T W S,et al. Textual and Visual Content-Based Anti-Phishing:A Bayesian Approach [J]. 2011,22(10):1532-1546. [IEEE Transactions on Neural Networks]
[7]Abbasi A,Zhang Z,Zimbra D,et al. Detecting Fake Websites:The Contribution of Statisitical Learning Theory [J]. 2010,34(3):1-28. [MIS Quarterly]
[8]Miyamoto D,Hazeyama H,Kadobayashi Y. An Evaluation of Machine Learning-based Method for Detection of Phishing Sites [J].2009,5506:539-546 . [Lecture Notes in Computer Science]
[9]Huang C,Ma S,Yeh W,et al. Mitigate Web Phishing Using Site Signatures,2010 [C]. 2010:803-808.[ IEEE Region 10 International Conference TENCON 2010]
[10]Aburrous M,Hossain M A,Dahal K,et al. Intelligent Phishing Detection System for E-banking using Fuzzy Data Mining [J].2010,37:7913-7921. [Expert Systems with Applications]
[11] Huang H J,Wang Y J,Xie L L,et al. An Active Anti-Phishing Solution Based on Semi-fragile Watermark [J]. 2013,12(1):198-203. [Information Technology Journal]
[12]Huang HJ,Qian L,Wang YJ. A SVM-Based Technique to Detect Phishing URLs [J]. 2012,11(7):921-925. [Information Technology Journal]
[13]毛先領,何靖,閆宏飛.網頁去噪:研究綜述[J]. 計算機研究與發展.2010,47(12):2025-2036.