王正琦,馮曉兵,張馳
(1. 中國科學技術大學,安徽 合肥 230026;2. 中國科學院電磁空間信息重點實驗室,安徽 合肥 230026)
基于兩層分類器的惡意網頁快速檢測系統研究
王正琦1,2,馮曉兵1,2,張馳1,2
(1. 中國科學技術大學,安徽 合肥 230026;2. 中國科學院電磁空間信息重點實驗室,安徽 合肥 230026)
針對當前傳統靜態惡意網頁檢測方案在面對海量的新增網頁時面臨的壓力,引入了兩段式的分析檢測過程,并依次為每段檢測提出相應的特征提取方案,通過層次化使用優化的樸素貝葉斯算法和支持向量機算法,設計并實現了一種兼顧效率和功能的惡意網頁檢測系統——TSMWD(two-step malicious Web page detection system)。第一層檢測系統用于過濾大量的正常網頁,其特點為效率高、速度快、更新迭代容易,真正率優先。第二層檢測系統追求性能,對于檢測的準確率要求較高,時間和資源的開銷上適當放寬。實驗結果表明,該架構能夠在整體檢測準確率基本不變的情況下,提高系統的檢測速度,在時間一定的情況下,接納更多的檢測請求。
惡意網頁檢測;網絡安全;機器學習;特征提取
近年來,社會經濟、科技、文化高速發展,互聯網已逐步成為人們生活中不可或缺的重要一環。人們正逐漸從信息時代過渡到大數據時代。網絡購物、在線付款、遠程會議等各式的互聯網應用層出不窮,隨著互聯網給人們的生活帶來越來越多的便利,更多的人希望在網絡中獲取自己所需要的信息。因此,大量提供各式各樣服務的網站與日俱增。中國互聯網信息中心(CNNIC,China Internet Network Information Center)2016年發布的第37次《中國互聯網絡發展狀況統計報告》[1]顯示,自2014年以來,中國網站數量一直呈現明顯的上升趨勢。截至2016年6月,中國網站數量為4.54 M個,半年增長7.3%,如圖1所示。
但是,互聯網也是一把雙刃劍。在方便人們生活、開拓人們視野的同時,許多不法分子也從中覓得了良機。他們或為了經濟利益、或為了個人報復,借助互聯網這個開放的公共平臺在監管缺失的情況下進行大量的攻擊行為。因此,互聯網中充斥著各式各樣的惡意網站、惡意軟件、病毒木馬等對用戶個人隱私和財產安全造成巨大威脅的攻擊形式,并且其傳播速度和進化速度也變得越來越快,用戶只要稍不留神,就會導致信息和財產的損失,并且受害的用戶往往會成為攻擊者的跳板,繼續通過該受害用戶攻擊與之連接的其他用戶。這種傳播性極強的網絡攻擊行為的泛濫給當今的網絡安全帶來了巨大威脅,這種威脅不僅違背了網站運營商提供服務正當獲利的初衷,更會使用戶的操作系統程序遭到破壞,系統資源被非法控制,甚至敏感信息被盜取等,進而使用戶對互聯網產生一定的畏懼心理,嚴重影響了互聯網的可信度,阻礙互聯網的良性發展。
根據卡巴斯基安全實驗室2016年發布的年度安全報告的統計數據[2],惡意網頁出現在了87.36%的網絡攻擊中并且已經超越電腦病毒成為黑客們最常使用的獲取非法收入的手段。除此以外,Google安全部門的研究表明[3],Google有大約1.3%的搜索結果是鏈接到掛馬網頁或釣魚網頁的。由此可見,惡意網頁攻擊已經超過傳統的惡意攻擊形式成為當前網絡安全領域所面臨的最大挑戰,由于惡意網頁一般通過腳本語言編寫,具有形式靈活多變、傳播速度快、影響范圍廣、隱蔽性高等特點,如何高效地檢測出惡意網頁已經成為當今網絡安全領域一個亟待解決的研究課題。隨著互聯網的發展,每日新產生的網頁數量也呈現爆炸式增長,海量的新網頁不斷涌入,為攻擊者提供了極佳的隱蔽環境,由于受到資源和時間的限制,根據Sheng等[4]的研究,通過傳統的檢測方法,47%~83%的惡意網頁需要12 h后才能被發現,而大約63%的釣魚網站在出現2 h后就已經完成首次對用戶的攻擊行為。因此,面對每日大批涌現出的未知網頁,為了更好地保障用戶的上網安全,檢測系統的準確率已經不再是瓶頸。如何在有限的時間內從海量的樣本中篩選出新出現的惡意樣本,成了惡意網頁檢測面臨的最大挑戰。
目前,國內外針對惡意網頁的檢測方法主要分為三大類:基于黑名單技術的識別方法、靜態檢測技術和動態檢測技術。
2.1 基于黑名單技術的識別方法

