毋澤南,田立勤,,王志剛
?
基于機器學習的Web用戶行為認證
毋澤南1,田立勤1,2,王志剛2
(1. 華北科技學院計算機學院,北京 101601; 2. 青海師范大學計算機學院,青海 西寧 810008)
針對Web用戶信息的安全問題,結合機器學習的方法,對用戶行為進行分析和認證。首先通過主成分分析法對原始數據集做降維處理,然后利用SVM算法,讓計算機對歷史用戶行為證據進行學習,得到一個判別用戶身份的模型。實際應用和理論分析表明,該模型在用戶行為認證判別上,可以更準確和高效地分類出危險用戶和可信用戶,為諸如電子商務、網絡金融等關鍵網絡應用用戶行為的高性能分析奠定堅實的理論和實踐基礎。
信息安全;用戶行為認證;支持向量機;主成分分析
近年來,互聯網技術得到了迅猛發展,社會各行業以及人們的生活越來越離不開互聯網。人們在享用互聯網技術帶來便利的同時,也感受到互聯網所面臨的諸多挑戰和問題。互聯網的開放性、動態性和共享性,使不法分子利用互聯網危害社會,損害人們的利益。如何有效地保護用戶信息、抵御黑客攻擊以及預防電信詐騙已經成為當今社會關注的重點。
文獻[1]中首次提出了可信網絡的概念,主要闡述了對行為狀況的監控、行為的分析與評估、異常行為的監管要求;但只是宏觀上研究了用戶行為可信的總體架構和信任評估機制等,并沒有對此提出具體的研究方法。在用戶行為的認證方面,文獻[2]提出了云計算環境下的用戶行為認證模型,該模型結合隨機Petri網進行數學建模,缺點是對用戶行為認證集分析得不夠全面。文獻[3]提出了權重均衡優化的Web用戶行為的信任評估,通過將主觀權重與客觀權重相結合,得出集成權重,該方法有效地權衡了主客觀對用戶行為分析帶來的影響。缺點是該評估方法沒有對用戶行為的歷史證據集做降維操作,不利于對用戶行為進行分析和認證,結果準確率較低。文獻[4~8]建立了動態評估的用戶行為模型,且通過分析大量用戶行為證據來甄別系統中行為異常的用戶,但是整體模型架構復雜度較高,且不易通過編程完成;同時,當用戶行為證據的數量偏大時,整個模型的運算速度很慢,這會影響到用戶行為評估的實時性,因此該類模型的運算性能不高,導致推廣價值不高。
本文借鑒了上述相關研究成果,提出了基于主成分分析法和支持向量機(SVM, support vector machine)相結合的最優化機器學習模型。以筆者開發的用戶行為信任評估平臺系統所獲取的真實數據為例,對PCA-SVM方法進行用戶動態行為認證建模過程進行實驗分析。通過多次實驗計算和分析說明,相對于其他的用戶行為認證方法,PCA-SVM有更高的評估檢測準確率和分類效率。
用戶行為證據通常是指用戶進行一系列操作的具體表現形式,如何獲取有效的證據是進行用戶行為認證的前提。針對如何獲得大量、可靠的用戶行為數據,文獻[9]給出了常用的幾種方法。
1) PC機上的入侵檢測系統,如Sguil和Tcpdump,可以用于網絡安全分析,搜集實時的事件活動,獲得用戶訪問次數等。
2) 利用網絡流量分析工具,如Bandwidthd,可以獲取網關的各種協議,查看數據分組的傳送速率。
3) 通過Web日志分析用戶行為。
4) 基于Ajax的單擊流捕獲工具,可以獲得用戶動作信息,如用戶對鼠標的一系列操作以及對網頁的某些操作。
本文為了更好地驗證用戶行為認證模型的準確率,文中實驗所用的數據來源于筆者開發的一個電子商務網站,該系統基于JavaScript和form表單提交,從用戶登錄直到退出,所有的一系列動作會被獲取并提交到后臺進行處理,然后存入數據庫。
由于所獲得的用戶行為證據的單位大多各不相同,如用戶輸入密碼錯誤總次數、用戶使用操作系統的歷史出現率。因此,在進行建模前需要對搜集到的用戶歷史行為證據做進一步的處理,以便將所獲得的用戶行為數據轉化到[0,1]范圍內。本文采用了無量綱化的方法。文中用到的17種用戶行為的證據類型可分為:數值型、百分比類型和布爾類型。
1) 由于百分比類型和布爾類型的數據本身就在[0,1]范圍內,因此可利用式(1)進行處理。

