何智帆 姜和芳 劉濤 姚興博
摘?要:隨著互聯(lián)網(wǎng)技術(shù)的飛速發(fā)展,人們對互聯(lián)網(wǎng)的需求日益增加,同時互聯(lián)網(wǎng)安全問題也逐漸引起人們的重視。其中,惡意URL(Malicious URLs)是網(wǎng)絡(luò)安全研究的重要內(nèi)容,因此實現(xiàn)對惡意URL的有效偵測對網(wǎng)絡(luò)安全至關(guān)重要。本文介紹了惡意URL檢測的應(yīng)用背景及實現(xiàn)步驟,根據(jù)其攻擊方式,歸納總結(jié)了兩種常用的攻擊方法,然后介紹了機器學習及特征工程在該領(lǐng)域中的應(yīng)用情況,最后總結(jié)了現(xiàn)有方法不足之處,并對未來的研究方向做出了展望。
關(guān)鍵詞:互聯(lián)網(wǎng)安全;惡意URL檢測;機器學習;特征工程
Abstract:With the rapid development of Internet technology,people's demand for the Internet is increasing day by day,and at the same time,the Internet security problem has gradually attracted people's attention.Among them,malicious URL (Malicious URLs) is an important part of network security research,so it is very important to realize the effective detection of malicious URL for network security.This paper introduces the application background and implementation steps of malicious URL detection,and summarizes two common attack methods.Then this paper introduces the application of machine learning and feature engineering in this field,finally summarizes the shortcomings of the existing methods,and discusses the future research direction.
Keywords:Internet security;Malicious URL detection;Machine learning;Characteristic Engineering
1 概述
隨著互聯(lián)網(wǎng)以及移動互聯(lián)網(wǎng)的發(fā)展,越來越多的Web應(yīng)用出現(xiàn)在應(yīng)用市場上,人們利用鏈接便利地訪問網(wǎng)上資源。但與此同時,不法分子會尋找其中的漏洞進行違法行為,惡意URL(Malicious URLs)便是其中之一。惡意鏈接檢測任務(wù)[1-2]通常是對陌生的網(wǎng)絡(luò)鏈接進行檢測并判斷其是否屬于惡意鏈接。URL作為訪問網(wǎng)絡(luò)資源的入口,常常會被不法分子們通過某些手段所利用,如惡意URL中涉及惡意程序以及腳本等,惡意程序會在用戶的計算機上下載腳本或者執(zhí)行命令,這極大地侵害了用戶計算機安全。除了在個人領(lǐng)域遭到威脅之外,近些年互聯(lián)網(wǎng)公司中也相繼發(fā)生各種安全威脅,惡意網(wǎng)站是網(wǎng)絡(luò)安全中重要的威脅,它是病毒、蠕蟲和其他惡意代碼在線傳播重要工具。惡意URL可以通過電子郵件鏈接、瀏覽器彈出窗口、文本消息、頁面廣告等進行形式傳遞,指向不可靠網(wǎng)站的鏈接,或者嵌入了非法下載內(nèi)容。在當今的網(wǎng)絡(luò)安全態(tài)勢下,如何應(yīng)對網(wǎng)絡(luò)攻擊與保障信息安全,必須納入網(wǎng)絡(luò)安全人員的考慮之中。這對人們?nèi)粘I?、企業(yè)的經(jīng)營發(fā)展以及政府的機密信息安防都有著重要的影響。
想要對惡意URL實現(xiàn)有效的檢測,首先需要了解其常見的攻擊形式,本部分整理了兩種常見的惡意URL攻擊形式,包括XSS攻擊和SQL注入。
1.1 XSS攻擊
XSS攻擊(Cross Site Scripting)[5]是另一種廣為人知的Web攻擊方式。XSS攻擊類型有三種,分為反射型XSS、存儲型XSS以及DOM型XSS,其中反射型XSS與存儲型XSS一般通過構(gòu)造URL請求或者在服務(wù)器植入惡意腳本實現(xiàn)網(wǎng)絡(luò)攻擊,用戶訪問服務(wù)器時就會接收到惡意腳本。DOM型XSS攻擊其實是流量劫持,通過提供一個網(wǎng)關(guān)截取用戶信息,實現(xiàn)腳本攻擊。
1.2 SQL注入
SQL注入[5-7]通過修改SQL語句侵害數(shù)據(jù)庫信息。一般來說,互聯(lián)網(wǎng)企業(yè)會將用戶信息和自身提供的資源存放在服務(wù)器中。在B/S(Browser/Server)開發(fā)模式下出現(xiàn)的Web應(yīng)用中,用戶獲取資源只需在瀏覽器端使用簡單點擊或填寫操作,就可以獲取服務(wù)器資源,而底層的實現(xiàn)原理就是利用SQL語句操作數(shù)據(jù)庫。
2 惡意URL檢測方法
URL是互聯(lián)網(wǎng)上資源的一種定位標志[8],一個完整URL的一般形式為:
[協(xié)議]://[主機號]:[端口號]/[文件路徑]?[查詢]
下表以一條URL為例,具體介紹其組成形式。
根據(jù)上表可以清晰地了解一般URL的組成成分,這是因為人腦可以對其進行分詞,并對各個部分的含義進行猜測,如上述鏈接中的“webclub”我們會理解為“網(wǎng)頁部門”。但是URL在機器中就是一串連續(xù)的字符串,機器也無法像人類一樣對其含義進行猜測。因此我們要在機器學習的過程中完成以下兩部分:URL分詞與其向量表示。
傳統(tǒng)的惡意URL檢測方法比如黑名單技術(shù)[9]、規(guī)則技術(shù)[10],它們的檢測能力已經(jīng)呈現(xiàn)下降趨勢,難以應(yīng)對新型的網(wǎng)絡(luò)攻擊手段。近年來,隨著人工智能研究的逐漸火熱,機器學習技術(shù)在眾多領(lǐng)域也能大放異彩,這為網(wǎng)絡(luò)安全的鞏固帶來了新的思考,研究者們也提出了許多相應(yīng)的解決策略,其中基于機器學習[11]以及特征工程[12]的惡意URL檢測是一大研究方向,也是一項基礎(chǔ)而重要的技術(shù)。
2.1 基于機器學習的惡意URL檢測方法
基于機器學習的惡意URL檢測實現(xiàn)過程如下:
(1)獲取具有正常請求和惡意請求的數(shù)據(jù)集。
(2)對數(shù)據(jù)集進行預(yù)處理,包括劃分訓練集、測試集等。
(3)對原始數(shù)據(jù)集進行特征抽取,并轉(zhuǎn)化為向量形式,以輸入模型。
(4)選擇合適的機器學習的算法,使用特征矩陣訓練檢測模型。
(5)根據(jù)測試集計算模型的準確度,判斷是否需要繼續(xù)優(yōu)化。
(6)將訓練完的模型導(dǎo)出并應(yīng)用,輸入一條URL,判斷其是否為惡意URL。
以上步驟總結(jié)為流程圖如圖1所示:
2.2 基于特征工程的研究方法
在機器學習模型訓練的過程中,獲取優(yōu)質(zhì)的特征信息至關(guān)重要,特征工程模塊是使用專業(yè)背景知識和技巧處理數(shù)據(jù),使得特征能在機器學習算法上發(fā)揮更好的作用的過程,特征工程的好壞會直接影響機器學習的效果。在惡意URL檢測中,該模塊的任務(wù)是將原始URL數(shù)據(jù)進行特征提取,并轉(zhuǎn)化成機器學習算法或模型能夠讀取的數(shù)據(jù),即向量。一般的技術(shù)路線如圖2所示,其中特征抽取常用的方法包括字典特征提?。╯parse矩陣、one-hot編碼等)、文本特征提?。–ountVectorizer、TfidfVectorizer等),特征預(yù)處理主要是做無量綱化處理,包括歸一化、標準化,特征降維主要包括特征選擇(刪除低方差特征、相關(guān)系數(shù))和主成分分析PCA等。
在此我們主要將現(xiàn)有的基于特征工程的方法分為三類:
2.2.1 基于URL分詞
在深度學習的自然語言處理(Natural Language Processing,NLP)領(lǐng)域,學者們根據(jù)分詞任務(wù)的不同,將現(xiàn)有工具分為三類。其一,在中文領(lǐng)域常見的工具有jieba、THULAC、pynlpi和snowNLP等;其二,在英文領(lǐng)域常見的工具有NLTK,Spacy等。其三,觀察URL不難發(fā)現(xiàn)URL中常出現(xiàn)一些特殊符號,因此可選用特殊符號作為分隔符來進行分詞,即調(diào)用re包。
2.2.2 基于文本的URL特征提取
周磊等[2]在研究時,建立了一個檢測模型,并設(shè)計了兩種URL數(shù)據(jù)形式:僅依靠URL文字特征和聯(lián)合URL文字特征與遠程主機信息,在實驗結(jié)論中,僅依靠URL文字特征就能達到97%的準確率,同時減少了訪問遠程主機的開銷,在計算和內(nèi)存需求方面都很輕便。
2.2.3 基于特殊字符的特征提取
在Warner G和Solorio T[8,13]研究中,使用URL文本的特殊符號作為分詞標準,利用剩下的單詞構(gòu)建語料庫詞典,然而這種分詞技術(shù)忽略了文本中特殊字符本身的重要意義。此外,惡意URL中出現(xiàn)特殊符號的數(shù)量和種類較多,頻率也比較高,所以這會成為URL分類的一個重要特征。
結(jié)語
本文主要分為兩部分對惡意URL檢測方法進行研究,分別是基于機器學習以及基于特征工程的方法??傮w來看,現(xiàn)有的方法已經(jīng)能解決絕大多數(shù)問題,但是仍然存在以下不足之處:
(1)目前絕大多數(shù)檢測方法仍基于原始字符串以及惡意網(wǎng)站的鏈接,缺乏對網(wǎng)頁內(nèi)容的直接判斷。如果可以把網(wǎng)頁內(nèi)容同樣作為判斷依據(jù),則可大大提升對惡意網(wǎng)站的屏蔽效果。
(2)目前的分類指標較為單一,除了將某一鏈接定義為惡意鏈接之外,還可以對其所屬類型進行進一步分類,例如屬于仿冒網(wǎng)站或是黑客入侵等。
參考文獻:
[1]李澤宇,施勇,薛質(zhì).基于機器學習的惡意URL識別[J].通信技術(shù),2020,53(02):427-431.
[2]周磊.基于深度學習的惡意URL檢測方法[D].長江大學,2021.
[3]賈雪鵬.釣魚網(wǎng)頁聯(lián)合特征與智能檢測算法研究與實現(xiàn)[D].西安工業(yè)大學,2018.
[4]鄒聯(lián)揚.基于深度學習的釣魚網(wǎng)頁檢測方法研究[D].西安科技大學,2020.
[5]羅超超.基于深度學習的SQL注入和XSS攻擊檢測技術(shù)研究[D].中國工程物理研究院,2020.
[6]張登峰.基于機器學習的SQL注入檢測[D].重慶郵電大學,2017.
[7]陳君新.基于機器學習的XSS攻擊檢測技術(shù)研究[D].浙江工業(yè)大學,2018.
[8]M.X,L.H,X.L.A Refined TF-IDF Algorithm Based on Channel Distribution Information for Web News Feature Extraction[C].In:2010 Second International Workshop on Education Technology and Computer Science,2010:15-19.
[9]Khan F,Ahamed J,Kadry S,et al.Detecting malicious URLs using binary classification through adaboost algorithm[J].International Journal of Electrical and Computer Engineering(IJECE),2020,10(1):997-1005.
[10]M.S K,B.I.Frequent rule reduction for phishing URL classification using fuzzy deep neural network model[J].Iran Journal of Computer Science,2021,2(4):85-93.
[11]Kumi S,Lim C,Lee S.Malicious URL Detection Based on Associative Classification[J].Entropy,2021,23(2):1-12.
[12]N.S G,Anjali M.Feature Engineering Framework to detect Phishing Websites using URL Analysis[J].International Journal of Advanced Computer Science and Applications(IJACSA),2021,12(7).
[13]X.P,J.C,Y.X,et al.Which Feature is Better? TF*IDF Feature or Topic Feature in Text Clustering[C].In:2012 Fourth International Conference on Multimedia Information Networking and Security,2012:425-428.
作者簡介:何智帆(1980—?),男,漢族,廣東興寧人,學士,會計師,研究方向:電力計量管理;姜和芳(1994—?),女,漢族,山東煙臺,學士,助理工程師,研究方向:電能量數(shù)據(jù)管理;劉濤(1980—?),男,漢族,湖北石首,博士,高級工程師,研究方向:電力計量自動化。
*通訊作者:姚興博(2004—?),男,漢族,江蘇徐州人,本科,研究方向:智能數(shù)據(jù)處理與信息安全。