圖1 中國網站數量
黑名單是一份基于惡意網頁的URL、IP地址、域名信息或網頁的關鍵詞信息而生成的信息列表[5]。通過基于數據庫查詢的黑名單技術,人們可以準確地檢測出之前已經被發現的惡意網頁。每當訪問一個網頁時,首先在系統的數據庫中查找該網頁的對應信息,這樣的查找僅針對網頁的基本屬性,而不會去解讀網頁本身的內容,因此只要將數據庫中的內容進行遍歷,一旦發現匹配成功即立刻提醒用戶并進行攔截。該方案的優點十分明顯,就是僅進行基礎信息的匹配就可以得出結果,對于資源和時間的開銷都非常小,很適用于一個成熟的惡意網頁檢測系統的前端,對于當前訪問的網頁先做一輪簡單的篩選,假如該網頁已經存在于黑名單中,則不必再進行后續的檢測和分類。因其技術實現簡單、使用方便,黑名單檢測技術目前廣泛應用于各類殺毒軟件、安全系統解決方案中,如Google Safe Browsing[6]、 Malware Domain List[7]、PhishTank[8]等項目與系統。以Google Safe Browsing為例,它根據Google提供的搜索結果,不斷更新其URL數據庫,向用戶提供服務,允許用戶向其提供一個URL地址,以判斷特定的URL是否在其所列舉的黑名單上,如果存在,則向用戶發出相應的警告。PhishTank向廣大用戶提供了一個可以自愿提交釣魚網頁的信息共享平臺,任何用戶可以向該平臺提供惡意網頁,經核實后收錄到該開放平臺的資源庫中,人們可以根據該平臺提供的列表過濾惡意網頁,保障網絡安全。
然而,黑名單檢測技術有一個致命的缺陷,即該方法只能檢測已經發現的惡意網頁,對于剛剛新生成的惡意網頁,由于還沒有收錄進相應列表,將不具備檢測功能。Prakash等[9]針對該缺陷提出了一種名為PhishNet的改進方案,通過將已有的URL地址作為先驗知識,對其進行分解和相似性匹配,來發現新的釣魚網頁,然而該擴展方案依然是建立在原有黑名單基礎之上的擴展功能,對于某些釣魚網頁的衍生網頁具有一定的檢測功能,但對于新建立起的惡意網頁來說,檢測率仍然較低。同時黑名單檢測技術由于時效性方面的缺陷,會導致大量用戶在新生的惡意網頁尚未被檢測到之前已經受到相應的攻擊。
2.2 靜態檢測技術
為了克服黑名單檢測技術的不足,對于新出現的網頁具備一定的檢測能力,研究人員們在URL精確匹配的基礎上,提出了基于網頁內容、域名信息、URL地址等網頁屬性的相似性設計和啟發式規則,對惡意網頁進行識別和檢測。靜態檢測技術實現的方案也有很多,可以采用基于模式匹配的方案[10]、基于啟發式規則的識別方法[11]、基于機器學習的識別方法[12]等。它們的本質思路都是在獲得該網頁相關屬性信息的基礎上,不在仿真環境中實際運行該段代碼,而是通過與以前樣本的特征進行比較,通過不同的技術手段得出最終的結論。不同于黑名單檢測技術,需要完成整個字段的精確匹配,靜態檢測技術不需要了解惡意網頁的URL等詳細信息,可以根據網頁的屬性依據現有的規則進行匹配,來識別出部分目前還未被列入黑名單的網頁。因為其實現相對容易,代碼執行效率較高,被廣泛應用于一些主流的瀏覽器插件中。
著名網絡檢測系統Snort[13]運用的就是基于模式匹配的靜態檢測技術,它將已經檢測到的惡意網頁代碼的某些片段或關鍵語句,通過某種數學手段生成唯一的特征標識碼并存放在Snort特征庫中,特征碼通常具備一定的長度,來確保某個特征碼專門用于標識某一類特定的惡意網頁,同時也存有包含通配符的特征碼,用來檢測更多某種類型的變種惡意代碼。特征碼檢測方案中包含完全匹配特征碼檢測和模糊匹配特征碼檢測,前者要求待測網頁中存在和特征庫中的惡意特征碼完全相同的片段,后者則可以通過正則表達式等模糊匹配的方式來識別網頁中特定格式的代碼序列,為最終判決挖掘更多的有效信息。這類方案的缺點同樣在于特征庫的更新具有時效性,且隨著特征庫的內容越來越多,模糊匹配的要求越來越高,檢測所需要的資源開銷也在不斷增加。
基于啟發式規則的靜態檢測技術在很多瀏覽器插件中應用十分廣泛。該類檢測方法往往建立在對于惡意網頁的某些統計特征(如關鍵詞出現的頻率、特殊符號所占的比例等)是唯一的假設基礎上的。Lin等[14]在他們的實驗中展示了這一過程,他們將大量的惡意網頁樣本劃分為多個不同的類別,每一個類別中包括一個種類的惡意網頁代碼及其變形。接著對于每一個類別的惡意樣本,提取其共性的特點,為之創建模板,每一個類別都對應有一個或多個不同的模板。當待測網頁進入系統后,則根據其頁面信息計算與各個模板之間的距離,當與某個模板的距離小于相應的閾值時,則可以認為該待測網頁與該類模板相匹配,屬于該類的惡意樣本。Zhang等[15]提出了一套基于IE瀏覽器的工具插件Cantina,通過對網頁搜索的返回結果和網頁中敏感關鍵詞出現的詞頻等其他統計信息進行分析,建立啟發式規則庫對網頁進行檢測。啟發式規則的靜態檢測技術的缺陷在于,面對每日大量新出現的待測樣本,簡單的特征分布統計和啟發式規則已經無法滿足需求,主要體現在以下2個方面:首先誤檢率增高,因為啟發式規則的局限性和模糊匹配技術的使用,存在很多正常樣本由于某些代碼片段匹配某些模板,從而被誤判為惡意樣本;其次該方案的規則更新較難,規則的提取依賴于大量的專業知識和人工總結,因此規則更新的成本較高。
基于模式匹配和啟發式規則檢測的局限性,研究人員進一步提出了更加系統的基于機器學習的分類方法。作為靜態檢測技術的一個分支,其檢測的準確性雖不能與動態檢測技術同日而語,但是通過對分類器算法的改進和特征提取的優化,基于機器學習檢測方案的檢測率相較于其他靜態檢測技術已經有了很大的提高,且由于網頁檢測的數據量十分龐大,對檢測效率要求較高,也十分符合機器學習分類算法的使用場景,可以對分類器進行不斷的優化與迭代,使其檢測效果越來越好。Hou等[16]基于已有的惡意樣本建立起一套特征提取方案,并將未知網頁樣本映射到已有類別中,如圖2所示。
基于機器學習的惡意網頁檢測流程主要包括以下2個步驟。
1) 訓練:通過訓練樣本訓練出一個分類模型。每個訓練樣本都有一個分類的標簽,即該樣本是正常的還是惡意的。通過取足夠數量的分類樣本利用有監督學習算法,生成可以用來分類的數學模型。
2) 預測:根據待測樣本所提取出的特征分布信息,經過訓練好的分類器算法進行分類,判定出樣本的所屬類別。