2) 整數類型的用戶行為證據包括用戶輸入退格數、輸入用戶名或者密碼錯誤的總次數、購物下載圖書量等,針對這類證據集,使用式(2)進行規范化處理。

3) 原始數據無量綱化的過程。以“用戶輸入密碼的錯誤次數”為例,最近一次的行為證據中,得到“用戶輸入密碼的錯誤次數”為2,用戶行為證據中,該證據的最大值為3,最小值為0,該證據值為非安全型證據,根據式(2),可以很容易計算出該證據的無量綱化值為0.333;依次類推,可以得出其他證據的無量綱化值。
用戶行為證據具有較高的維數,本文選取了17種,為了提高用戶行為信任評估的準確率和效率,本文采用 PCA 對用戶行為最初的樣本數據做降維處理,提取與分析結果相關的重要特性。PCA基本原理是首先對原始數據維屬性矩陣進行處理,并在空間中進行坐標旋轉。通過PAC可以使原始樣本在不改變數據結構情況下,得到用戶行為數據的主成分線性組合,且兩兩獨立相關,這樣就可以更好地將原始數據中的有效成分保留下來。下面介紹PCA在用戶行為證據集中應用的主要步驟。
4) 求出協方差矩陣的特征向量和特征值。

本文選取了17種用戶行為證據集,通過上述計算,最終確定了6種主成分。
支持向量機是一種監督式學習的分類算法,是Vapnik[10]于1995年首先提出的,多用于統計分類以及回歸分析,其優勢在于解決小樣本、高維模式識別以及非線性的分類。同時,它能夠很好地應用推廣到函數擬合等其他的機器學習中。綜合以上這些優點,本文選用支持向量機對用戶在互聯網環境中的行為進行研究。



圖1 SVM線性分類

該方法的關鍵在于如何選取合適的核函數,一般應用的核函數主要有以下4種。
綜上所述,SVM分類的最終目標就是找到一個最優分類超平面,且這個超平面使2個類別之間的間隔最大。要使這個間隔最大,即求解式(3)所示問題。





本文采用RBF作為支持向量機的核函數,所以最終的決策函數為

總體來說,對于線性不可分的情況,支持向量機通過選取比較合適的核函數,將輸入樣本空間映射到高維空間,這樣就可以在高維特征空間中構造出用于分類的最優超平面。因此,SVM不僅可以在平面上對數據進行分類,而且可以對本身不好分的非線性數據進行分類。如圖2所示,樣本數據在二維空間平面上無法進行有效劃分,通過SVM的核函數,映射到三維空間中進行分類。

圖2 SVM非線性分類
關于SVM分類模型的選擇,目前還沒有太多的經驗與實力可供參考,因此只能通過大量實驗分析及確定。
3.3.1 數據格式轉換

3.3.2 RBF核函數參數的確定
目前,在認證用戶行為時,大部分情況下都是使用用戶最近一次的用戶行為所產生的數據進行評價,這種方法所得出的結果是不合理、不可靠的,因為用戶每次的行為是習慣的一種具體表現,而習慣又是一個人長久養成的生活方式,如果用戶的行為出現異常,那么該異常應該體現在需評估用戶行為與習慣用戶行為的差異上,因此需要綜合歷史用戶行為和需評估用戶行為。
使用支持向量機進行用戶行為認證的整體過程主要分為:訓練學習階段和實際預測階段,具體實現過程包括如下幾個步驟(如圖3所示)。
1) 數據的收集和預處理。本文中實驗用到的數據來源于筆者開發的一個用戶行為監測系統,該系統是基于Java實現的Web系統,由JSP頁面和后臺控制程序組成,其主要的功能有圖書的借閱、查詢、購買、下載和用戶個人信息管理等。這些用戶行為證據可根據2.2節進行規范化處理操作。
2) 主成分提取。本文采用了 PCA 對用戶行為的原始樣本數據做降維處理,以便獲取與檢測結果相關的重要行為特征。
3) SVM的輸入與輸出。本文對用戶行為認證的訓練是以用戶訪問的歷史行為數據作為SVM的輸入,而輸出對應的則是用戶行為認證結果。通過尋找輸入域輸出的依賴關系更加準確地預測用戶的合法性。
4) 參數調優。選取合適的參數,對訓練模型構建起著關鍵作用,但由于支持向量機中包含多個參數,而且目前關于參數的選擇并沒有非常有效的方法,更多的是根據平時的經驗,首先大致判斷出一個范圍,然后進行多次訓練。
5) 構建評估模型。根據3.2節選擇不同的核函數,結合訓練樣本進行系統訓練,通過對比分析,獲得最優的用戶行為認證模型。
6) 對測試樣本進行預測與分類。通過使用SVM構造的模型對測試樣本進行預測和分析,并輸出用戶行為認證的結果。

