賴建華 唐敏



摘 要:為了應對高級持續性威脅(APT)攻擊造成的威脅,解決傳統基于規則的分析方法對用戶異常行為檢測的誤報與漏報問題,提高用戶異常行為檢測效果,通過采集用戶行為日志生成用戶操作行為矩陣,并通過模型定義方式對用戶行為進行相似度分析。采用容忍度測算、突變測算、差值測算與峰值測算方法,分析與發現用戶異常訪問。基于用戶畫像的異常行為分析方法結合了用戶操作行為特征及角色定義,利用用戶行為日志歷史信息勾勒出用戶行為畫像,使系統能準確、實時地判斷用戶行為異常,提高了對異常行為的實時檢測與快速響應能力。
關鍵詞:異常行為分析;高級持續性威脅攻擊;行為矩陣;用戶畫像
DOI:10. 11907/rjdk. 182544 開放科學(資源服務)標識碼(OSID):
中圖分類號:TP309文獻標識碼:A 文章編號:1672-7800(2019)008-0181-05
Research and Application of User Abnormal Behavior Analysis Method
LAI JIAN-hua1,2, TANG Min3
(1. Fujian Institute of Science and Technology Information;2. Fujian Key Laboratory of Information Network;
3. Fujian Straits Information Co. Ltd,Fuzhou 350003, China)
Abstract: In order to deal with the threat caused by high-level persistent threat attack, the traditional rule-based analysis method is used to solve the false alarm and missed alarm of user abnormal behavior detection, and improve the detection effect of user abnormal behavior. User behavior matrix is generated by collecting user behavior log, and similarity analysis of user behavior is done by model definition. Tolerance measure method, mutation measure method, difference measure method and peak value measure method are collected. Users' abnormal access is analyzed and found by common use. The abnormal behavior analysis method based on user portrait is combined with user operation behavior characteristics and role definition, and the user behavior portrait is outlined by using user behavior log history information. The system can judge user behavior abnormality in real-time and improve the ability of real-time detection and rapid response to abnormal behavior.
Key Words: abnormal behavior analysis; high-level persistent threat attack; behavior matrix; user portrait
基金項目:福建省科技計劃項目(2017R1008-1,2018R1008-9)
作者簡介:賴建華(1974-),男,碩士,福建省科學技術信息研究所高級工程師,研究方向為網絡與信息安全、軟件工程;唐敏(1976-),男,碩士,福建省海峽信息技術有限公司工程師,研究方向為安全管理與分析、資產情報。
0 引言
近年來,高級持續性威脅(APT)攻擊已成為政府及各級企事業組織面臨的主要安全威脅。APT攻擊檢測防御技術能夠主動檢測APT攻擊行為,防止惡意入侵及異常行為造成的破壞與損失。傳統基于流量特征庫的APT攻擊檢測與防御方法對于已知威脅,如已知漏洞或病毒木馬程序的攻擊比較有效,但對于攻擊特征未知、技術復雜、持續時間長的APT攻擊則無法進行有效檢測與定位[1]。國內外在構建APT檢測模型與APT防御系統方面取得了一定進展。在國外,FireEye研發了一種基于終端異常行為檢測的APT防御系統,將用于樣本分析的沙箱技術前置到用戶環境監測設備中,但其檢測過程建立在捕獲惡意代碼基礎上,因此存在被繞過的可能;RSA[2]提出一種基于網絡異常行為監測的原型Beehive,通過對企業網絡環境中各類日志的采集與分析進行異常檢測,但是檢測結果的有效性仍需要人工鑒定與確認。在國內,根據用戶異常行為識別已知或未知安全威脅一直是研究熱點,并取得了一定成果[3-6],如董彬[7]提出一種基于Netflow的異常行為檢測框架,能夠對蠕蟲、DDOS攻擊、網絡掃描等行為進行檢測,并提出基于Hadoop平臺的系統框架,但其側重于對大規模異常的監測,而對APT攻擊這類注重自身隱蔽性、網絡流量特征不顯著的攻擊行為檢測能力有限;孫建坡[8]提出一種基于攻擊鏈的描述模型,能夠對攻擊過程與結果進行建模,但對于如何進行攻擊行為檢測并未給出具體算法描述。構建APT威脅檢測模型需要考慮數據采集、數據存儲、行為識別、告警響應等多個環節。隨著大數據時代的到來,APT檢測與防御設備受到數據量龐大、人工處理能力不足及特征庫有限等因素影響,無法跟上時代發展步伐,必須從入侵行為角度,采用基于異常行為識別的檢測方法,才能更加快速、精確地檢測與定位APT入侵行為和攻擊者。
從APT入侵者視角,攻擊及用戶異常行為可分為:偵查目標、制作工具、傳送工具、觸發工具、控制目標、執行活動與保留據點7個階段[9]。每個活動階段一般會在網絡及目標系統內形成活動記錄,包括:流量日志、系統運行日志、配置變動記錄以及人員操作行為日志等。這些記錄日志包含了用戶登錄行為記錄、接口調用信息、數據增刪改查信息、權限及數據結構修改記錄,隱含著越權訪問、數據竊取以及主機失陷等入侵及異常行為的蛛絲馬跡。通過對操作行為數據的分析,可以挖掘出潛在的用戶異常行為。傳統APT入侵檢測系統對異常行為的檢測采用基于規則的分析方法,通過配置行為分析規則,定義異常行為的時間、地點、人員、訪問方式等,也即5W1H分析方法[10]。該方法對常規的行為定義與檢測是有效的,但由于異常行為場景很多,不能完全通過行為的若干要素進行簡單定義與排查,否則容易出現誤報和漏報情況。因此,需要對歷史行為數據進行建模,并采用相關算法對用戶行為進行預測及異常檢測,才能有效發現入侵及異常行為。
針對當前APT防御形勢的要求,本文提出一種基于用戶畫像的異常行為分析方法。用戶畫像可以將定性和定量方法很好地結合在一起[11],其中定性方法是指對用戶使用習慣、行為特點進行抽象與概括[12],定量分析是指通過對特征作精細化的統計分析計算,獲得對用戶異常行為的精準識別[13]。該方案結合了用戶操作行為特征及角色定義,利用用戶日志歷史信息勾勒出用戶行為畫像,使系統能夠準確、實時地判斷用戶行為異常,從而提高對異常行為的實時檢測與快速響應能力。
1 用戶異常行為分析流程
本文設計的用戶異常行為分析方法流程如圖1所示,共分為5個階段,分別為:日志采集、模型定義、行為刻畫、異常分析及安全告警。
圖1 用戶異常行為分析流程
1.1 日志采集
日志采集通過各種協議方法采集用戶異常行為分析所需的用戶訪問日志、業務操作日志、系統運行日志、數據庫訪問記錄及流量日志等。
不同類型的日志數據格式不完全相同,不同途徑獲取的數據也存在重復、相互關聯,甚至相互矛盾的情況。本文在數據采集后進行還原操作,并進行一系列預處理,包括提取、清洗、關聯、比對與標識等操作。其中數據關聯是指將海量信息與用戶帳號、自然人等相關聯,以方便信息溯源。最后將采集到的海量異構數據變換為一種適合后續數據分析的形式。
由于行為日志具有明顯的大數據特征[14],本文采用基于HDFS的分布式索引數據存儲,從而保證了數據的高可靠性,并能快速進行檢索。
1.2 模型定義
本文從實際業務系統數據中提取相關數據構建數據集,根據挖掘出的系統用戶信息,設計并構建了用戶模型。該模型將用戶屬性分為:基本屬性、職位屬性、業務屬性、時間屬性以及空間屬性5類,這5類屬性共同構建用戶完整信息。屬性模型定義如下:①基本屬性。表示用戶固有、靜態的屬性狀態[15],如:用戶性別、年齡、愛好等基本屬性特征;②職位屬性。表示用戶職位級別的屬性信息,用于識別相同職位等級人員的異常訪問行為;③業務屬性。表示用戶在業務功能使用方面的屬性信息[16],系統中不同角色能夠使用的業務功能不同,根據用戶業務功能設計不同標簽,如:超級用戶、操作用戶、審計用戶以及配置用戶等,每個業務屬性對應不同的功能模塊集合;④時間屬性。對用戶訪問行為在時間上進行分段建模,分段建立數據訪問與業務處理模型,用于識別特定時間段發生的異常行為,或訪問的異常時間段;⑤空間屬性。根據用戶訪問區域進行區分與建模,用于識別與用戶具有相同訪問區域的異常訪問行為,或異常訪問區域。
1.3 行為刻畫
用戶除基本屬性外,也應具有相應行為,類似于編程語言的屬性和方法。本文從七大維度進行描述,包括:用戶會話、訪問業務系統、操作內容、操作內容差異性、一天訪問行為、一周訪問行為、每天連續操作時間等構建用戶行為標簽,如表1所示。行為標簽是指用戶對系統的時序化操作行為,即行為序列[17]。
1.4 異常分析
以上步驟已提取了用戶行為數據,形成用戶行為模型,接下來的異常分析通過預先建立一系列模型、策略,將用戶待檢測的行為序列模式與已知特征序列進行匹配。若能正常匹配,說明待測用戶行為正常;若存在無法匹配或部分無法匹配的情況,則說明待測行為存在異常,該行為稱為異常行為。
在異常分析環節,本文在基礎屬性條件配置基礎上引入統計算法,通過對不同條件之間的測算進行分析運算。系統采用的統計算法包括:容忍度測算、突變測算、差值測算、峰值測算等。
1.5 安全告警
安全告警是實現從數據采集、異常分析到最終響應的主動防御體系的關鍵環節[18]。通過上述分析過程形成檢測分析結果,并在滿足一定條件時進行安全告警。生成的告警信息包括:告警名稱、告警對象(通常為某個業務系統對象)、告警內容、告警等級、告警發生時間以及告警證據鏈等內容。本文根據告警等級、告警對象責任人信息等條件,通過響應機制,利用郵件、短信、微信等方式自動通知管理人員,實現對消息的及時推送。
2 用戶異常行為分析方法
用戶異常行為分析步驟通常包括:畫像數據獲取、相似度計算、畫像聚類以及畫像生成。對于異常行為分析而言,畫像數據獲取階段即采集用戶行為日志,在相似度計算階段根據職位、時間以及空間模型計算同類用戶行為之間的相似度,系統根據相似度進行聚類,而遠離大規模聚類的對象則認為表現異常,進入告警環節。
本文提出的用戶異常行為分析方法的主要優勢在于其結合了多種分析方法與用戶行為畫像定位能力,能夠準確定位異常用戶。即:用戶所有行為都與用戶賬號關聯,用戶賬號與自然人唯一關聯,用戶所有行為都有行為記錄。當匹配到異常行為時,可以迅速關聯到用戶賬號,從而定位到自然人(入侵者)。同時,通過業務屬性標簽,可以關聯到出現異常的具體業務功能。
2.1 相似度方法
基于相似度的方法[19]是一種可用于實時異常行為識別的分析方法。系統采用歐氏距離法對用戶在單位時間內的操作行為習性進行相似運算。歐氏距離也稱為歐幾里得距離,是一種多維空間的距離計算方法[20]。
歐氏距離法通過以下步驟對用戶行為進行相似度計算:
(1)系統根據畫像模型為不同職位、時間、空間類別的用戶生成操作習性矩陣。
(2)計算用戶操作習性矩陣不同屬性之間的相似度,相似度的值在0~1之間。屬性包括1.3章提到的七大維度。對于行為習性矩陣的每個屬性,都定義一個與之相對應的相似度計算函數。該函數返回一個0~1之間的相似度計算值。
(3)采集到新的行為日志時,會與已有用戶操作習性矩陣的屬性值進行比較,計算其之間的相似度。行為日志之間相似度定義為不同屬性相似度的加權平均值,具體公式如下:
[SIM(X,Y)=Ej*SIM(Xj,Yj)Ej]? (1)
其中,X表示已有用戶行為屬性,Y表示新的用戶行為記錄,j表示用戶行為習性的屬性索引值,[Ej]表示屬性j的相似度期望,[Xj]、[Yj]表示用戶行為屬性X與用戶行為記錄Y中屬性j的值。
(4)最后,計算用戶行為習性的相似度,并結合異常度量加權,對超過閾值的用戶行為生成安全告警。
2.2 容忍度測算
容忍度測算[21]是根據兩個不同分析維度條件之間的比例關系,從中發現同一用戶或同一源地址發起各類行為占比操作是否超標的情況。例如:某天用戶對數據庫的導出操作次數是否占該用戶當天對所有數據庫操作次數的一半以上。按容忍度測算規則中配置的開始時間與周期決定本次分析事件的時間區間,即開始時間減去周期,再到開始時間為止為本次分析的事件區間。容忍度測算流程如圖2所示。
在容忍度測算流程中,從事件區間與日志類型組合依次查找事件條件1和事件條件2的數據,并將兩個數據按關注點進行匯總計數,提取兩次匯總中相關的關注點,通過關注點循環計算兩個事件總數占比,對占比超過閾值的情況進行告警。
圖2 容忍度測算流程
2.3 突變測算
突變測算是對同一日志屬性下不同時間段之間的數量變化進行測算,并對變化明顯的情況進行告警。例如:一個目標地址當前事件量為前一小時的5倍。
突變測算流程如圖3所示,根據事件條件分別讀取當前時間減去時間差,再到當前時間的事件量,以及當前時間減去兩個時間差,再到當前時間減去時間差的事件量。通過關注點將兩個時段中關注點的事件量相除,如果結果大于規則給定的閾值,則對相關關注點進行安全告警。
圖3 突變測算流程
2.4 差值測算
差值測算是對同一關注點下不同時間的同一日志屬性矢量差進行分析,矢量差超過規則閾值則產生告警。例如同一用戶登出和登錄時間矢量差在3天以上,將進行告警。
差值測算流程如圖4所示,根據規則中配置的時間啟動,獲取前一周期中所有滿足條件2與條件1的數據。將條件2與條件1同一關注點下相關屬性矢量差與規則閾值進行對比,若超過閾值則進行告警。
圖4 突變測算流程
2.5 峰值測算
峰值測算是指對同一日志屬性按關注點進行排序,對從高到低的TopN進行告警。峰值測算流程如圖5所示,根據規則中配置的時間進行啟動,獲取前一周期中所有滿足條件的數據,并按關注點從大到小進行排序,對于前n位(n為規則中配置的top值)取值大于規則閾值的情況進行告警。
圖5 峰值測算流程
3 實驗與分析
本文實驗測試選用某4A堡壘機一個月的用戶操作日志作為測試數據集,合計記錄數據2 190 518條。在一個月時間內,模擬了各類異常行為150次,包括:違規時間數據訪問、違規終端業務訪問、暴力登錄嘗試、木馬違規刷數據、越權操作指令、違規金庫操作等異常行為類型。將測試數據集作為輸入,并啟用不同分析方法引擎進行檢測。根據檢測出的異常行為數量,得出各種測試方法的準確率、誤判率與漏判率。采用N(t)代表實際異常行為總數,N(d)代表正確檢測出的異常行為數量,N(n)代表錯誤檢測出的異常行為數量。
根據上述計算方法,得到實驗結果如表2所示。
表2 用戶異常行為分析實驗結果
實驗結果表明,在單獨使用突變測算、差值測算與峰值測算方法的情況下,檢測準確率不高,存在一定的誤報和漏報情況,而在綜合場景下,當各種分析方法都對行為進行確定性的告警匹配時,可得到較高的準確率與較低的誤報率。
4 結語
本文提出的基于用戶行為刻畫的異常行為分析方法,通過采集用戶行為日志生成用戶操作行為矩陣,并通過模型定義方式對用戶行為進行相似度分析、容忍度測算、突變測算、差值測算、峰值測算,從而及時發現用戶異常訪問,提高了對異常行為的實時檢測及響應能力。本系統已應用于實際項目中,幫助用戶分析堡壘機、操作審計系統等應用中的操作行為日志,并成功發現了其中采用木馬程序盜刷數據、違規越權操作等違規行為。未來將繼續對分析算法進行擴展,采用密度分析等分類方法對用戶異常行為進行檢測,通過多個分析維度進行分析,以提高分析可靠性。同時還可將該方法應用于網絡流量異常分析,以識別異常流量行為。
參考文獻:
[1] 周濤. 基于統計學習的網絡異常行為檢測技術[J]. 大數據,2015 (4):38-47.
[2] YEN T F,OPREA A,ONARLIOGLU K,et al. Beehive: large-scale log analysis for detecting suspicious activity in enterprise networks[C]. Proceedings of the 29th Annual Computer Security Applications Conference, 2013:199-208.
[3] 江瀚,郭威,鄧韻東. 一種基于等級保護的高級持續性威脅防護模型研究[J]. 電子測試,2015(21):17-20.
[4] 陳強. 高級持續性威脅攻擊及預防的探索[J]. 網絡安全技術與應用,2015(7):63-64.
[5] 武宗濤,趙進,葉忠. 基于基線的APT檢測分析平臺研究與設計[J]. 網絡安全技術與應用,2017(9):35-37.
[6] 管磊,胡光俊,王專. 基于大數據的網絡安全態勢感知技術研究[J]. 信息網絡安全,2016(9):45-50.
[7] 董彬. 基于hadoop的APT建模與流量預處理技術研究與實現[D]. 長沙:國防科學技術大學,2015.
[8] 孫建坡. 基于攻擊鏈的威脅感知系統[J]. 郵電設計技術,2016(1):74-77.
[9] 徐遠澤,張文科,尹一樺,等. APT攻擊及其防御研究[J].通信技術,?2015,48(6):740-745.
[10] 常松麗,陳立潮,潘理虎. 基于信息生命周期的多主體交互模型及形式化[J].計算機仿真,2012,29?(11):158-161.
[11] 王洋,丁志剛,鄭樹泉,等. 一種用戶畫像系統的設計與實現[J]. 計算機應用與軟件,2018(3):8-14.
[12] 張哲. 基于微博數據的用戶畫像系統的設計與實現[D]. 武漢:華中科技大學,2015.
[13] 張麗娟. 基于大數據分析的用戶畫像助力精準營銷研究[J]. 電信技術,2017,8(1):61-62.
[14] 張慷. 手機用戶畫像在大數據平臺的實現方案[J]. 信息通信,2014(2):266-267.
[15] 陳志明,胡震云. UGC網站用戶畫像研究[J]. 計算機系統應用,2017,26(1):24-30.
[16] 王冬羽. 基于移動互聯網行為分析的用戶畫像系統設計[D]. 成都:成都理工大學,2017.
[17] 唐夢楠. 網絡入侵事件檢測及攻擊行為預測的方法研究[D]. 西安:西安電子科技大學,2014.
[18] 顧立強. 主動防御技術體系分析及在網絡安全中的應用[J]. 通訊世界,2017(14):26-27.
[19] 金倩倩,陳春霖,于曉文,等. 基于相似度分析的電力信息內網用戶行為異常預警方法[J]. 計算機系統應用,2017(12):220-226.
[20] 吳迪. 基于曲線相似性分析的竊電用戶判斷[J]. 中國電力,2017,50(2):181-184.
[21] 王曉芳,謝仲文,李彤,等. 一種帶租戶演化容忍度的SaaS服務演化一致性判定方法[J]. 計算機科學,2018,45(5):147-155.
(責任編輯:黃 健)