圖2 基于機器學習的惡意網頁檢測流程
Justin等[17]提出了一套分類特征基于URL和主機(host)信息的輕量級分類器,并討論了不同機器學習算法在此場景下的表現差異。Yoo等[18]提出了基于誤用判決模塊和異常判決模塊的惡意網頁檢測系統,其中包含2個基于監督與半監督機器學習算法的不同類別的分類器,與傳統機器學習算法相比,該方案在正常樣本的誤檢率略微升高的情況下,顯著提升了惡意樣本的檢測率,但是檢測所消耗的系統資源也有所上升,對于使用條件的要求更為苛刻。Canali等[19]提出了一個基于URL地址的過濾器,補充在傳統的惡意網頁檢測系統之前,用以提升檢測速度,使現有系統更加適用于大數據量的場景。但由于該過濾器僅基于URL信息進行過濾,導致在檢測速率提高的情況下檢測效率有明顯下降。目前基于機器學習的檢測方法所面臨的問題主要有兩大類:首先是特征的優化和更新問題,因為分類算法的效率很大程度上取決于特征提取的代表性,且特征提取方案具有一定的時效性,當某一批特征的檢測效率過高后,會導致新一批的惡意網頁進行針對性的防范,因此特征的更新與升級是面臨的困難之一;第二,隨著互聯網的發展,惡意網頁的種類越來越多,每天所要檢測的未知樣本數量也逐漸增多,每個樣本的特征分析時間越來越長,因此檢測系統的工作負荷也越來越高,如何能夠降低特征提取的復雜度,減少每個樣本的檢測時間也是亟待解決的問題。
2.3 動態檢測技術
不同于上述的靜態檢測技術,動態檢測技術主要是通過將捕捉到的HTML或JavaScript源碼在虛擬環境中運行,將虛擬機用作誘餌,對待檢測網頁進行訪問,并在訪問的過程中實時檢測該網頁的動態行為(如超鏈接到其他網頁、遠程下載并執行可執行文件、創建注冊表等),以此來判斷待測網頁是否屬于惡意網頁。該方案的優勢在于對未知網頁樣本,不僅通過其顯示出的文本特征進行分類,而是將其放入虛擬環境中直接運行,并且誘導其在虛擬機中脫去外殼,表現出其真實目的,因此檢測的準確率極高。目前最具有代表性的動態檢測方案是蜜罐檢測技術[20],該方案由Holz和Koetter在蜜罐項目中提出,用于給未知樣本提供運行環境,并在蜜罐中實時檢測其每一步行為。傳統的蜜罐技術有低交互式服務器蜜罐和高交互式服務器蜜網[21],它們實際上是將故意暴露出系統漏洞的服務器,用作誘餌以吸引攻擊者對其進行攻擊并分析攻擊者的每一步行為。動態檢測技術在惡意網頁檢測領域的應用保證了對可疑樣本判決的準確性,但是動態檢測技術的弊病也是顯而易見的,無論是虛擬機脫殼引擎技術還是蜜罐檢測技術,檢測過程中的系統資源消耗和時間消耗都是十分巨大的,對于大樣本集的使用場景,該方案的可行性較差。此外,對于具有長期潛伏特性的惡意樣本,由于在虛擬機中并沒有完成脫殼,其真實意圖隱藏得很好,檢測效果也會受到影響。
2.4 惡意網頁檢測評價指標
對于惡意網頁檢測系統的綜合評價指標,主要分為兩類,功能指標和性能指標。其中,功能指標主要用于對檢測系統的分類效果進行評價;而性能指標主要用于對檢測系統的分類效率進行評價。
惡意網頁的分類問題,是一個二值分類問題,即檢測系統要將未知樣本分為正常樣本和惡意樣本兩大類,因此,要使用二值分類的評價指標對系統的分類效果進行評價,對于惡意樣本的判決能力和正常樣本的判決能力要分別獨立進行評定。系統的目的是為了挑選出存在于大量正常樣本中的惡意樣本,因此將惡意網頁樣本作為正樣本,正常網頁樣本作為負樣本,檢測系統分類結果的示意如圖3所示。檢測系統的功能指標主要分為以下五大類。

圖3 分類器功能指標示意
假設共有檢測樣本數量為M,則M=TP+FP+ FN+TN,其中每一項的含義如下。
TP(true positive): 被判決為正的正樣本的數量。
FP(false positive): 被判決為正的負樣本的數量。
TN(true negative): 被判決為負的負樣本的數量。
FN(false negative): 被判決為負的正樣本的數量。
根據這樣的樣本分類方式,有如下幾個評價指標,來全面衡量惡意網頁檢測系統的功能。
準確率(ACC, accuracy rate):指分類正確的樣本個數(包含分類正確的正樣本和分類正確的負樣本)占總樣本個數的比重。主要用于衡量檢測系統總體的準確程度。其中,T表示所有正樣本的個數,F表示所有負樣本的個數。

真正率(TPR, true positive rate):指分類正確的正樣本占正樣本總數的比重。主要用于衡量系統對惡意樣本的檢測能力。

假正率(FPR, false positive rate):指被誤判為正樣本的負樣本占負樣本總數的比重。主要用于衡量檢測系統對于正常樣本的誤判水平。

精確率(P, precision):指被正確分類的正樣本占所有被分類為正樣本的樣本總數的比重。主要用于衡量檢測系統對于惡意樣本的查準率。

召回率(R, recall):含義同TPR,主要與精確率進行對比,衡量系統對于惡意樣本的檢測能力。

對于檢測系統的性能指標,主要包括處理一個網頁所需要消耗的時間、單位時間內所能處理的網頁個數等。
3.1 TSMWD總體框架
如圖4所示,基于機器學習的惡意網頁檢測系統(TSMWD)包含4個模塊:數據采集模塊、特征提取模塊、數據處理模塊和分類判決模塊。數據采集模塊主要用于訓練樣本和待測樣本的獲取,其正樣本和負樣本由于數量上的差異,獲取方式有所不同。特征提取模塊用于對輸入的訓練或待測網頁內容進行解析,該模塊主要由2個子模塊構成,分別對應于2個不同的特征提取策略,即服務于TSMWD-I性能優先的特征提取方案和服務于TSMWD-II功性優先的特征提取方案。數據處理模塊的主要功能是將特征提取模塊中提取出的樣本特征進行歸一化、格式化等一系列處理,在分類器的訓練階段,該模塊還負責將樣本與其所屬類別的標簽進行一一對應,將提取出的特征和屬于該樣本的類別標簽以分類器需要的數據結構和數據格式進行輸入。最后是分類判決模塊,在經過訓練集中不同類別的樣本訓練后,根據待測樣本的特征分布,給出最終的分類判決結果。在TSMWD中,分類判決模塊主要由2個部分組成,第一部分為用于對大量未知樣本進行初步篩選的TSMWD-I,該分類器模塊的主要特點是對于惡意樣本十分敏感,惡意樣本的檢出率很高,因此對該模塊分類為正常的樣本可以直接作為最終結果而無需進行后續的任何操作。高TPR的同時也意味著對正常樣本有較高的誤判率,即FPR也較高,因此對于TSMWD-I分類為惡意的樣本,本系統暫作為未知樣本進行考慮,轉交TSMWD-II檢測模塊進行最終判決。因此根據不同的使用環境和檢測需求,選擇不同的分類算法以及各種分類算法的參數優化是這個模塊的重點。本節圍繞每個模塊的方案設計與實現方法進行詳細討論。

圖4 TSMWD框架
TSMWD系統的工作流程如圖5所示,首先,需要對大量的待測樣本由TSMWD-I的特征提取方案進行特征提取,經過數據處理模塊的歸一化、格式化處理后,由分類器TSMWD-I進行分類判決。若判決結果為負,即該樣本為正常樣本,則檢測全過程結束,該結果就是這個待測樣本的最終判決結果。若判決結果為正,即該樣本為未知樣本,則需要對當前的這個樣本進行相對耗時的二次檢測,需要再次通過TSMWD-II的特征提取方案進行特征提取,該部分的特征除了包含有TSMWD-I的相關特征外,對于混淆、正則、敏感詞出現頻率等提取相對復雜和耗時的特征有了進一步補充。經過數據處理模塊的歸一化、格式化處理后,由分類器TSMWD-II給出最終的判決結果。

