毛傳武,程陽,余文明
(華中科技大學自動化學院,湖北 武漢 430074)
動態實時身份認證的方法研究
毛傳武,程陽,余文明
(華中科技大學自動化學院,湖北 武漢 430074)
為減小身份偽冒給企業和組織帶來的內部威脅,提出了一種全場景下動態實時身份認證方法。利用偽造的鼠標異常構建動態身份認證場景;當出現連續的動態認證異常時,系統引導用戶進行了由記憶游戲構建的固定場景身份認證。對15位用戶進行了身份認證實驗,得到了3.0%的拒真率、1.8%的容錯率以及8.12 s的認證時間。實驗表明,動態場景和固定場景身份認證的有效配合,不僅克服了固定場景無法實時身份認證的弊端,而且保證了用戶的體驗,同時提高了身份認證的準確率。
內部威脅;身份認證;身份識別;支持向量機;鼠標動力學
內部攻擊對組織信息安全的威脅一直都是最大的挑戰[1~3]。2015年1月,Vormetric發布的《內部威脅報告》顯示,93%的美國組織易受內部威脅的影響。2015年12月,NUIX安全專家的一篇題為《人的行為是企業安全的最大威脅》的報告指出,員工幾乎成為信息安全的最大軟肋。
身份偽冒攻擊是內部威脅最常用的手段之一。身份偽冒攻擊是指內部員工將自己偽裝成其他合法用戶來竊取信息[4]。相比普通的外部攻擊,內部攻擊給安全人員帶來的挑戰更大[5]。一方面,內部攻擊者可以合法地訪問內部網絡,常用的防護技術如防火墻等無法監控到其攻擊行為;另一方面,攻擊者對系統安全規則更加熟悉,更容易繞過現有的安全防護技術[5]。
常用的身份驗證技術可分為3種:記憶性的,如密碼等;攜帶性的,如ID卡等;生理特征的,如指紋等。這些方法雖然在一定程度上能夠識別出身份偽冒攻擊,但是都只能用于系統登錄前的一次性身份認證,無法在計算機使用過程中持續地監控用戶身份。
基于生物行為特征的身份認證是一種持續型的認證,主要分為鍵盤動力學和鼠標動力學的身份認證[4]。隨著圖形界面的普及,鍵盤輸入減少,嚴重影響了利用擊鍵動力學的認證效果。相比擊鍵行為,利用鼠標行為的身份認證更有優勢。首先,監控鼠標不需記錄用戶的敏感信息,減小了用戶的隱私威脅[6];其次,鼠標結構更簡單,不易受到尺寸和布局的影響[7]。
基于鼠標動力學的身份認證最早是由Ahmed 在2003年提出的。Ahmed等[8]利用鼠標移動的速度、移動的距離實現了主機用戶身份的認證。Pusara等[7]采集用戶在瀏覽同一網頁時的鼠標行為,采用決策樹算法對用戶的18個行為習慣進行了研究。Gamboa等[9]邀請了50個志愿者參與玩一種測試記憶力的游戲,提取鼠標移動軌跡的速度、角速度等特征,采集90 s的鼠標數據,得到的身份認證準確率是采用手寫簽名身份認證的5倍。
國內對于鼠標行為特征身份認證的研究比較晚。2008年,Fang等[10]提出了一種利用鼠標動力學行為特征進行身份識別的方法,利用神經網絡分類算法,得到了0.48 %的容錯率(FAR,false acceptance rate)和2.86 %的拒真率(FRR,false rejection rate)。2010年,Shen等[11]從人機交互和生理行為層面上對計算機用戶的鼠標行為進行研究,得到了1.67%的FAR和3.68%的FRR。2013年,Wang等[12]研究并實現了3種截獲用戶鼠標行為數據的方法,最高達到了94%的認證準確率。2014年,Wang等[13]結合鼠標行為和鍵盤行為進行身份認證,得到了最高96.6%的認證準確率。
基于鼠標動力學的身份認證研究雖取得了一定的成果,但這些方法有共同的限制。它們的認證時間平均需要幾分鐘甚至更長的時間,認證需要收集足夠多的鼠標行為數據。而在實際情況下,內部攻擊人員可能只需幾秒鐘(如復制敏感信息,植入病毒等)即可完成攻擊。
文獻[1,4,14]提出了基于介入式場景的身份認證方法,有效地解決了身份認證的實時性問題。文獻[1]提出了一種基于行為跟蹤的身份認證系統,提取用戶在光標隱藏和固定兩種異常場景下的鼠標行為,認證時間僅需5 s,得到了最好2.86%的FRR和3.23%的FAR。文獻[4]通過隨機地注入鼠標光標隱藏和光標固定兩種場景進行身份認證,分別得到了 3.9%的 FAR、2.56%的FRR和4%的FAR、2.86%的FRR,認證時間最快也是 5 s。文獻[14]提出了基于鼠標隱藏場景的實時身份認證方法,得到了2.6%的FAR和3.3%的FRR,而消耗的驗證時間也只有幾秒。
可以看出,介入式場景的身份認證僅需采集幾秒內的用戶行為數據即可完成認證,大大地縮短了認證時間。然而,人的短時行為容易受到情緒、身體健康狀況、應用場景等因素的影響而表現出不確定性[4],勢必會影響介入式場景身份認證的準確率。
本文在介入式身份認證的基礎上提出了固定場景的身份認證,通過介入式動態場景身份認證和固定場景身份認證的結合,有效地提高了身份認證的實時性和準確率。
3.1全場景身份認證系統介紹
為解決企業由于內部員工采用身份偽冒方式對他人主機帶來的威脅問題,本文提出了一種全場景身份認證系統。系統的流程如圖1所示。若是新用戶,系統先分別進行動態場景和固定場景的離線訓練,否則,便進行實時身份認證。系統進行身份認證的主要步驟如下。
1)等待合適的時機構建注入異常事件,以減小主機資源的消耗、保證用戶的體驗。
2)構建光標異常認證場景,包括鼠標光標的跳變、隱藏和呆滯3種異常場景。
3)采集用戶在異常場景發生時的鼠標行為數據,提取特征向量。
4)利用SVM方法,根據已知模板對當前的用戶進行分類,判斷是否為正常用戶。若為正常,等待進入動態場景環境;若為異常,判斷當前是否是連續第二次動態場景異常,若不是則繼續跳轉到2),構建光標異常場景,繼續進行動態認證,否則進入5)。
5)利用記憶游戲構建固定場景身份認證,若為正常,存儲該特征向量,達到一定數量后更新模板庫;若為異常,則發出報警,進行相應的處理。
每一次提取的鼠標行為特征向量,根據身份認證的結果,存儲該特征向量,達到一定數量后更新模板庫,適時更新模板庫。
3.2動態場景身份認證
3.2.1介入式身份認證介紹
介入式身份認證,是指用戶在使用電腦的過程中,由某一后臺程序為得到用戶的操作行為,有目的地注入一些特定的異常場景,從而誘導用戶進入一種短時認證場景[4]。目前,介入式場景主要是模擬光標短時間內失控,如光標突然靜止、消失、跳變、移動速度變慢、移動軌跡發生較大偏移等。在異常突然發生時,用戶所表現出來的往往是下意識的行為,具有較高的個體差異性和辨識度。實驗中,本文采集了2個不同用戶在不同的光標異常場景下的鼠標行為軌跡,如圖2所示,實線和虛線分別代表用戶1和用戶2的鼠標軌跡。圖 2(a)是在光標圖標突然閃跳狀態下,2位用戶的鼠標軌跡;圖2(b)是在光標突然消失狀態下,2位用戶的鼠標軌跡;圖 2(c)是在光標移動速度突然變慢的狀態下,2位用戶的鼠標軌跡。