圖3 用戶行為認證流程
本文實驗數據來源于自己開發的一個電子圖書商務網站,用戶可以在上面進行購買、下載、查詢等操作,這樣系統后臺獲得的數據較為真實,本文選取17種用戶行為證據作為研究,分別為:1) 用戶所用操作系統類型的出現率;2) 用戶訪問所用瀏覽器歷史出現率;3) 計算機操作系統版本出現率;4) 用戶IP歷史出現率;5) 用戶計算機屏幕分辨率歷史出現率;6) 用戶登錄時所在地的歷史出現率;7) 輸入用戶名時的退格數;8) 輸入密碼時的退格數;9) 輸入用戶名錯誤總次數;10) 輸入密碼錯誤總次數;11) 使用銀行賬號歷史出現率;12) 購買圖書總次數;13) 下載圖書總流量;14) 下載圖書總次數;15) 訪問敏感服務總次數;16) 用戶退出時的信任值;17) 登錄時間信任值。



表1 模型的誤報率和檢測率
圖4和圖5分別表示本文所提出的算法與其他幾種常用算法的檢測誤報率對比和檢測成功率對比。其中,誤報率是指認證成功但實際為危險用戶占可信用戶的比率。因此,在用戶行為認證中,誤報率是一項重要的性能指標,如果誤報率過高,則會影響系統對用戶的判定。本文算法的中心思想是綜合PCA和SVM對用戶行為數據進行認證與預測,采用PCA算法可以很好地消除用戶行為證據集中的重復信息,有效降低原始數據的維數,增強證據間的耦合性,有助于提高實驗檢測效率。這也證明,SVM技術可以很好地適用于用戶行為認證中。

圖4 誤報率比較