圖5 TSMWD工作流程
TSMWD的整個工作流程大致包含2次側重點不同的檢測。其中,TSMWD-I的特征提取和分類判決更加注重效率,追求速度;而TSMWD-II則追求精確率和召回率。對于每日新增的待測樣本來說,由于正常樣本的占比遠高于惡意樣本,因此大多數的待測樣本都將會在TSMWD-I進行判決后就完成了整個檢測過程,只有少量表現出了相關惡意樣本特征的待測樣本,需要進行后續的第二模塊的檢測。因為TSMWD-I的檢測速率較高,能夠有效過濾大多數的正常樣本,因此系統總體的檢測時間會明顯縮減。在這樣的系統架構下,為了保證檢測系統的功能指標不受影響,必須最大限度地減少TSMWD-I造成的誤判,由于TSMWD-I中判定為正的樣本還會繼續進行檢測,所以負樣本的誤檢率(FPR)(即將正常樣本判定為未知樣本比率)并不會最終影響整個系統的功能指標。但是對于正樣本的誤檢率(FNR)(即將惡意樣本判定為正常樣本的比率),會導致待測樣本在未經過TSMWD-II分類判決的情況下直接得出錯誤的判決結果,從而影響整個檢測系統的準確率。為此,對TSMWD-I的分類算法進行了相應的校正,使其在整體最優邊界的基礎上向負樣本一側偏移,則其TPR和FPR會同時增高,FNR降低,對整個系統檢測率的影響達到最低。有關分類器算法的優化和參數調整,本節給出更加全面的闡述。
3.2 TSMWD特征提取方案
基于靜態方法的特征匹配檢測中必不可少的環節之一就是要能夠觀察并總結出惡意網頁所具有的特征,所以,通過分析從Metasploit[22]中提取出來的不同類別的惡意樣本,從多個角度和方面總結歸納惡意網頁所具有的特征。在設計的特征提取方案中,有些特征屬于強特征,即在正常樣本和惡意樣本中出現的頻率有較大差距。有些特征屬于弱特征,即在正常樣本和惡意樣本中都有出現的可能,但是基于某些統計規律,在正常樣本和惡意樣本中出現的頻率分布有一定的區別,這樣的特征也可以作為最終判決的一個參考因素。例如,對于注釋的使用,正常網頁中也會使用大量注釋,但注釋出現的位置一般存在于腳本代碼開始之前或結束之后,極少出現交替穿插于腳本代碼之間的情況;因此對于類似注釋這樣的弱特征,經過一定的修飾之后,也能夠對于系統的最終分類判決產生一定的正向影響。對于不同特征權重的平衡,將通過大量樣本的訓練由分類器完成。由于惡意腳本的表現形式靈活多變,普通的精確字符串匹配算法無法涵蓋所有形式的惡意腳本,在大量待測樣本環境中的匹配效率也不高,所以利用基于有限狀態機的正則表達式對惡意代碼特征進行匹配就成為特征片段抓取的有效方法。根據系統設計的總體布局可知,網頁源碼的內容及其整體的結構布局是對一個網頁進行評判的重要因素。因為本文采用靜態代碼檢測的方式對未知網頁的屬性進行判斷,因此在上文分析了多種不同的EK攻擊方式后,需要在了解其攻擊原理的基礎上,提煉其源碼的表面特征,這些特征大致需要具有以下特點。
1) 特征之間要盡可能相互獨立,將彼此間的相互作用降低到最小。
2) 特征的選取要基于正則、字符串匹配、關鍵字查找等相對速度較快的查詢操作,而不應該涉及頁面腳本代碼運行后的行為數據。
3) 特征選取的覆蓋面要盡可能廣泛。對大量的惡意代碼研究發現,惡意的代碼片段不僅會出現在JavaScript的腳本中,即便是解釋性的HTML或相對小眾的VBScript中也有可能出現。
4) 特征的選取要盡量具有代表性。因為提取出的惡意網頁特征,最終會用于訓練分類器,所以每一個設計出的特征,都需要在惡意樣本中出現的頻率和在正常樣本中出現的頻率有一定的區別,否則如果正常樣本中的出現頻次和惡意樣本中相近,則認為該特征的設計有一定缺陷,對于分類器的訓練并不能起到正向的幫助,并且是大量誤判產生的源頭,要盡可能將特征在設計時就做好區分度的調研,并且對容易造成誤判的敏感特征做進一步的優化和修飾。
同時,由于靜態惡意代碼檢測的最大優點在于系統運行的速度優于動態檢測,所以,在設計特征提取方案時,要考慮性能的最優化。特征提取模塊的總體框架如圖6所示,TSMWD系統特征提取主要分為三大塊,分別是HTML模塊、JavaScript模塊和VBScript模塊,其中JavaScript腳本中嵌入的惡意代碼片段最為頻繁,因此設計時對應的特征數量也最多。為避免網頁的多次讀取、相應關鍵數據可以先保存在內存中,以供不同的特征和方法進行調用。最后將所有待測網頁的特征寫入相應文件中,供后續模塊進行分析處理。
3.3 TSMWD-I分類算法優化
TSMWD的整個工作流程大致包含2次側重點不同的檢測,其中TSMWD-I的特征提取和分類判決更加注重檢測效率,追求速度,對于每日新增的待測樣本來說,由于正常樣本的占比遠高于惡意樣本,因此大多數的待測樣本都會在TSMWD-I進行判決后就完成整個檢測過程,只有少量表現出相關惡意樣本特征的待測樣本需要進行后續的第二模塊的檢測。因為TSMWD-I的檢測速率較高、能夠有效過濾大多數的正常樣本,因此系統總體的檢測時間會明顯縮減。在這樣的系統架構下,為了保證檢測系統的功能指標不受影響,必須最大限度地減少TSMWD-I造成的誤判,由于TSMWD-I中判定為正的樣本還會繼續進行檢測,所以負樣本的誤檢率(即將正常樣本判定為未知樣本比率)并不會最終影響整個系統的功能指標。但是對于正樣本的誤檢率(即將惡意樣本判定為正常樣本的比率),會導致待測樣本在未經過TSMWD-II分類判決的情況下直接得出錯誤的判決結果,從而影響整個檢測系統的準確率。