圖1 全場景身份認證系統

圖2 不同用戶在不同光標異常場景下的鼠標軌跡
3.2.2動態場景身份認證
為了解決身份認證的實時性問題,本文通過介入式的手段構建了動態身份認證場景。動態身份認證,是指無需引導用戶進入特定的應用,直接在用戶使用主機的整個過程中,在適當的時候注入介入式事件,采集用戶在介入式場景下的行為,進行實時身份認證。為了節省系統的資源,減少對用戶體驗的影響,構建異常場景時機包括4種,具體如下。
1)異常報警,當主機的安全軟件檢測到可疑信息時,誘導用戶進入異常場景。
2)重要位置,如開啟某些軟件(如遠程登錄、郵件、文件傳輸等)。
3)動態場景異常,由于動態認證采集的是短時行為,正常用戶的某一次鼠標行為可能出現較大異常。若不是連續的動態認證異常,繼續讓用戶進行另一種異常場景的身份認證。
4)隨機時刻,若當前身份認證正常,又不滿足1)和2)的情況,則系統在一定的時間內隨機注入異常場景,進行身份認證。本文后續的實驗中選定時間為30 s。
動態場景的身份認證流程如下。
1)當動態場景構建完成后,采集5 s內的用戶鼠標行為數據,若當前用戶沒有操作鼠標,則繼續構建動態異常場景。
2)當獲取到鼠標數據以后,對獲取到的數據進行預處理,提取行為特征向量。
3)采用SVM分類方法,根據已知的模板庫對當前的特征向量進行模式分類。若為正常行為,繼續等待注入動態異常場景的時機,否則,判斷當前異常是否是連續第二次發生:若是第一次發生則進入動態場景構建,構建另一種異常行為,跳轉到1)繼續執行;若是連續第二次發生,則引導用戶進入固定場景身份認證,同時保存當前的特征向量,判斷如果保存的特征向量達到一定數量,則執行4)。
4)對當前保存的特征向量進行建模,更新模板庫。
3.3固定場景身份認證
為了解決主客觀因素對動態身份認證準確性的影響,本文提出了固定場景的身份認證系統。當連續兩次動態身份認證均異常時,系統引導用戶進行固定場景身份認證。固定場景身份認證,是指在用戶使用主機的過程中,引導用戶進入固定的應用,采集用戶的行為數據進行身份認證。
本文設計了一款記憶性的拼圖游戲作為固定場景的應用。與動態場景的身份認證相比,固定場景的身份認證應用固定,游戲帶有記憶性,初始條件固定,因此,正常用戶相比其他用戶的行為會存在明顯的差異。固定場景的身份認證流程如下。
1)采集用戶進行拼圖游戲過程中的鼠標行為、時間戳等數據,直到拼圖游戲完成。
2)對采集到的數據進行適當的預處理,提取鼠標行為特征向量。
3)數據SVM分類方法,利用已知的模板對提取的特征向量進行分類,若為異常,則進行身份報警。
4)保存當前的特征向量,當達到一定數量時,生成相應的模板,更新模板庫。
4.1場景的構建
4.1.1動態場景的構建
動態場景的構建是通過Windows用戶層API創建一個和當前屏幕大小相同的非模態透明窗口,然后設置該層的鼠標光標的屬性。在這種情況下,用戶移動鼠標,仍然可以通過鉤子函數對鼠標行為數據進行抓取,但是用戶卻看不到鼠標的移動。動態異常場景分為3種,具體如下。
1)光標隱藏:光標的隱藏是通過后臺程序產生一個和當前屏幕大小相同的透明置頂窗口,設置該窗口的鼠標光標顯示屬性為FALSE。用戶無法看到鼠標光標,但后臺程序仍在記錄鼠標的行為。若當前用戶無鼠標行為,則保持光標隱藏;否則,退出光標隱藏場景。
光標隱藏場景的核心代碼如下。


