基于關聯分析的主機日志審計研究
在當前復雜的國際政治經濟局勢下,網絡安全受到黨和國家的高度重視。人民銀行管理運行的眾多業務系統是金融行業關鍵基礎設施,關系到國計民生,是國家網絡安全重點保護對象。探索將關聯分析技術用于人民銀行重要業務系統主機日志分析,能精準、高效判別內外部的異常行為,有利于風險事件的預警、控制,保障人民銀行業務系統的連續、穩定運行。
習總書記在網絡安全和信息化工作會議上強調,沒有網絡安全就沒有國家安全。人民銀行管理運行的重要業務系統,如支付系統、征信系統、國庫會計核算系統等,是影響經濟社會運行、關系國計民生的重要金融基礎設施,是國家網絡安全保護的重中之重。其主機日志是網絡安全審計的重要對象,在多項制度、規范中予以了明確規定。《中國人民銀行網絡安全管理規定》(銀發〔2019〕169號)、《中國人民銀行信息技術審計規范》(銀辦發〔2014〕47號)明確要求保存相關設施、系統的日志,并定期檢查、審計、分析。《金融業網絡安全等級保護實施指引》(銀發〔2020〕275號)明確規定了二級、三級、四級保護對象應對重要用戶行為和安全事件進行審計,審計記錄包括:用戶、行為或者事件類型、成功與否、日期和時間等。基于這些信息開展分析是主機安全審計的重要方法,可以協助管理人員對主機的安全狀況進行綜合評估。探索將關聯分析技術用于人民銀行重要業務系統主機日志分析,能精準高效判別內外部的異常行為,提高風險預警效率與防范能力,保障人民銀行重要業務系統的連續、穩定運行。
當前主機日志分析現狀
一般主機系統有三種日志:系統日志、安全日志和應用程序日志。系統日志記錄了操作系統組件產生的事件,包括系統組件操作、應用程序崩潰及數據丟失、驅動程序等;安全日志記錄了各種類型的賬戶登錄信息、服務信息、訪問信息、策略變更信息、特權使用信息及進程追蹤信息等;應用程序日志則記錄了與應用程序運行相關的事件。人民銀行設備、系統眾多,積累了海量日志數據,當前的主機日志審計方法橫向關聯不足,往往難于精準、高效地界定正常行為、異常行為和入侵行為。國內外利用日志數據進行安全審計的研究性成果和提供日志數據收集、審計功能的商業化產品,如SNARE系統、Haystack項目、IDES、漢邦強審計系統等,未能充分挖掘日志數據的價值,也存在一定的局限性,例如:
(1)過度依賴系統管理員和領域專家的經驗建立審計規則。(2)用于分析的日志數據來源單一,還是基于條目式日志數據進行分析,沒有建立日志和事件的對應關系,無法挖掘事件和非法行為之間的關系。(3)日志分析的智能性不高,自適應能力低。
關聯分析技術
數據挖掘能夠在海量數據中發現有價值的信息,從而為分析、判斷、決策提供支持。關聯分析是眾多數據挖掘技術的其中一種,運用該技術能夠找到一些對主機行為性質進行正確判斷的規則或模型。常用的關聯分析算法有Apriori、FPTree、Eclat、灰度關聯法等。
關聯分析目的是從已知的事務集中,挖掘數據項集之間的關聯規則,保證其支持度和置信度大于用戶預先指定的最小支持度和最小置信度(稱為閾值)。此處支持度可理解為某事件A和B同時發生的概率,置信度可理解為在事件A已經發生的情況下,事件B發生的概率。高于閾值的可用于發現日志數據之間的關聯關系,解釋了不同審計事件之間的關聯,對發現主機異常行為意義重大,低于閾值的規則可能反映噪聲、異常或少數情況等。關聯分析一般分為兩大步:發現頻繁項集和發現關聯規則。
步驟一:發現頻繁項集。是指找出不小于用戶設定的最小支持度m的項目子集。一般來說,只需關心那些不被其他頻繁項集所包含的最大頻繁項集的集合。發現所有的頻繁項集是形成關聯規則的基礎。
步驟二:發現關聯規則。是指通過用戶給定的最小置信度,在每個最大頻繁項集中尋找置信度不小于用戶設定的最小置信度的強關聯規則。
主機日志審計實例分析
1.日志預處理。不同來源的日志格式并不統一,應使用通用格式規范化,這是進行日志分析和關聯的基礎。為方便論述,本文以人民銀行某業務系統windows主機系統日志,使用關聯分析Apriori算法為例展開分析。
日志數據是系統進程產生的單條日志,用戶在主機上執行某個操作可以產生一條日志也產生多條日志,因此用戶的行為事件與日志之間具有對應關系,部分事件與日志之間的對應關系如表1所示。
表 1 主機操作事件與日志 ID 的映射表(部分)

建立這種對應關系后,日志格式可以變換為新的主機事件格式。在對主機日志數據預處理的過程中,一方面可以大大降低日志的條目數量,另一方面可以把這些日志變為用戶行為或者系統行為,從而能夠更加準確的表達主機安全狀態,提高日志數據的可讀性,為主機安全審計提供良好的幫助。
2.日志關聯分析。主機上采集的日志數據在被預處理為主機操作事件以后,再將無用的事件進行過濾,對主機事件進行時間排序,對重復的事件進行歸并。預處理完畢的日志數據使用關聯分析方法發現事件的頻繁模式、相關性、因果關系等,專家對這些挖掘結果進行評估和解釋后可用于主機用戶行為分析與預測、主機用戶的異常行為檢測、攻擊行為的發現、主機的安全評估等。
利用Apriori算法對數據進行關聯規則挖掘,首先要將數據轉化為事務數據庫。為了獲得更好的候選項,將支持度設為15%,將置信度設為45%。
3.關聯規則使用。通過以上挖掘的關聯規則,可知用戶Nuser一般在上午登錄,經常進行文件類和文檔類操作。而用戶Administrator通常是在晚上登錄,經常進行用戶類操作。分析這些用戶歷史行為,可對用戶身份進行初步判斷,用戶Nuser是一個普通用戶,用戶Administrator是一個管理員賬戶。事務說明Nuser在下午登錄,進行刪除系統日志類的操作,明顯與用戶Nuser的通常行為不符,可被認為是異常行為,需要重點審計。

總 結
通過對主機日志進行關聯分析,挖掘各種關聯規則,進而揭示數據集的不同規律,這些規律可被定義為主機安全審計規則,用這些審計規則與正在發生的主機事件進行比較,可以從中發現主機潛在風險,達到主機安全審計的目的。