圖6 特征提取模塊的總體框架
因此,對于該模塊的分類,需要選擇在數據量較大的情況下運算量相對較小、速率相對較快的算法,且要具備相應的矯正因子。在該使用場景下,需要犧牲FPR,優先保證TPR,因為對于“疑似”的惡意樣本,盡管TSMWD-I分類器的結論更加傾向于該樣本屬于正常網頁,但從整個系統準確率的角度出發,不能接受在第一層判決模塊將惡意樣本誤判為正常樣本。反之,將正常樣本誤判為惡意樣本時,由于還要經過第二層檢測系統得出最終結論,所以這樣的情況只會造成運算效率上的一點影響,是在可接受的范圍內的。因此,對于這樣的“疑似”惡意樣本,更加希望TSMWD-I能夠給出未知的判決結果,這就需要將原算法給出的最優分隔線向正常樣本一側偏移。在這樣的情況下,惡意樣本的檢出率會得到提高,與此同時,被誤判為惡意樣本的正常樣本數量也會隨之上升。




將式(6)代入式(7)中可以得到擁有特征向量X的未知樣本d屬于類別c的概率轉化為





根據以上的訓練和預測方案,能夠構建一個基于最優分界線的樸素貝葉斯算法分類器。如圖7所示,在簡化的二維空間中,數目相對較少的深色點為惡意樣本,數目相對較多的淺色點為正常樣本。當采用標準的樸素貝葉斯分類算法時,完全根據概率的大小來選擇所屬的類別,則圖7中的黑色分隔線一定會出現在正常樣本和惡意樣本的交匯處。這會使整個系統的準確率相對較高,除了個別不符合特征分布規律的噪聲樣本外,主要的誤判都集中在分隔線兩側,即當屬于2個類別的概率比較接近時,容易造成分類的錯誤。在這種情況下,既有可能將正常樣本誤判為惡意樣本,也有可能將惡意樣本誤判為正常樣本。

圖7 最優分隔線模型
根據本節開頭的描述可以知道,TSMWD-I除了追求檢測效率以外,不能接受其將惡意樣本誤判為正常樣本。反之,將正常樣本誤判為惡意樣本時,由于還要經過第二層檢測系統得出最終結論,所以這樣的情況是在可接受范圍內的。因此對于這樣的“疑似”惡意樣本,更加希望TSMWD-I能夠給出未知的判決結果,這就需要將原算法給出的最優分隔線向正常樣本一側偏移。在這樣的情況下,惡意樣本的檢出率會得到提高,與此同時,被誤判為惡意樣本的正常樣本數量也會隨之上升,但從整個TSMWD系統的角度來說,其檢測準確率不會受到影響。因此需要對上述的樸素貝葉斯算法進行一些修正,使之能夠滿足人們的使用需求。在式(9)中引入一個矯正參數λ,在假設C0代表惡意樣本類別、C1代表正常樣本類別的情況下,將最終的預測模型轉變為

當λ>1時,會導致待測樣本被判別為惡意樣本的概率增加,圖7中的分隔線向正常樣本一側偏移,如圖8所示。在這樣的情況下,TSMWD-I的惡意樣本檢出率升高,與此同時,伴隨著一批正常樣本被判定為惡意樣本,正常樣本的誤檢率也隨之升高,符合在該場景上的分類需要。因此需要結合第二部分檢測模塊,通過對不同大小λ的嘗試,在檢出率和誤檢率間進行權衡,以找到能夠最大程度地提高系統檢測性能,同時又不影響系統檢測準確率的λ。

圖8 矯正分隔線模型
3.4 TSMWD-II 分類算法選擇
在TSMWD-I對海量待測樣本進行分類的基礎上,對于那些直接被分類為正常的待測樣本,不需要再經過該模塊的判決。對于TSMWD-I檢測模塊分類結果為惡意的待測樣本,本系統繼續視為未知樣本作為TSMWD-II的輸入,在TSMWD-I中提取的相關特征,已經保存在相應的中間文件中,所以可以直接通過讀取與之對應的特征信息獲取第一模塊中既有的特征數據,該待測樣本再經過TSMWD-II的特征提取模塊獲取一系列相對耗時的基于混淆加密、正則表達式匹配、比例計算等行為的高級特征,生成更為全面的特征文件,由TSMWD-II的分類判決模塊對該待測樣本給出最終的判決結果。與TSMWD-I模塊相比,TSMWD-II的分類算法主要有以下兩點不同。
1)由于TSMWD-I檢測模塊對海量正常樣本的過濾,TSMWD-II檢測模塊需要分類的待測樣本的數量是有限的,待測樣本相對較少,所以對于檢測率的敏感度沒有那么高,因此在TSMWD-II檢測模塊中可以不必過多地考慮算法優化對系統性能的影響,只需要關注如何提升該模塊的功能指標。
2) 在TSMWD-I中,需要保證惡意樣本的檢出率TPR足夠高,這樣才能將該模塊對系統總體性能的影響降到最低。因此,選擇了修正的樸素貝葉斯算法,在犧牲FPR的情況下提高了TPR,對于TSMWD-I的整體準確率會造成影響;而在TSMWD-II中,由于該模塊給出的判決結果已經是系統的最終分類結果,因此分隔線需要選取在最優位置,保證系統總體的準確率達到最高,而不再單一地關注惡意樣本的檢出率,忽略正常樣本的誤判率。
在上述2個原則的基礎上,本文調研了目前主流的機器學習分類算法,對不同類型的算法都進行了嘗試,從準確率、真正率、假正率這3個方面綜合比較了各分類算法的優勢和缺點,從而選擇出最適合該應用場景和特征提取方案的分類算法及參數模型。
在系統訓練和測試的整個流程中,由于惡意樣本數據集中的樣本個數相對較少,沒有足夠多惡意的樣本在保證訓練分類器迭代完成后,還能提供一套完整的惡意樣本測試集。為了消除噪聲及數據集劃分不具代表性對檢測系統測試結果的影響,采用交叉驗證(cross-validation)[24]的方式對檢測系統進行訓練與測試,其主要思想是將數據集隨機分成k個同樣大小的子集,依次選取其中的一個子集作為測試集,其余k?1個集合作為訓練集,經過k次訓練和測試后,將k次結果的平均值作為檢測系統最終的實驗數據。依次對KNN算法、決策樹算法(C4.5)、分類回歸樹(CART, classification and regression tree)算法和支持向量機(SVM, support vector machine)算法進行了十字交叉驗證,其中線性核函數的SVM算法表現最好,將其用于TSMWD-II檢測模塊的分類算法。對于該模塊不同分類算法實驗結果的對比和整個TSMWD系統的相關性能指標和功能指標與已有系統的對比及其應用場景,將在第4節系統實驗評測中進行詳細分析。
4.1 實驗環境
1) 硬件環境
CPU:Intel(R) Core i3-4130;
內存:DDR3 12 G;
硬盤:1 T,7 200轉/秒。
2) 開發環境
開發操作系統:Windows 7 旗艦版(64 bit);
機器學習開源框架:Scikit-learn、LibSvm;
開發語言及工具:C/C++、Python2.7.14、STL標準模板庫、boost C++庫、Visual Stidio2013、Pycharm、VMware、QT Creator 5.5。
4.2 TSMWD-I實驗結果
3.3 節提出了加入矯正因子λ的樸素貝葉斯分類算法,在λ>1的情況下,對于λ取不同的值,分隔線偏向正常樣本一側的程度不同,可以根據TPR與FPR的權衡選擇最適合當前需求的參數值。對已經采集到的1 428個惡意樣本與30 000個正常樣本,采用10次交叉驗證的方法,對于每個設定的λ進行10次實驗,將142個惡意樣本和3 000個正常樣本作為測試集,1 286個惡意樣本和18 000個正常樣本作為訓練集,經過10次實驗后,將實驗結果進行平均。如2.4節中的描述,從系統檢測的準確率、真正率、假正率3個方面對系統的整體檢測能力進行評估。實驗對比了不同λ取值下,TSMD-I的檢測能力,結果如表1所示。