2)光標跳變:光標跳變場景是指讓用戶感覺鼠標的光標在不停地閃爍,可以通過光標交替顯示即可構建。核心代碼同光標隱藏場景核心代碼類似,只需將while循環進行如下修改。


3)光標呆滯:光標呆滯的場景是指用戶在移動鼠標的過程中,隨機地讓光標在當前位置稍作停留,并將鼠標的光標形狀改為緩沖的形狀。調用的API函數如下。

4.1.2 固定場景的構建
固定場景的構建主要是通過設定記憶性的拼圖游戲,如圖3所示。進入游戲后,通過SetCursorPos(x,y)函數將鼠標光標初始化到一個固定位置,調用ClipCursor(&rect)函數將鼠標限制在拼圖游戲的界面內。游戲中的圖片由正常用戶自己選取,選定圖片以后,第一次開始訓練時,系統隨機地將圖片分成8小塊,以后每次進入游戲時,各個小塊的初始形狀、位置和內容都保持不變,直到更換新的圖片進行新的訓練。這樣正常用戶便能夠熟練快速地完成認證。

圖3 固定場景身份認證游戲界面
其中,新用戶可以通過軟件左上角的“訓練”按鈕進行訓練,可以通過“更換圖片”按鈕選擇自己熟悉的圖片進行訓練。對于動態認證異常的用戶,進入固定場景認證到完成認證期間,這 2個按鈕均不可單擊。待認證為合法用戶以后,才允許用戶進行新的訓練。
4.2數據的獲取
利用Windows系統鉤子WH_MOUSE_LL來截獲介入式場景發生時的鼠標行為數據,如圖 4所示,包括鼠標的事件類型參數;鼠標動作類型,其中,MOUSEMOVE表示鼠標移動、LBTDN表示左鍵按下、LBTUP表示左鍵抬起、MOUSEWHELL表示滾輪滾動、RBTDN表示右鍵按下、RBTUP表示右鍵抬起;像素坐標,其中,第一維是屏幕橫向像素坐標,第二維是屏幕縱向像素坐標,系統采用的屏幕分辨率為1 366×768;鼠標所在窗口以及當前系統時間。