圖5 檢測率比較
從圖4和圖5的算法比較來看,本文提出的PCA-SVM算法的誤報率要好于其他2種算法,說明本文算法中SVM的算子和參數選擇比較成功。同時,與神經網絡相比,本文算法的優點在于,它不僅訓練速度較其他2種算法更快,而且當用戶行為證據集發生小的變動時,它并不需要變更算法中的算子和參數,這樣分類效率更高。
本文通過筆者開發的用戶行為認證平臺,結合LIBSVM工具進行實驗,通過多次實驗分析,選擇了PCA與SVM相結合作為用戶動態行為認證的分類器。為了降低實驗的工程量,在確定SVM的核函數和核參數時,首先進行了理論分析與比較,先確定出參數的大概取值范圍,再通過交叉驗證法進行選擇。與傳統的用戶行為認證不同,本文利用機器學習的方法,通過訓練模型,使計算機自動對用戶行為進行分類,與傳統方法相比,很好地提升了分類的效率。
實驗結果表明,本文提供的基于PCA-SVM的分類器對用戶行為認證具有較好的表現,同時具有較高的檢測率。接下來的研究重點是對用戶行為認證進行更深一步的學習,尤其在核函數的參數設置上,希望能找到最優的核函數,并通過與更多的算法進行比較分析,完善和改進SVM算法。
[1] 林闖, 田立勤, 王元卓. 可信網絡中用戶行為可信的研究[J]. 計算機研究與發展, 2008, 45(12):2033-2043 .
LIN C, TIAN L Q, WANG Y Z. Study on trusted users' behavior in trusted network[J]. Journal of Computer Research and Development, 2008, 45 (12): 2033-2043.
[2] 陳亞睿, 田立勤, 楊揚 . 云計算環境下動態用戶行為認證的機制、模型與分析[J]. 系統仿真學報, 2011, 23(11): 2302-2307 .
CHEN Y R, TIAN L Q, YANG Y. Mechanism, model and analysis of dynamic user behavior authentication in cloud computing environment[J]. Journal of System Simulation, 2011, 23 (11): 2302-2307.
[3] 田立勤, 李君建, 毋澤南. 權重均衡優化的Web用戶行為的信任評估[J]. 北京郵電大學學報, 2016, 39(6):99-103 .
TIAN L Q, LI J J, WU Z N. Trust assessment of Web user behavior based on weight balance optimization [J]. Journal of Beijing University of Posts and Telecom, 2016,39 (6): 99-103.
[4] 郭樹凱, 田立勤, 沈學利. FAHP在用戶行為信任評價中的研究[J]. 計算機工程與應用, 2011, 47(12):59-61 .
GUO S K, TIAN L Q, SHEN X L. Research on FAHP in user behavior trust evaluation[J]. Computer Engineering and Application, 2011, 47 (12): 59-61.
[5] LI W, PING L D, LU K J, et al . Trust model of users' behavior in trustworthy Internet[C]//2009 WASE International Conference on Information Engineering, Piscataway. 2009:403-406 .
[6] LIU W, REN P, LIU K, DUAN H X . User cooperation trust model and its application in network security management[C]//2011 Eighth International Conference on Fuzzy Systems and Knowledge Discovery (FSKD).2011:2335-2339 .
[7] BROSSO I, NEVE A L, BRESSAN G, et al. A continuous authentication system based on user behavior analysis[C]// Ares '10 International Conference on Availability, Reliability, and Security. 2010: 380-385.
[8] NOOR T H, SHENG Q Z, ALFAZI A. Reputation attacks detection for effective trust assessment among cloud services[C]// IEEE International Conference on Trust, Security and Privacy in Computing and Communications. 2013:469-476.
[9] 冀鐵果, 田立勤, 等.可信網絡中一種基于AHP的用戶行為評方法[J]. 計算機工程與應用, 2007,43(19):123-127.
JI T G, TIAN L Q, et al. A AHP-based user behavior assessment method in trusted network[J] .Computer Engineering & Applications, 2007,43 (19): 123-127.
[10] 萬普尼克.統計學習理論[M].北京: 電子工業出版社, 2009.
VAPNIK. Statistical Learning Theory[M]. Beijing: Publishing House of Electronics Industry, ,2009.
[11] CHANG C C, LIN C J. LIBSVM: a library for support vector machines[C]//ACM Transactions on Intelligent Systems and Technology(TIST) . 2011.
Behavior authentication of Web users based on machine learning
WU Zenan1, TIAN Liqin1,2, WANG Zhigang2
1. School of Computer Science and Technology, North China Institute of Science and Technology, Beijing 101601, China 2. School of Computer Science and Technology, Qinghai Normal University, Xining 810008, China
According to the security problem of Web user information, the user behavior was analyzed and authenticated by the method of machine learning. First of all, through the principal component analysis to reduce the dimension of the original data set, then use the SVM algorithm to allow the computer to learn the history of user behavior evidence, to get a model to identify the user's identity. The practical application and theoretical analysis show that the model in user behavior identification authentication, can be more accurate and efficient classification of dangerous users and trusted users, analysis lay a solid theoretical and practical basis for the high performance user behavior such as electronic commerce, network finance and other key of Internet applications.
information security, user behavior authentication, support vector machine, principal component analysis
TP309
A
10.11959/j.issn.2096-109x.2018011
毋澤南(1991-),男,河南焦作人,華北科技學院碩士生,主要研究方向為信息安全、用戶行為認證。

田立勤(1970-),男,陜西定邊人,博士,華北科技學院教授,主要研究方向為物聯網遠程信息監控、大數據有效性審核、網絡安全評價與用戶行為認證、網絡性能評價與優化。
王志剛(1993-),男,河北張家口人,青海師范大學碩士生,主要研究方向為大數據、云計算。

2017-11-07;
2018-01-05
田立勤,18511465255@163.com
國家自然科學基金資助項目(No.61472137);中央高校基本科研業務費基金資助項目(No.3142015022, No.3142017053);青海省重點研發、應用基礎研究基金資助項目(No.2016-SF-130, No.2017-ZJ-752);河北省物聯網監控工程技術研究中心基金資助項目(No.3142016020);青海省物聯網重點實驗室基金資助項目(No.2017-ZJ-Y21)
The National Natural Science Foundation of China (No.61472137), The Central University Basic Research Fees Fund Project (No.3142015022,No.3142017053), The Key Research and Development Projects of Qinghai Province(No.2016-SF-130, No.2017-ZJ-752), Internet of Things Monitoring Engineering Research Center of Hebei Province (No.3142016020), Key Laboratory of Internet of Things of Qinghai Province (No.2017-ZJ-Y21)