表1 不同λ取值下TSMWD-I檢測能力對比
通過表1可以看到,當λ=1時,此時的TSMWD-I的分類算法就是傳統的未經修正的樸素貝葉斯算法,其準確率為78.30%,但是對于惡意樣本的檢出率只有76.10%,這意味著如果直接使用未經修正的樸素貝葉斯算法作為第一層檢測系統的分類算法,將會有23.90%的惡意樣本在TSMWD-I對正常樣本進行過濾時就已經被誤判,即便TSMWD-II的檢測性能再強大,也無法改變整個系統檢測性能不佳的事實。隨著矯正因子λ的增加,分隔曲線向正常樣本一側偏移,對于惡意樣本的檢測成功率也越來越高,即TPR不斷上升,但同時也有更多的正常樣本被誤判為惡意樣本,即FPR也隨之上升;由于正常樣本的數目相對龐大,所以模塊整體的準確率逐漸下降。但正如3.3節中描述的那樣,整體的準確率并不是該模塊追求的目標,TSMWD-I最重要的職責是為后續檢測系統過濾掉大部分的正常樣本,同時避免對惡意樣本的誤判。因此注意到,當λ=1.6時,惡意樣本的真正率已經高達96.30%,這意味著只有3.7%的惡意樣本會因為第一層檢測系統而被誤判。同時,假正率也已經高達42.20%,這意味著僅有57.80%的正常樣本會被第一模塊快速過濾,有42.20%的正常樣本依舊會被當作未知樣本交由后續檢測系統進行判決,在這樣的情況下,對于整個系統而言,速度的提升幅度受到了限制,因為有近一半的待測樣本最終還是需要被檢測相對耗時的第二模塊處理。本文對更多的λ取值進行了實驗,并根據實驗結果做出了在不同λ取值下,TPR和FPR之間相互權衡的經驗曲線,如圖9所示。隨著TPR的升高,惡意樣本的漏判率會降低,系統整體的檢測性能會變好;但與此同時,FPR會隨之升高,意味著有更多的正常樣本不能被過濾,需要由第二模塊給出最終判決結果,系統整體的檢測時間會變長。
因此,選擇合適的λ取值,也是系統整體對檢測效率和檢測速度之間的平衡,是功能指標與性能指標之間的平衡。4.3節將重點介紹TSMWD-II的分類器算法的選擇,然后將2個模塊相結合,對于TSMWD檢測系統整體的檢測速度和檢測性能在不同的λ取值下給出更為全面的評估和測試。
4.3 TSMWD-II實驗結果

圖9 不同λ取值下TPR與FPR的平衡曲線
在TSMWD的第二層檢測模塊中,分別對KNN算法(k=3、5、7取最優)、決策樹算法C4.5、分類回歸樹算法CART、和線性核函數的支持向量機SVM算法對TSMWD-II的特征提取方案所提取出的更為詳盡的特征向量進行最終的分類判決,其中訓練集和測試集的選取繼續選用與TSMWD-I相同的十字交叉驗證的方法,此處不再詳述。將分別從檢測的準確率、精準率(precision)和召回率(recall)這3個維度對不同分類算法的分類性能進行衡量,其中檢測的準確率用于衡量該模塊做出的判決中總體的正確率情況,精準率主要用于衡量該模塊對檢出的惡意樣本的查準率,召回率等同于真正率,用于衡量模塊對于惡意樣本的檢測能力。其實驗結果如表2所示,分類結果比較直方圖如圖10所示。

表2 TSMWD-II不同分類算法分類結果均值比較
根據該實驗結果發現,基于線性核函數的支持向量機分類算法在該模塊中對惡意樣本的檢出率、惡意樣本的查準率、整體判決結果的正確率都要優于其他3種分類算法,因此可以得出結論,TSMWD系統所使用的基于五大類的惡意網頁內容特征提取方案更加適用于SVM算法的分類器,且90%以上的準確率基本已經達到目前靜態惡意網頁代碼檢測前沿水平,因此選擇SVM算法作為TSMWD-II模塊的分類算法。
4.4 TSMWD系統整體性能評測
在評測整個TSMWD系統時,從系統判決的準確率、惡意樣本檢出率、正常樣本的誤判率這3個維度對系統的檢測能力進行評價。同時對于系統的檢測效率,通過對測試集中的樣本(惡意樣本142個,正常樣本3 000個)進行判決的時間進行測量,時間越短,則檢測效率越高。隨著TSMWD-I中λ參數的不同,整個系統的檢測效率也會發生變化,同4.2節一樣,對不同取值的λ進行多次測量后,給出其變化曲線。
在兩層檢測系統同時使用開始前,首先讓TSMWD-I和TSMWD-II對訓練集中的3 142個樣本進行獨立檢測,了解每個模塊獨立的檢測效率。通過10次實驗求平均后發現,TSMWD-I對該測試集完成分類所需要的時間為0.91 s,而TSMWD-II對該測試集完成分類所需要的時間為3.47 s,在完全各自獨立運行的情況下,TSMWD-I的檢測效率比TSMWD-II快了近3.5倍,這主要是源于前者簡易的特征提取方案,同時易于實現的樸素貝葉斯算法也為分類判決節省了大量時間。然后對整個系統進行了檢測能力和檢測效率的測試,其測試結果如表3所示,比較直方圖如圖11和圖12所示。

圖10 TSMWD-II不同分類算法分類結果均值比較