圖4 系統鉤子提取的鼠標數據描述
4.3特征的獲取
4.3.1動態場景特征選擇
從圖2中可以看出,在動態認證場景下,不同的用戶在介入式場景發生時,鼠標移動的軌跡明顯不同,因此,本文選擇從鼠標的軌跡特征入手,提取不同鼠標軌跡的有效特征。
所選取的特征如表1所示。主要提取了軌跡的移動方向、彎曲程度、移動距離以及移動速度4種特征,構成一個共29維的特征向量。其中,第 1、2維描述移動鼠標的開始和結束方向;第3~10維是8個方向的移動次數統計,從0~2π,每隔為一個方向區域;第11、12維描述軌跡拐角的曲率均值以及拐角的個數;文獻[14]通過實驗證明,用戶移動鼠標時,鼠標在各個方向上的移動速度以及速度隨著方向的變化趨勢均存有差異,因此,第13~29維用以描述軌跡沿著X軸和Y軸移動距離和速度的均值、方差以及歐式距離。
4.3.2軌跡拐點曲率計算
本文采用拋物線模型表征鼠標軌跡在拐角處的彎曲程度。該拋物線由拐角處的點作為頂點以及頂點前后的幾個點擬合而成,模型如圖5所示。曲線L1:ax+by+c=0表示拋物線的對稱軸。根據a、b的值,拋物線可以分為兩類,具體如下。

表1 動態場景鼠標行為特征向量參數說明

圖5 鼠標軌跡拐角曲率模型
1)ab ≠0,即拋物線的對稱軸既不平行于標準的X軸也不平行于標準的Y軸。這種拋物線無法直接用標準方程表示,可采用基坐標系變化,如圖 5(a)所示,變換后的基坐標系以拋物線的頂點為坐標原點,對稱軸為Y'軸,開口方向為Y'軸正方向。拋物線在變換后的基坐標系中的方程為:y'=Ax'2。
由(x0,y0),(x1,y1),(x2,y2)構成的拋物線可以得到式(1)和式(2),則可得到式(3)

設(x1,y1),(x3,y3)組成的直線方程為則可得到式(4)

同理設(x2,y2),(x4,y4)組成的直線方程為


由式(5)可以得到

從式(5)可以看出,2個方程一共有2個未知數A和k,求解k需要復雜的高階運算,消耗了系統資源。通過大量實驗發現,用戶移動鼠標的軌跡在拐角處方向發生較大的變化,拐點附近的軌跡像素點比較密集,拐點前后的幾對軌跡像素的中點分布在對稱軸附近。因此,為了簡化k的計算,可以通過接近拋物線頂點的幾組像素點的中點規劃出對稱軸。
如圖5(b)所示,軌跡的拐點,即拋物線的頂點為O點,B點為點(x6,y6)和點(x8,y8)的中點,C點為點(x5,y5)和點(x9,y9)的中點。D點為B點和C點的中點。拋物線的對稱軸近似為直線 LOD。由此可知,對稱軸的斜率

將式(7)代入式(6)即可得到拋物線Y'=AX'2的A值,由標準拋物線的的曲率為可知,對于規整化后的拋物線的曲率即為
2)ab=0,即拋物線的對稱軸平行于標準的X軸或Y軸。該類拋物線只需簡單地平移即可轉化為標準類型的拋物線,很容易求出曲率。
4.3.3固定場景特征選擇
固定場景認證的實現如4.1.2節所示。可以看出,動態場景認證時,主要關注的是鼠標的移動行為。對于固定場景,鼠標的單擊動作比較頻繁,而且鼠標的移動范圍很有限,初始條件固定,因此,提取的特征可以更多,頑健性更好。本文對于固定場景的數據特征向量在動態特征向量的基礎上添加了20維,如表2所示。

表2 固定場景鼠標行為特征向量新增參數說明
5.1特征分析
5.1.1動態場景特征分析
從4.3.1節可以看出,動態場景主要是提取用戶移動鼠標的軌跡特征,包括移動速度、移動方向、移動距離 3方面的特征。本文隨機選取了正常用戶和其他用戶近50次動態異常場景下的鼠標移動軌跡,提取了其中的4維特征,如圖6所示。不帶結點的折線表示正常用戶的特征,帶圓形實結點的折線表示其他用戶的特征。圖6(a)展示了動態場景下單次移動鼠標的歐式距離,圖6(b)展示了動態場景下單次移動鼠標X方向上的平均距離,圖 6(c)表示了動態場景下單次移動鼠標的平均移動速度,圖6(d)展示了動態場景下單次移動鼠標的軌跡在拐點處的曲率。
從圖6可以看出,正常用戶移動鼠標提取的特征基本穩定,而其他用戶移動鼠標提取的特征個體間存在較大的差異。實驗表明,系統選取的特征能夠在一定程度上區分不同的用戶。

圖6 動態身份認證場景提取特征對比

圖7 固定場景身份認證不同用戶鼠標行為特征
5.1.2固定場景特征分析
固定場景身份認證主要提取的是鼠標移動拼圖的特征。與動態場景相比,固定場景身份認證使用的是正常用戶所熟悉的拼圖游戲,如圖7所示,正常用戶和其他用戶的特征基本上沒有交集,由此可以很容易地區分正常用戶與其他用戶。無結點折線表示正常用戶的特征,帶圓形結點的折線表示其他用戶的行為特征。圖 7(a)展示的是完成拼圖游戲的總時間,圖7(b)展示的是完成拼圖鼠標單擊圖片總的移動次數。可以看出,正常用戶基本穩定在10 s以內即可完成,平均移動次數基本穩定在 20次以內。這里考慮到實際應用環境,選取了其他10位用戶,共完成30次拼圖,每連續的3次是同一位用戶完成的。可以看出,其他用戶連續3次完成拼圖游戲所用時間和移動次數都呈減小趨勢,總體上比正常用戶完成速度慢、移動次數更多。