表3 不同λ取值下的TSMWD綜合性能
通過表3可以發現,當TSMWD-I模塊不存在時,意味著此時的λ趨向于無窮大,即第一檢測模塊將所有的樣本都判定為未知樣本交由第二模塊進行處理,此時TSMWD系統的檢測效率最低,時間開銷最大,為3.47 s,但是系統對于惡意樣本的檢測能力最強、準確率最高。當λ為1時,即TSMWD-I的樸素貝葉斯算法不進行任何修正,這時絕大多數的正常樣本都不再經過第二檢測模塊進行判決,整個系統的檢測效率得到顯著提升,檢測時間縮短為1.49 s。但是由于未經修正的第一檢測模塊對于惡意樣本存在大量的誤判,因此系統整體的檢測能力受到影響,準確率下降了近15%。引入了矯正因子λ后,隨著λ的不斷增加,被TSMWD-I過濾的正常樣本不斷減少,檢測時間有所上升;但是整個系統的檢測能力不斷提高,檢測準確率所受影響越來越小。當λ達到1.6時,可以發現,TSMWD系統相比于傳統的只有TSMWD-II的檢測系統在檢測效率上由3.47 s縮短為2.24 s,檢測效率提升約35%,且在系統檢測能力方面由于TSMWD-I的TPR很高,所以所受的影響非常少,僅由原先的93.57%下降為93.24%,檢測能力僅下降0.4%,依然維持在目前靜態惡意網頁檢測的前沿水平。
綜上所述,本文提出的基于機器學習的兩層惡意網頁檢測系統可以在幾乎不影響傳統檢測系統檢測能力的前提下,顯著提升原惡意網頁檢測系統的檢測效率,使之更加符合當前每日新增網頁數量井噴式的使用環境。
4.5 TSMWD與現有方案的對比

圖11 不同λ取值下的TSMWD檢測能力

圖12 不同λ取值下的TSMWD檢測效率
經過上述實驗可知,本文所提出的兩層惡意網頁檢測系統,能夠根據不同的使用環境與使用需求,通過調整參數λ進行檢測能力和檢測效率之間的相互轉換。本節將本文提出的檢測系統與現有的其他靜態惡意網頁檢測系統進行比較,由于本系統在注重檢測率的同時更加注重性能上的提升,而很多現有的研究方案僅給出了檢測能力上的評價指標,而沒有給出相應的檢測速率和檢測效率,所以對比主要在兩個維度上進行:一方面與現有解決方案進行檢測能力上的對比;另一方面與給出相應檢測速度的解決方案進行檢測效率上的對比。
將TSMWD惡意網頁檢測系統分別與Pawan等[25]提出的釣魚網頁檢測系統PhishNet、Sangho等[26]提出的惡意URL準實時檢測系統WarningBird、Likarish等[27]提出的惡意網頁檢測系統、Justin等[28]提出的惡意URL檢測系統Beyond Blacklists、Liu等[29]提出的釣魚網頁檢測系統進行對比。
在檢測效率方面,根據文獻[25]的描述,Google Safety Browser API大約需要80 ms的時間為每個惡意網頁URL在其數據庫中進行查詢,這其中還需要包括查詢數據分組和結果數據分組在網絡中傳輸所消耗的時間,而PhishNet將其檢測速率提升了約80倍,檢測出每個惡意URL的平均消耗時間為1 ms,該方案在啟發式規則提出的惡意URL檢測方案的基礎上進行改進,準確率能夠保證在90%以上。在WarningBird的項目中,系統消耗的時間主要分為3個部分,即域名分類、特征提取和分類模塊,主要時間消耗占比如圖13所示,其中對于每個URL檢測所消耗的時間少于3.6 ms,由于本文的系統是沒有域名分類模塊的,并且是根據網頁內容對其屬性進行判定,搜集網頁的數據采集模塊所消耗的時間是不計算在檢測系統的檢測時間內的,所以為了給出更合理的對比,除去圖13中耗時占比近一半的域名分組時間,從而平均每個URL的耗時大約在1.5 ms左右,與PhishNet相差無幾。對于WarningBird方案的準確率,文獻[26]中有相關數據,其系統檢測的準確率為91.53%,假正率為1.23%。
選擇TSMWD中λ=1.4時的測試結果與PhishNet和WarningBird的檢測效率及檢測準確率進行橫向對比,對比結果如表4所示。可以看到,在檢測速度方面,TSMWD相較于較快的PhishNet而言提升了約40%,相較于WarningBird提升了超過150%;在檢測能力方面,PhishNet提供的檢測數據有限,WarningBird檢測能力與TSMWD相當,準確率方面WarningBird略高一點點,真正率方面相對較弱,但總體屬于同一個水平,都已經達到了目前靜態檢測系統的較高水平。

表4 TSMWD與現有檢測方案檢測效率對比

圖13 WarningBird方案中檢測時間開銷
在檢測能力方面,將TSMWD與Justin等[28]提出的Beyond Blacklists、Likarish等[27]提出的混淆檢測系統、Liu等[29]提出的自動化檢測系統進行了對比,由于這些系統在其文獻中沒有提及到相關的性能參數,所以無法與之做檢測效率方面的對比。TSMWD與它們檢測能力的對比如表5所示。Justin的方案由于提出的時間較早,所以檢測能力上不如其余三者。其余3種方案的檢測總體準確率均維持在91%~92%,雖然說對于惡意樣本和正常樣本的檢出率各有所長,但對于未知網頁樣本的總體分類能力是非常接近的。