表3 全場景實時身份認證結果
5.2用戶身份認證結果
本文采集15位用戶兩周內的介入式場景下的鼠標數據,提取一共436 730條特征向量。每位用戶訓練數據將其他14位用戶的鼠標行為作為異常數據。利用LIBSVM模式分類算法對用戶進行分類。LIBSVM是林智仁教授設計的開源軟件包。LIBSVM使用的數據格式為
其中,5位用戶的認證結果以及這15位用戶的平均認證結果如表3所示。可以看出,通過全場景的認證,平均的FRR為3.0%,FAR為1.8%,而平均的認證時間僅為8.12 s。
6結束語
本文構建動態的介入式場景進行身份認證,不僅節省了系統的資源,而且大大地減少了身份認證的時間。當連續兩次不同的動態場景身份認證出現異常時,利用記憶游戲構建固定場景進行身份認證,有效地克服了動態場景身份認證的短時行為容易受到主客觀因素影響的弊端,增強了系統的頑健性。通過動態場景身份認證和固定場景身份認證的有效配合,既保證了身份認證的實時性,又提高了認證結果的準確率。
[1]CHEN X J,SHI J Q,XU R,et al. PAITS:detect masquerader via short-lived interventional mouse dynamics[M]. Berlin:Springer,2014:231-242.
[2]CHEN X J,XU F,XU R,et al. A practical real-time authentication system with identity tracking based on mouse dynamics[C]//IEEE INFOCOM. c2014:121-122.
[3]CHEN X J,FANG B X,TAN Q F,et al. Inferring attack intent of malicious insider based on probabilistic attack graph model[J]. Chinese Journal of Computers,2014,37(1):62-72.
[4]魏梓丞. 面向身份偽冒的主機異常行為檢測[D]. 北京:北京郵電大學,2014. WEI Z C. Abnormal behavior detection of host computer for identity based intrusion detection[D]. Beijing:Beijing University of Posts and Telecommunications,2014.
[5]陳小軍,時金橋,徐菲,等.面向內部威脅的最優安全策略算法研究[J]. 計算機研究與進展,2014,51(7):1565-1577. CHEN X J,SHI J Q,XU F,et al. Research on the optimal security policy algorithm for internal threats[C]//Computer Research and Development,2014,51(7):1565-1577.
[6]ZHENG N,PALOSKL A,WANG H. An efficient user verification system via mouse movements[C]//ACM Conference on Computer & Communications Security. c2011:139-150.
[7]PUSARA M,BRODLEY C E. User re-authentication via mouse movements[C]//Workshop on Visualization & Data Mining for Computer Security.c2004:1-8.
[8]AHMED A,TRAORE I. Detecting computer Intrusions using behavioral biometrics[C]//The third Annual Conference on Privacy,Security and Trust. c2005:91-98.
[9]GAMBOA H,FRED A. A behavioral biometric system based on human-computer interaction[C]//The International Society for Optical Engineering. c2004:381-392.
[10]房超,蔡忠閩,沈超,等. 基于鼠標動力學模型的用戶身份認證與監控[J]. 西安交通大學學報,2008,10(40):1235-1239. FANG C,CAI Z M,SHEN C,et al. Authentication and monitoring of user identities based on mouse dynamics[J].Journal of Xi'an Jiaotong University,2008,10(40):1235-1239.
[11]沈超,蔡忠閩,管曉宏,等. 基于鼠標行為特征的用戶身份認證與監控[J]. 通信學報,2010,31(7):68-75. SHEN C,CAI Z M,GUAN X H,et al. User identity authentication and monitoring based on the behavior of the mouse[J].Journal of Communication,2010,31(7):68-75.
[12]王森,蔡忠閩,沈超等. 行為截獲技術對鼠標動力學身份認證的影響[J].微電子學與計算機,2013,30(4):14-21. WANG S,CAI Z M,SHEN C,et al. The influence of the technology on the dynamic identity authentication of the mouse[J]. Mi-Croelectronics and Computer,2013,30(4):14-21.
[13]王鑫,王夢瑩,梁金.基于鼠標鍵盤行為的身份認證[J].中國教育技術裝備,2014(22):50-53. WANG X,WANG M Y,LIANG J. Identity authentication based on the behavior of the mouse and keyboard[J]. China Educational Technology and Equipment,2014(22):50-53.
[14]WEI Z,CHEN X,PU Y,et al. A real-time authentication method based on cursor-hidden scene[J]. International Workshop on Cloud Computing & Information Security,2013,52(1391):346-350.
Method of dynamic real-time authentication
MAO Chuan-wu,CHENG Yang,YU Wen-ming
(School of Automation,Huazhong University of Science and Technology,Wuhan 430074,China)
To solve the problem organization's insider threats which was brought by internal staff through identity spoofing. A method of dynamic real-time authentication was presented. By faking exceptions of mouse to build dynamic authentication,when continuously consecutive authentication were abnormal,user was forced into fixed scene certification which was building of memory game. An identity verification experiment,in which 15 participants were involved,showed that the performance of proposed method was encouraging with FAR of 1.8% and FRR of 3.0% and authentication time of 8.12 s for authentication. The experiment shows that the method is not only real-time but also has a better user experience and accuracy.
insider threat,identity authentication,identity monitoring,SVM,mouse dynamics
TP309
A
10.11959/j.issn.2096-109x.2016.00040
2016-02-17;
2016-03-04。通信作者:毛傳武,924550750@qq.com

毛傳武(1991-),男,湖北武漢人,華中科技大學碩士生,主要研究方向為網絡信息安全。

程陽(1986-),男,湖北武漢人,華中科技大學博士生,主要研究方向為人工智能與模式識別。

余文明(1991-),男,湖北黃岡人,華中科技大學碩士生,主要研究方向為網絡信息安全。