表5 TSMWD與現有檢測方案檢測能力對比
通過與現有靜態檢測方案在檢測效率和檢測能力指標上的對比可以發現,本文所提出的基于機器學習的兩層惡意網頁檢測系統TSMWD,能夠在檢測能力達到當今靜態檢測前沿水平的同時,顯著提高檢測的速度和效率,并且能夠通過對參數λ的調整,實現檢測時間和檢測效率的相互轉換。
隨著互聯網的不斷發展和普及,網頁數量正以井噴式的速度快速增加,這也為惡意網頁的產生提供了溫床。如何能夠在最短的時間內從大量的新增網頁樣本中篩選出惡意樣本,為惡意網頁檢測系統的研究提出了新的值得研究的課題。本文針對惡意網頁檢測中所遇到的各類問題進行了研究,針對當前傳統靜態惡意網頁檢測方案在面對海量的新增網頁時面臨的壓力,引入了兩段式的分析檢測過程,并依次為每段檢測提出相應的特征提取方案,通過層次化地使用優化的樸素貝葉斯算法和支持向量機算法,設計并實現了一種兼顧效率和功能的惡意網頁檢測系統TSMWD。第一層檢測系統用于過濾大量的正常網頁,其特點為效率高、速度快、更新迭代容易,真正率優先。第二層檢測系統追求性能,對于檢測的準確率要求較高,時間和資源的開銷上適當放寬。實驗結果表明,該架構能夠在整體檢測準確率基本不變的情況下,提高系統的檢測速度,在時間一定情況下,接納更多的檢測請求。
[1] 中國互聯網信息中心. 第37次中國互聯網絡發展狀況統計報告[R].北京: CNNIC, 2016.
CNNIC. The 37th report of China Inter development statistics[R]. Beijing: CNNIC, 2016.
[2] [EB/OL].http://www.securelist.com/en/analysis/.
[3] PROVOS N, MAVROMMATIS P, RAJAB M A, et al. All your iFRAMEs point to us[C]//Conference on Security Symposium. 2008:1-15.
[4] SHENG S, WARDMAN B, WARNER G, et al. An empirical analysis of phishing blacklists[C]//The Sixth Conference on Email and Anti-Spam (CEAS). 2009.
[5] ESHETE B, VILLAFIORITA A, WELDEMARIAM K. Malicious website detection: effectiveness and efficiency issues[C]//SysSec Workshop. 2011: 123-126.
[6] Making the Web safer[R/OL]. http://www.google.com/ transparencyreport/safebrowsing/?hl=en.
[7] Malware domain list[EB/OL]. http://www.malwaredomainlist. com.
[8] OpenDNS, PhishTank[EB/OL]. http://www.phishtank.com.
[9] PRAKASH P, KUMAR M, KOMPELLA R R, et al. Phishnet: predictive blacklisting to detect phishing attacks[C]//INFOCOM. 2010: 1-5.
[10] CHRISTODORESCU M, JHA S. Testing malware detectors[J]. ACM Sigsoft Software Engineering Notes, 2004, 29(4):34-44.
[11] CHOU, NEIL, ROBERT LEDESMA, YUKA TERAGUCHI, et al. Client-side defense against Web-based identity theft[C]//The 11th Annual Network & Distributed System Security Symposium (NDSS). 2004:1-16.
[12] HOU Y T, CHANG Y, CHEN T, et al. Malicious Web content detection by machine learning[J]. Expert Systems with Applications, 2010, 37(1):55-60.
[13] ROESCH M. Snort-lightweight intrusion detection for networks[J]. Lisa, 1999:229-238.
[14] LIN S F, HOU Y T, CHEN C M, et al. Malicious webpage detection by semantics-aware reasoning[C]//The Eighth International Conference on Intelligent Systems Design and Applications. 2008: 115-120.
[15] ZHANG Y, HONG J I, CRANOR L F. Cantina: a content-based approach to detecting phishing web sites[C]//The 16th International Conference on World Wide Web. 2007: 639-648.
[16] HOU Y T, CHANG Y, CHEN T, et al. Malicious Web content detection by machine learning[J]. Expert Systems with Applications, 2010, 37(1):55-60.
[17] JUSTIN M, SAUL L K, SAVAGE S, et al. Beyond blacklists: learning to detect malicious Web sites from suspicious URLs[C]//The 15th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. 2009: 1245-1254.
[18] YOO S, KIM S, CHOUDHARY A, et al. Two-phase malicious web page detection scheme using misuse and anomaly detection[J]. International Journal of Reliable Information and Assurance, 2014, 2(1).
[19] CANALI D, COVA M, VIGNA G, et al. Prophiler: a fast filter for the large-scale detection of malicious web pages[C]//The 20th International Conference on World Wide Web. 2011: 197-206.
[20] The German honeyclient project[EB/OL].http://www. chicagohoneynet.org/german-honeypot-holz.
[21] The Honeynet Project. Know your enemy: honeynets[EB/OL]. http://old.honeynet.org/papers/honeynet/.
[22] MAYNOR D. Metasploit toolkit for penetration testing, exploit development, and vulnerability research[M]. Elsevier, 2011.
[23] HAUTUS M L J. The formal Laplace transform for smooth linear systems[M]//Mathematical Systems Theory. Berlin:Springer, 1976: 29-47.
[24] GOLUB G H, HEATH M, WAHBA G. Generalized cross-validation as a method for choosing a good ridge parameter[J]. Technometrics, 1979, 21(2): 215-223.
[25] PRAKASH P, KUMAR M, KOMPELLA R R, et al. Phishnet: predictive blacklisting to detect phishing attacks[C]//INFOCOM. 2010: 1-5.
[26] LEE S, KIM J. Warningbird: a near real-time detection system for suspicious URLs in twitter stream[J]. IEEE Transactions on Dependable and Secure Computing, 2013, 10(3): 183-195.
[27] LIKARISH P, JUNG E, JO I. Obfuscated malicious javascript detection using classification techniques[C]//The 4th International Conference on Malicious and Unwanted Software (MALWARE). 2009: 47-54.
[28] MA J, SAUL L K, SAVAGE S, et al. Beyond blacklists: learning to detect malicious Web sites from suspicious URLs[C]//The 15th ACM SIGKDD international conference on knowledge discovery and data mining. 2009: 1245-1254.
[29] LIU G, QIU B, WENYIN L. Automatic detection of phishing target from phishing webpage[C]//The 20th International Conference on Pattern Recognition (ICPR). 2010: 4153-4156.
Study of high-speed malicious Web page detection system based on two-step classifier
WANG Zheng-qi1,2, FENG Xiao-bing1,2, ZHANG Chi1,2
(1. University of Science and Technology of China, Hefei 230026,China; 2. Key Laboratory of Electromagnetic Space Information, Chinese Academy of Sciences, Hefei 230026,China)
In view of the increasing number of new Web pages and the increasing pressure of traditional detection methods, the naive Bayesian algorithm and the support vector machine algorithm were used to design and implement a malicious Web detection system with both efficiency and function, TSMWD , two-step malicious Web page detection. The first step of detection system was mainly used to filter a large number of normal Web pages, which was characterized by high efficiency, speed, update iteration easy, real rate priority. After the former filter, due to the limited number of samples, the main pursuit of the second step was the detection rate. The experimental results show that the proposed scheme can improve the detection speed of the system under the condition that the overall detection accuracy is basically the same, and can accept more detection requests in certain time.
malicious Web page detection,network security,machine learning,feature extraction
The National Natural Science Foundation of China (No.61202140, No.61328208)
TP393
A
10.11959/j.issn.2096-109x.2017.00186

王正琦(1992-),男,江蘇鎮江人,中國科學技術大學碩士生,主要研究方向為網絡安全。

馮曉兵(1992-),女,山東聊城人,中國科學技術大學碩士生,主要研究方向為網絡安全。

張馳(1977-),男,中國科學技術大學副教授、博士生導師,主要研究方向為計算機網絡、信息安全。
2017-05-27;
2017-07-22。通信作者:王正琦,wzqwzq@mail.ust.edu.cn
國家自然科學基金資助項目(No.61202140, No.61328208)