等保2.0下,安全審計(jì)技術(shù)大起底
1等保2.0關(guān)于安全審計(jì)的規(guī)定
等保2.0標(biāo)準(zhǔn)在2019年5月正式發(fā)布,將于2019年12月開始實(shí)施。等保2.0標(biāo)準(zhǔn)中對(duì)安全審計(jì)做了詳細(xì)要求,下面表格中列出了等保2.0對(duì)安全審計(jì)的技術(shù)要求,黑色字體表示是針對(duì)上一安全級(jí)別增強(qiáng)的要求。
在等級(jí)保護(hù)體系中,級(jí)別越高,對(duì)安全性要求
越高。在“附錄C(規(guī)范性附錄)等級(jí)保護(hù)安全框架和關(guān)鍵技術(shù)使用要求”中,特殊強(qiáng)調(diào)應(yīng)在較高級(jí)別等級(jí)保護(hù)對(duì)象的安全建設(shè)和安全整改中注重使用一些關(guān)鍵技術(shù),其中包含審計(jì)追查技術(shù):“應(yīng)立足于現(xiàn)有的大量事件采集、數(shù)據(jù)挖掘、智能事件關(guān)聯(lián)和基于業(yè)務(wù)的運(yùn)維監(jiān)控技術(shù),解決海量數(shù)據(jù)處理瓶頸,通過對(duì)審計(jì)數(shù)據(jù)快速提取,滿足信息處理中對(duì)于檢索速度和準(zhǔn)確性的需求;同時(shí),還應(yīng)建立事件分析模型,發(fā)現(xiàn)高級(jí)安全威脅,并追查威脅路徑和定位威脅源頭,實(shí)現(xiàn)對(duì)攻擊行為的有效防范和追查?!?/span>
等保2.0中主要在安全區(qū)域邊界、安全計(jì)算環(huán)境和安全管理中心的要求中提到審計(jì)要求。安全區(qū)域邊界的審計(jì)內(nèi)容主要指網(wǎng)絡(luò)和設(shè)備的重要安全事件、用戶行為等;安全計(jì)算環(huán)境的審計(jì)內(nèi)容主要是用戶行為、安全事件、主客體的訪問行為等;管理中心的審計(jì)內(nèi)容主要指管理員的各種操作日志。在“工業(yè)控制系統(tǒng)安全擴(kuò)展要求”中,專門指出:“控制設(shè)備自身應(yīng)實(shí)現(xiàn)相應(yīng)級(jí)別安全通用要求提出的身份鑒別、訪問控制和安全審計(jì)等安全要求,如受條件限制控制設(shè)備無(wú)法實(shí)現(xiàn)上述要求,應(yīng)由其上位控制或管理設(shè)備實(shí)現(xiàn)同等功能或通過管理手段控制”。安全審計(jì)是我們大多數(shù)人都很熟悉的安全技術(shù),平常大家耳熟能詳?shù)臋?quán)限分配時(shí)的“三權(quán)分立”原則,通常就是指系統(tǒng)管理員、業(yè)務(wù)操作員、審計(jì)管理員。很多廠家關(guān)于“三權(quán)分立”的實(shí)現(xiàn)和解釋都不一致,但是審計(jì)員的角色和職責(zé)都相對(duì)比較明確。等保2.0的“安全管理機(jī)構(gòu)”中,明確要求:“應(yīng)設(shè)立系統(tǒng)管理員、審計(jì)管理員和安全管理員等崗位,并定義部門及各個(gè)工作崗位的職責(zé)?!瓚?yīng)配備一定數(shù)量的系統(tǒng)管理員、審計(jì)管理員和安全管理員等”。
2安全審計(jì)的基本概念
在討論信息領(lǐng)域的安全審計(jì)之前,我們先來了解一下審計(jì)的歷史和概念。審計(jì)的歷史非常悠久,我國(guó)從西周時(shí)期就存在專門從事審計(jì)工作的部門,一直延續(xù)至今,現(xiàn)在各個(gè)體制的國(guó)家機(jī)構(gòu)中都存在審計(jì)部門。我國(guó)審計(jì)部門的歷史發(fā)展如下表所示:
審計(jì)的主要目的是檢查人的行為、資源的分配、事情的發(fā)展是否符合規(guī)范要求。按照現(xiàn)代偵查學(xué)理論,“犯罪必留痕跡”——這也從另一方面論證了審計(jì)的價(jià)值,只要違反了法律或規(guī)范,一定會(huì)留下相關(guān)證據(jù),就應(yīng)該可以審計(jì)出來。合規(guī)性檢查也隱藏著審計(jì)的一個(gè)潛在前提,即審計(jì)必須基于預(yù)定的規(guī)范標(biāo)準(zhǔn),如果沒有規(guī)范標(biāo)準(zhǔn),也就無(wú)從審計(jì)。審計(jì)的核心特征是獨(dú)立性,主要表現(xiàn)為機(jī)構(gòu)獨(dú)立、人員獨(dú)立、工作獨(dú)立、經(jīng)濟(jì)獨(dú)立。獨(dú)立性是審計(jì)工作順利開展的基礎(chǔ),有了獨(dú)立性,才能保證審計(jì)的權(quán)威性、公正性。審計(jì)的過程就是收集、整理和分析審計(jì)證據(jù)的過程,審計(jì)證據(jù)可能是過往文件、書信、賬薄、人員名單等各種材料。審計(jì)的證據(jù)必須真實(shí)可靠、完整充分,證據(jù)是審計(jì)的基石,審計(jì)的整個(gè)過程就是圍繞著證據(jù)展開,首先根據(jù)審計(jì)的目的,選擇合適的證據(jù);然后整理分析所有采集的證據(jù),找出其中的關(guān)聯(lián)和脈絡(luò);最后給出分析結(jié)論。審計(jì)的職能是監(jiān)督、鑒證和評(píng)價(jià)。監(jiān)督,即監(jiān)控某個(gè)項(xiàng)目或某個(gè)人的運(yùn)作行為是否合法合規(guī),可及時(shí)提醒告誡;鑒證,即為某種目的提供事實(shí)證據(jù)或證明,鑒證結(jié)果可能是一個(gè)證明報(bào)告;評(píng)價(jià),即對(duì)某件事、某個(gè)部門或某個(gè)人進(jìn)行評(píng)價(jià),評(píng)價(jià)結(jié)果可能是合格、優(yōu)秀、不合規(guī)等。前一段時(shí)間熱播的電視劇《長(zhǎng)安十二時(shí)辰》中,靖安司(這是小說中虛構(gòu)的一個(gè)機(jī)構(gòu))的徐賓發(fā)明的“大案牘術(shù)”很是火了一把。靖安司匯聚了唐朝全國(guó)的卷宗,“大案牘術(shù)”就是利用這些卷宗中的各種記錄和數(shù)字,通過對(duì)紛繁復(fù)雜的文卷進(jìn)行分析,從蛛絲馬跡中抽絲剝繭,能找到矛盾點(diǎn),準(zhǔn)確推斷事情的真相,成為處理事務(wù)的殺手锏。比如通過對(duì)懷遠(yuǎn)坊的人員戶籍對(duì)比,發(fā)現(xiàn)有一個(gè)人數(shù)據(jù)異常。他是新來的租戶,名叫龍波,還帶來了一個(gè)女人。而這個(gè)龍波,恰恰是恐怖行動(dòng)的關(guān)鍵人物。所以本質(zhì)上講,“大案牘術(shù)”就是基于大數(shù)據(jù)的審計(jì)系統(tǒng)。
現(xiàn)在我們回頭再來看等保2.0中提到的安全審計(jì),其本質(zhì)是針對(duì)信息系統(tǒng)的審計(jì),和傳統(tǒng)的審計(jì)概念一脈相承,主要體現(xiàn)在:◇ 主要目的不變,仍然是合規(guī)性檢查。具體講就是通過數(shù)據(jù)分析,檢查用戶行為、進(jìn)程行為、通信行為、系統(tǒng)運(yùn)行等是否符合相關(guān)規(guī)范要求。◇ 核心特征不變,仍然是獨(dú)立性。具體講就是審計(jì)角色獨(dú)立、審計(jì)賬號(hào)獨(dú)立、審計(jì)工作獨(dú)立、審計(jì)設(shè)備/系統(tǒng)獨(dú)立。◇ 審計(jì)過程不變,仍然是收集、整理和分析審計(jì)證據(jù)的過程,區(qū)別在于審計(jì)證據(jù)變?yōu)閿?shù)字證據(jù),即日志、事件、報(bào)文等。信息系統(tǒng)的發(fā)展導(dǎo)致了大量的信息數(shù)據(jù),包括各種操作日志、流量日志、原始報(bào)文、會(huì)話日志等,證據(jù)收集相對(duì)比較簡(jiǎn)單。因?yàn)檫@些證據(jù)來源不同、格式不同、用途不同、數(shù)量巨大,所以針對(duì)信息系統(tǒng)的安全審計(jì),核心難點(diǎn)和關(guān)鍵技術(shù)是大數(shù)據(jù)的整理和分析技術(shù)?!?nbsp;審計(jì)職能不變,仍然是監(jiān)督、鑒證和評(píng)價(jià)。具體講,監(jiān)督就是實(shí)時(shí)監(jiān)控系統(tǒng)運(yùn)行或人員行為等,及時(shí)發(fā)現(xiàn)異常狀況產(chǎn)生告警,比如;鑒證就是提供數(shù)字證據(jù),防止抵賴,比如提供入侵攻擊事件的證據(jù);評(píng)價(jià)就是分析研判系統(tǒng)運(yùn)行和用戶行為的合規(guī)性,提供審計(jì)報(bào)表。隨著技術(shù)的發(fā)展,預(yù)測(cè)也逐漸發(fā)展成為審計(jì)的輔助職能。
所以,安全審計(jì)就是收集和記錄信息系統(tǒng)的各種日志、事件和流量信息,對(duì)這些信息進(jìn)行比較分析,檢查用戶或系統(tǒng)是否按照要求正常運(yùn)行的工作過程。
3安全審計(jì)主要技術(shù)
3.1 安全審計(jì)通用架構(gòu)
安全審計(jì)系統(tǒng)本質(zhì)是一個(gè)數(shù)據(jù)采集處理系統(tǒng),包括采集、處理、分析、存儲(chǔ)、查詢等過程,其中審計(jì)數(shù)據(jù)分析是核心功能點(diǎn)。
3.2 數(shù)據(jù)采集與處理技術(shù)
數(shù)據(jù)采集技術(shù)有多種形式,每種技術(shù)都有其優(yōu)缺點(diǎn),很多審計(jì)場(chǎng)景是綜合采用多種技術(shù)來采集數(shù)據(jù)。數(shù)據(jù)采集技術(shù)的分析如下表所示:
數(shù)據(jù)處理也分多個(gè)步驟,一般順序是數(shù)據(jù)過濾、數(shù)據(jù)去重、數(shù)據(jù)范化。數(shù)據(jù)過濾是接收到審計(jì)數(shù)據(jù)后的第一步工作,主要目的是基于審計(jì)要求和審計(jì)目的,去除不相干的數(shù)據(jù),保留必要的數(shù)據(jù)。比如日志上報(bào)和原始報(bào)文解析,一般都會(huì)有大量無(wú)關(guān)的數(shù)據(jù)信息,這些數(shù)據(jù)如果進(jìn)入后續(xù)的處理流程,將極大的增加后續(xù)的處理壓力。數(shù)據(jù)過濾一般使用的技術(shù):1、按某個(gè)字段過濾,比如某個(gè)IP地址;2、按某個(gè)類型過濾,比如某種日志類型;3、按正則表達(dá)式過濾,適用于字符串類型的文本信息。數(shù)據(jù)去重是指去重重復(fù)的數(shù)據(jù),一般方案是對(duì)重復(fù)數(shù)據(jù)計(jì)數(shù)后只記錄統(tǒng)計(jì)數(shù)字,不需要記錄原始的大量重復(fù)數(shù)據(jù),也是為了減少后續(xù)流程的處理壓力。數(shù)據(jù)去重一般使用內(nèi)存計(jì)算、哈希校驗(yàn)等相關(guān)計(jì)數(shù)。數(shù)據(jù)范化是指對(duì)數(shù)據(jù)進(jìn)行規(guī)范化處理,同類數(shù)據(jù)格式統(tǒng)一、含義一致。原始采集的數(shù)據(jù)來自各個(gè)不同的設(shè)備和系統(tǒng),數(shù)據(jù)格式多種多樣,為了方便后續(xù)的存儲(chǔ)和統(tǒng)計(jì)分析,才需要進(jìn)行數(shù)據(jù)范化的工作。數(shù)據(jù)范化一般使用內(nèi)存計(jì)算,采用字段映射、字段拆分、字段合并等方法使得數(shù)據(jù)格式統(tǒng)一、含義一致。
3.3 數(shù)據(jù)存儲(chǔ)與備份技術(shù)
審計(jì)數(shù)據(jù)格式多種多樣,可能是文件(比如圖片、或其他上傳的文件)、結(jié)構(gòu)化數(shù)據(jù)、非結(jié)構(gòu)數(shù)據(jù),需要采樣不同的存儲(chǔ)技術(shù)。早期的審計(jì)產(chǎn)品主要以文件和關(guān)系數(shù)據(jù)庫(kù)為存儲(chǔ)載體,近些年隨著非關(guān)系數(shù)據(jù)庫(kù)和大數(shù)據(jù)技術(shù)的發(fā)展,大部分審計(jì)產(chǎn)品都會(huì)融合使用這些技術(shù)。
存儲(chǔ)技術(shù)如下表說明:
數(shù)據(jù)備份不等同于雙機(jī)熱備或容災(zāi)系統(tǒng),這些概念一定要區(qū)分開。雙機(jī)熱備或容災(zāi)系統(tǒng)的目的在于保證系統(tǒng)數(shù)據(jù)和業(yè)務(wù)服務(wù)的“在線性”,即當(dāng)系統(tǒng)發(fā)生故障時(shí),仍然能夠正常地向網(wǎng)絡(luò)系統(tǒng)提供數(shù)據(jù)和服務(wù),以使系統(tǒng)業(yè)務(wù)不致停頓。雙機(jī)熱備和容災(zāi)系統(tǒng)中,但是如果一個(gè)節(jié)點(diǎn)誤刪除了數(shù)據(jù),也會(huì)同步到另一個(gè)節(jié)點(diǎn),即大家一起犯錯(cuò),無(wú)法恢復(fù)。數(shù)據(jù)備份則可以糾正這種錯(cuò)誤,數(shù)據(jù)備份按照一定的策略,定期把數(shù)據(jù)存儲(chǔ)到獨(dú)立的設(shè)備或介質(zhì)上,比如硬盤或磁帶、光盤等,能確保這些數(shù)據(jù)的可靠性。如果系統(tǒng)的數(shù)據(jù)存儲(chǔ)發(fā)生故障,可以恢復(fù)到某一個(gè)歷史時(shí)間點(diǎn)。數(shù)據(jù)備份的根本目的是歷史留存和重新利用,所以對(duì)于審計(jì)系統(tǒng)來說,數(shù)據(jù)備份是必不可少的重要組成部分。數(shù)據(jù)備份都會(huì)涉及三種備份策略:全量備份、增量備份、差量備份,一般需要綜合使用。三種策略的主要區(qū)別如下:
3.4 數(shù)據(jù)快速查詢技術(shù)
快速準(zhǔn)確檢索到符合要求的數(shù)據(jù)是審計(jì)系統(tǒng)的基本要求,直接對(duì)應(yīng)審計(jì)三大職能中的“鑒證”,也是“監(jiān)督”和“評(píng)價(jià)”的基礎(chǔ)。隨著數(shù)據(jù)量的增大,查詢性能一般都會(huì)越來越慢,甚至急劇下降,各個(gè)廠商的審計(jì)產(chǎn)品在使用過程中都會(huì)遇到查詢性能問題。大家知道,計(jì)算機(jī)體系結(jié)構(gòu)中,數(shù)據(jù)主要保存在硬盤上,而硬盤的存取速度要遠(yuǎn)遠(yuǎn)落后于內(nèi)存,內(nèi)存的存取速度又遠(yuǎn)遠(yuǎn)落后于高速緩存。所以數(shù)據(jù)快速查詢技術(shù)的關(guān)鍵點(diǎn)都在于減少硬盤操作時(shí)間,盡量使用內(nèi)存操作。目前查詢性能優(yōu)化方案可以分為2類:1、硬件方案,即更換機(jī)械硬盤為SSD固態(tài)硬盤,增加內(nèi)存。機(jī)械硬盤的主要結(jié)構(gòu)是一個(gè)高速旋轉(zhuǎn)的盤片和在盤片上來回讀寫數(shù)據(jù)的磁頭,而固態(tài)硬盤則是以電子存儲(chǔ)的方式來儲(chǔ)存數(shù)據(jù)的,完全減去了旋轉(zhuǎn)尋道的操作,也就極大的減少了硬盤操作時(shí)間。另外,目前主流的64位操作系統(tǒng)和數(shù)據(jù)庫(kù)都支持幾乎無(wú)限的內(nèi)存,增大內(nèi)存后,就可以把大批的數(shù)據(jù)轉(zhuǎn)移到內(nèi)存進(jìn)行處理,速度會(huì)有明顯提升。這個(gè)方案主要是花錢,然后調(diào)整一下數(shù)據(jù)庫(kù)的參數(shù)配置,但是效果非常好,可以立竿見影看到成效。2、軟件方案,即優(yōu)化數(shù)據(jù)結(jié)構(gòu)和算法。這是最體現(xiàn)碼農(nóng)價(jià)值的方案,好的數(shù)據(jù)結(jié)構(gòu)和算法,能達(dá)到事半功倍的效果。下面我們主要討論這一類的查詢優(yōu)化技術(shù)。前面提到,所有查詢技術(shù)的關(guān)鍵點(diǎn)都在于“減少硬盤操作時(shí)間,盡量使用內(nèi)存操作”,但是數(shù)據(jù)量這么大,又不可能都放到內(nèi)存中,怎么解決這個(gè)問題呢?答案就是“索引”——目前所有的數(shù)據(jù)庫(kù)在數(shù)據(jù)查詢方面最主要的武器都是索引。數(shù)據(jù)庫(kù)索引就類似一本書的目錄,能幫助我們快速找到相應(yīng)的數(shù)據(jù),是加速查詢操作的輔助文件結(jié)構(gòu)。傳統(tǒng)的查詢方法,是按照表的順序遍歷的,不論查詢幾條數(shù)據(jù),都需要將表的數(shù)據(jù)從頭到尾遍歷一遍。添加完索引之后,一般通過Hash、B-Tree或其他算法生成一個(gè)索引文件,在查詢數(shù)據(jù)庫(kù)時(shí),首先通過索引文件進(jìn)行查找,哈?;蛘郯氩檎业人惴梢源蠓嵘樵冃剩业较鄳?yīng)的鍵從而獲取數(shù)據(jù)。比如,MySQL支持的2種主要的索引結(jié)構(gòu)如下圖所示:
從該圖中可以看到,InnoDB引擎支持的聚簇索引,依靠索引找到主鍵Key,再根據(jù)Key找到對(duì)應(yīng)的原始數(shù)據(jù);MyISAM引擎支持的非聚簇索引,則直接依靠索引就找到了原始數(shù)據(jù)。
數(shù)據(jù)文件很大,但是索引相對(duì)就小很多。但是,索引并不像大家想象那么小,下圖就是一個(gè)實(shí)驗(yàn)表(MySQL數(shù)據(jù)庫(kù),InnoDB引擎)的數(shù)據(jù)和索引的實(shí)際大?。?nbsp;
所以,不能因?yàn)樗饕芴嵘樵冃示兔徒ㄋ饕?,索引在提升查詢性能的同時(shí),也會(huì)帶來一些問題:◇ 索引會(huì)降低更新表的速度,如對(duì)表進(jìn)行INSERT、UPDATE和DELETE。因?yàn)楦卤頃r(shí),MySQL不僅要保存數(shù)據(jù),還要保存一下索引文件?!?nbsp;索引會(huì)占用磁盤空間,一般情況這個(gè)問題不太嚴(yán)重,但如果你在一個(gè)大表上創(chuàng)建了多種組合索引,索引文件的會(huì)膨脹很快。另外,即使建立了索引,也不能保證就可以提升查詢性能,索引必須和SQL語(yǔ)句正確配合才能發(fā)揮應(yīng)有的作用。有些場(chǎng)景下索引會(huì)失效,主要失效場(chǎng)景如下:◇ 如果列的值為NULL,或者SQL語(yǔ)句使用IS NULL或者IS NOT NULL,將導(dǎo)致索引失效?!?nbsp;在一個(gè)SQL語(yǔ)句中,索引只能使用一次,如果在Where中使用了,那么在Order By中就會(huì)失效?!?nbsp;在LIKE操作中,'%aaa%'匹配不會(huì)使用索引,但是‘a(chǎn)aa%’可以使用索引?!?nbsp;在索引的列上使用表達(dá)式或者函數(shù)會(huì)使索引失效?!?nbsp;在查詢條件中使用<、>和!=會(huì)導(dǎo)致索引失效。◇ 在查詢條件中使用OR連接多個(gè)條件會(huì)導(dǎo)致索引失效,除非OR鏈接的每個(gè)條件都加上索引,這時(shí)應(yīng)該改為兩次查詢,然后用UNION ALL連接起來?!?nbsp;在Order By中不要多列排序。
上述所講的索引主要是針對(duì)關(guān)系數(shù)據(jù)庫(kù),審計(jì)系統(tǒng)的數(shù)據(jù)很多是非結(jié)構(gòu)化數(shù)據(jù),很多文檔和日志都屬于長(zhǎng)字符串,字符串模糊匹配是數(shù)據(jù)查詢很常見的場(chǎng)景,同時(shí)也是查詢效率最低的查詢類型。針對(duì)這種長(zhǎng)字符串的搜索,很多關(guān)系數(shù)據(jù)庫(kù)廠商推出了全文搜索引擎,其核心技術(shù)是“倒排索引”(inverted index)。倒排索引是一種索引方法,其基本原理是建立單詞到文檔的索引。倒排索引并不是關(guān)系數(shù)據(jù)庫(kù)廠商的發(fā)明,最早應(yīng)用于搜索引擎,目前所有的搜索引擎都采用了這種技術(shù),可以稱為搜索引擎的基石。倒排索引結(jié)構(gòu)示例圖如下:
有了倒排索引,就可以根據(jù)用戶輸入的查詢?cè)~快速找到對(duì)應(yīng)的文檔,而不需要在文檔中遍歷查找,極大的加快了查詢速度。倒排索引非常適合信息系統(tǒng)安全審計(jì)方面的數(shù)據(jù)查詢,主要原因:◇ 審計(jì)數(shù)據(jù)量大、格式多樣,很難統(tǒng)一格式化。這意味著傳統(tǒng)的關(guān)系數(shù)據(jù)庫(kù)索引不足以支撐審計(jì)數(shù)據(jù)的查詢?!?nbsp;審計(jì)數(shù)據(jù)的屬性有限,即經(jīng)過數(shù)據(jù)范化后的數(shù)據(jù),字段種類有限,主要信息包括:基于TCP/IP協(xié)議的網(wǎng)絡(luò)通信信息、賬號(hào)密碼信息、主體客體操作信息等。這意味著倒排索引相對(duì)容易構(gòu)建,索引數(shù)量不至于太龐大。ElasticSearch就是典型的采用倒排索引技術(shù)的文檔數(shù)據(jù)庫(kù),它的前身是一個(gè)搜索引擎,現(xiàn)在也經(jīng)常被用來作為NoSQL數(shù)據(jù)庫(kù),存儲(chǔ)非結(jié)構(gòu)化的數(shù)據(jù)。ElasticSearch與Logstash(數(shù)據(jù)收集和日志解析引擎)以及Kibana(數(shù)據(jù)分析和可視化平臺(tái))一起被稱為“ELK”,是一套成熟的數(shù)據(jù)采集分析解決方案,可以用來搭建審計(jì)系統(tǒng)的基礎(chǔ)框架。
3.5 數(shù)據(jù)智能分析技術(shù)
審計(jì)的三大職能中,“監(jiān)督”和“評(píng)價(jià)”都需要依靠數(shù)據(jù)分析技術(shù),主要區(qū)別是:“監(jiān)督”重點(diǎn)關(guān)注事中的實(shí)時(shí)監(jiān)測(cè)反饋,“評(píng)價(jià)”重點(diǎn)關(guān)注事后的總結(jié)分析。原始審計(jì)數(shù)據(jù)只能發(fā)現(xiàn)少量明顯的違規(guī)或異常數(shù)據(jù),只有對(duì)大量數(shù)據(jù)做關(guān)聯(lián)分析,建立安全事件分析模型,才可能發(fā)現(xiàn)那些潛在的威脅和違規(guī)行為,追查威脅路徑和源頭,并幫助進(jìn)行安全預(yù)防。梳理數(shù)據(jù)分析技術(shù)的歷史,大致經(jīng)歷了這么幾個(gè)過程:
>>> 關(guān)聯(lián)查詢
關(guān)聯(lián)查詢這是關(guān)系數(shù)據(jù)庫(kù)時(shí)代重點(diǎn)采用的分析技術(shù),SQL語(yǔ)句可以方便的支持多表的關(guān)聯(lián)查詢,從而可以把相關(guān)的數(shù)據(jù)篩選出來,這樣就比較方便找到多種數(shù)據(jù)一起來作為分析評(píng)價(jià)的證據(jù)。關(guān)聯(lián)查詢依賴數(shù)據(jù)庫(kù)的數(shù)據(jù),主要用于事后分析取證,基本無(wú)法用于事中監(jiān)督。
>>> 關(guān)聯(lián)分析
這里專指用于流數(shù)據(jù)的事件關(guān)聯(lián)分析技術(shù),屬于事中分析的技術(shù)。關(guān)聯(lián)分析主要通過定制關(guān)聯(lián)規(guī)則,對(duì)采集的數(shù)據(jù)進(jìn)行實(shí)時(shí)分析,在內(nèi)存中進(jìn)行規(guī)則匹配。如果匹配成功,就按照規(guī)則產(chǎn)生相應(yīng)的動(dòng)作,比如生成告警等。 不管是外部違規(guī)還是內(nèi)部違規(guī),從來都不是獨(dú)立的行為,都會(huì)有時(shí)序或者邏輯上的聯(lián)系,單看某個(gè)設(shè)備的日志可能無(wú)法發(fā)現(xiàn)問題,但是將所有這些信息合到一起,就可能發(fā)現(xiàn)其中的隱患,而這正是關(guān)聯(lián)分析的目的所在。例如,一個(gè)簡(jiǎn)單的典型的關(guān)聯(lián)規(guī)則可能是這樣的:“在5分鐘內(nèi),事件A發(fā)生3次,并且事件B發(fā)生2次,則生成C告警”。這些關(guān)聯(lián)分析的規(guī)則就是審計(jì)中所說的已知的規(guī)范要求。
>>> 數(shù)據(jù)挖掘
數(shù)據(jù)挖掘是針對(duì)大量數(shù)據(jù)的深層次關(guān)聯(lián)分析,直接用于事后分析,挖掘出來的規(guī)則模型也可以用于事前預(yù)測(cè)和事中監(jiān)督,屬于事后分析的技術(shù)。數(shù)據(jù)挖掘是按既定業(yè)務(wù)目標(biāo),對(duì)大量數(shù)據(jù)進(jìn)行挖掘分析,揭示隱藏的、未知的規(guī)律或驗(yàn)證已知的規(guī)律性,并進(jìn)一步將其模型化的方法。
前面我們講過,審計(jì)的一個(gè)基本前提是基于已知規(guī)范或要求,因?yàn)闆]有評(píng)價(jià)標(biāo)準(zhǔn)就沒辦法監(jiān)督和評(píng)價(jià)。但是數(shù)據(jù)挖掘卻可能揭示未知的規(guī)律,這和審計(jì)的概念是有矛盾的。所以,數(shù)據(jù)挖掘最初并不能直接應(yīng)用于審計(jì)的監(jiān)督和評(píng)價(jià)。那么數(shù)據(jù)挖掘是怎么成為安全審計(jì)領(lǐng)域重要的數(shù)據(jù)分析技術(shù)呢?
傳統(tǒng)的技術(shù)手段無(wú)法勝任現(xiàn)代信息系統(tǒng)的安全審計(jì)工作,主要原因在于,現(xiàn)在的入侵和攻擊手段越來越高明、越來越隱蔽,而且在不斷發(fā)生變化,人們已經(jīng)無(wú)法準(zhǔn)確定義信息系統(tǒng)里面安全行為或異常行為,傳統(tǒng)的安全規(guī)則也很難清晰描述對(duì)應(yīng)的規(guī)范,基于傳統(tǒng)安全規(guī)則或異常規(guī)則的判斷往往產(chǎn)生大量的誤報(bào)。數(shù)據(jù)挖掘的主要功能是從大量數(shù)據(jù)中挖掘規(guī)律,尋找數(shù)據(jù)之間的關(guān)系和模式,即大家常說的數(shù)據(jù)建?;蛑R(shí)發(fā)現(xiàn)。數(shù)據(jù)挖掘技術(shù)可以幫助我們學(xué)習(xí)或挖掘一個(gè)系統(tǒng)在正常工作時(shí)的潛在規(guī)律,也就是建立數(shù)據(jù)模型,然后再基于這個(gè)模型判斷和評(píng)價(jià)實(shí)時(shí)的網(wǎng)絡(luò)行為或用戶行為。數(shù)據(jù)挖掘本質(zhì)是統(tǒng)計(jì)學(xué)的范疇,統(tǒng)計(jì)學(xué)要想獲得比較理想的結(jié)果,就必須有大量的統(tǒng)計(jì)樣本。所以數(shù)據(jù)挖掘首先依賴數(shù)據(jù)量,數(shù)據(jù)越豐富、數(shù)據(jù)量越大,越有可能獲得更合理的判斷。而現(xiàn)代信息系統(tǒng)的安全審計(jì)工作剛好為數(shù)據(jù)挖掘提供了良好的數(shù)據(jù)基礎(chǔ),有了海量的、質(zhì)量也比較高的數(shù)據(jù)。所以,數(shù)據(jù)挖掘技術(shù)就發(fā)展成為安全審計(jì)的拳頭武器了。數(shù)據(jù)挖掘技術(shù)的主要能力包括:分類、估值、關(guān)聯(lián)分析、聚類、預(yù)測(cè)。(1)分類:首先根據(jù)已經(jīng)分好類的數(shù)據(jù)集進(jìn)行訓(xùn)練,建立分類的數(shù)據(jù)模型,然后利用該模型對(duì)于其他數(shù)據(jù)進(jìn)行分類。該能力可以用于審計(jì)監(jiān)督和評(píng)價(jià)。(2)估值:估值與分類相似,主要區(qū)別在于分類描述的是確定的離散型變量,而估值則是不確定的連續(xù)變量。該能力可以用于審計(jì)監(jiān)督和評(píng)價(jià)。(3)關(guān)聯(lián)分析:通過分析數(shù)據(jù)或記錄間的關(guān)系,決定哪些事情將一起發(fā)生(橫向關(guān)聯(lián)),哪些事情將先后發(fā)生(縱向關(guān)聯(lián)),從而發(fā)現(xiàn)異常行為。該能力可以用于審計(jì)監(jiān)督。(4)聚類:聚集是對(duì)數(shù)據(jù)分組,把相似的數(shù)據(jù)放在一個(gè)聚集里。聚集和分類的區(qū)別是聚類不依賴于預(yù)先定義好的類,不需要訓(xùn)練集。該能力可以用于審計(jì)監(jiān)督和評(píng)價(jià)。(5)預(yù)測(cè):預(yù)測(cè)一般通過分類或估值的模型,預(yù)測(cè)未來趨勢(shì)。預(yù)測(cè)已經(jīng)逐漸成為審計(jì)系統(tǒng)的輔助職能。因?yàn)閿?shù)據(jù)挖掘是基于統(tǒng)計(jì)學(xué)的技術(shù),所以其最后分析的結(jié)論更多是以概率的形式體現(xiàn),比如,根據(jù)當(dāng)前信息檢測(cè)到服務(wù)器A對(duì)服務(wù)器B發(fā)起網(wǎng)絡(luò)攻擊的概率為80%。這也決定了數(shù)據(jù)挖掘更適合承擔(dān)審計(jì)的“監(jiān)督”和“評(píng)價(jià)”職能,而不是“鑒證”。另外,數(shù)據(jù)挖掘和基于規(guī)則的關(guān)聯(lián)分析可以結(jié)合起來使用,數(shù)據(jù)挖掘根據(jù)大量數(shù)據(jù)發(fā)現(xiàn)異常點(diǎn),然后再依靠規(guī)則或者人工排查確認(rèn),可以用來幫忙尋找“鑒證”?,F(xiàn)代科技的發(fā)展已經(jīng)證實(shí),現(xiàn)實(shí)世界本身就是一個(gè)概率世界,當(dāng)概率足夠大時(shí)也可以作為證據(jù),比如DNA鑒定就是基于概率的,但是現(xiàn)在DNA鑒定已經(jīng)屬于我國(guó)刑事訴訟法上的法定七種證據(jù)之一。隨著數(shù)據(jù)挖掘技術(shù)的發(fā)展、數(shù)據(jù)模型的逐步細(xì)化,最后得出的結(jié)論的準(zhǔn)確度也可能逐漸增加,最后達(dá)到“鑒證”的要求。
>>> 人工智能
人工智能是一個(gè)比較寬泛的概念,包括多種技術(shù),現(xiàn)在還沒有一個(gè)精確的定義。該領(lǐng)域的研究?jī)?nèi)容包括:語(yǔ)音識(shí)別、文字識(shí)別、機(jī)器視覺、自然語(yǔ)言理解、知識(shí)推理、智能控制、人機(jī)博弈、數(shù)據(jù)挖掘等。該領(lǐng)域的數(shù)據(jù)基礎(chǔ)包括:微積分、線性代數(shù)、概率統(tǒng)計(jì)、博弈論、信息論、集合論、圖論等。
人工智能的應(yīng)用范圍很廣,我們單從審計(jì)角度看,人工智能其實(shí)是數(shù)據(jù)挖掘的進(jìn)一步發(fā)展延伸。人工智能的技術(shù)可以用于數(shù)據(jù)挖掘,比如機(jī)器學(xué)習(xí)技術(shù)可以用于數(shù)據(jù)挖掘的模式發(fā)現(xiàn)。機(jī)器學(xué)習(xí)的主要任務(wù)是設(shè)計(jì)和分析一些讓計(jì)算機(jī)可以從大量數(shù)據(jù)自動(dòng)“學(xué)習(xí)”的算法,是人工智能的核心研究領(lǐng)域之一。學(xué)習(xí)能力是人工智能的一個(gè)重要特征,不具有學(xué)習(xí)能力的系統(tǒng)很難稱之為一個(gè)真正的智能系統(tǒng)。機(jī)器學(xué)習(xí)算法需要從數(shù)據(jù)中自動(dòng)分析獲得規(guī)律,并利用規(guī)律對(duì)未知數(shù)據(jù)進(jìn)行判斷和預(yù)測(cè),所以機(jī)器學(xué)習(xí)和數(shù)據(jù)挖掘有不少交集。機(jī)器學(xué)習(xí)算法中也涉及了大量的統(tǒng)計(jì)學(xué)理論,也被稱為統(tǒng)計(jì)學(xué)習(xí)理論。機(jī)器學(xué)習(xí)領(lǐng)域現(xiàn)在很火的技術(shù)是基于神經(jīng)網(wǎng)絡(luò)的深度學(xué)習(xí)。深度學(xué)習(xí)的靈感來源于人類大腦的工作方式,是利用深度神經(jīng)網(wǎng)絡(luò)來解決特征表達(dá)的一種學(xué)習(xí)過程。深度神經(jīng)網(wǎng)絡(luò)本身并不是一個(gè)全新的概念,可理解為包含多個(gè)隱含層的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),是建立、模擬人腦進(jìn)行分析學(xué)習(xí)的神經(jīng)網(wǎng)絡(luò),模仿人腦的機(jī)制來解釋數(shù)據(jù)。神經(jīng)網(wǎng)絡(luò)的計(jì)算量非常大,在很長(zhǎng)時(shí)間里由于基礎(chǔ)設(shè)施技術(shù)的限制,計(jì)算能力達(dá)不到要求,進(jìn)展并不大。GPU的出現(xiàn)造就了深度學(xué)習(xí)的蓬勃發(fā)展。傳統(tǒng)的機(jī)器學(xué)習(xí)模式特別依賴工程,特征提取構(gòu)造是機(jī)器學(xué)習(xí)的重要環(huán)節(jié)。特征提取很大程度依賴行業(yè)專家,而且非常耗時(shí)間,需要不斷驗(yàn)證優(yōu)化。深度學(xué)習(xí)算法則可以自動(dòng)挖掘提取特征,極大的降低特征提取的工作量。但是深度學(xué)習(xí)挖掘的特征和學(xué)習(xí)算法有一個(gè)非常嚴(yán)重的問題,就是不可解釋性。不可解釋性在審計(jì)領(lǐng)域是很難被接納應(yīng)用的。審計(jì)結(jié)論不能說“就是說不清楚為什么,反正機(jī)器就是判斷你違法了!”,這也是深度學(xué)習(xí)還需要深入研究的難題。但是深度學(xué)習(xí)在有些領(lǐng)域效果非常好,單從最終效果看已經(jīng)超過人類的專家。所以深度學(xué)習(xí)技術(shù)可以結(jié)合規(guī)則或人類輔助驗(yàn)證用于審計(jì)系統(tǒng),即深度學(xué)習(xí)技術(shù)用于發(fā)現(xiàn)異常,再由人類專家驗(yàn)證確認(rèn)。知識(shí)圖譜則不需要很高的硬件性能要求,不像深度學(xué)習(xí)需要大量GPU運(yùn)算,而且知識(shí)圖譜的評(píng)判結(jié)論可以解釋的很清楚。因?yàn)橹R(shí)圖譜的主要依據(jù)是人類已知的經(jīng)驗(yàn)和知識(shí)。知識(shí)圖譜的本質(zhì)是充分利用人類的先驗(yàn)知識(shí),用圖來表示知識(shí)的結(jié)構(gòu)化方式,通過不同知識(shí)的關(guān)聯(lián)性形成一個(gè)網(wǎng)狀的知識(shí)結(jié)構(gòu),涉及知識(shí)提取、表達(dá)、存儲(chǔ)、檢索、推理一系列技術(shù)。在支付寶的風(fēng)控審計(jì)應(yīng)用中,知識(shí)圖譜產(chǎn)品已經(jīng)被應(yīng)用于揭露金融欺詐、中介造假、洗錢和其他復(fù)雜的欺詐手法,獲得很好的效果。在安全審計(jì)領(lǐng)域,知識(shí)圖譜可以用于根據(jù)已有的安全知識(shí),及時(shí)發(fā)現(xiàn)入侵攻擊等異常行為,進(jìn)行監(jiān)督、評(píng)價(jià)和預(yù)測(cè)。安全審計(jì)系統(tǒng)應(yīng)用知識(shí)圖譜的關(guān)鍵點(diǎn)在于構(gòu)建包含多方面安全知識(shí)的圖譜和利用圖譜進(jìn)行知識(shí)推理判斷。知識(shí)圖譜的構(gòu)建以及后續(xù)的不斷完善,可以融合機(jī)器學(xué)習(xí)、深度學(xué)習(xí)等技術(shù),即機(jī)器學(xué)習(xí)得到知識(shí),人工確認(rèn)后用于構(gòu)建知識(shí)圖譜。安全審計(jì)和人工智能的結(jié)合還在逐漸發(fā)展中,根據(jù)審計(jì)的根本要求,結(jié)合各項(xiàng)技術(shù)的特點(diǎn)和發(fā)展,未來安全審計(jì)的智能分析技術(shù)架構(gòu)應(yīng)該是“海量數(shù)據(jù)做支撐、機(jī)器學(xué)習(xí)來建模、知識(shí)推理做評(píng)判”。
“處理知識(shí)是人類所擅長(zhǎng)的,而處理數(shù)據(jù)是計(jì)算機(jī)所擅長(zhǎng)的,如果能夠?qū)⒍呓Y(jié)合起來,一定能夠構(gòu)建出比人類更加智能的系統(tǒng)。AI未來的科學(xué)突破是建立一種同時(shí)基于知識(shí)和數(shù)據(jù)的AI系統(tǒng)?!薄迦A大學(xué)張鈸院士。
4安全審計(jì)主要分類
4.1 主機(jī)安全審計(jì)
主機(jī)安全審計(jì),顧名思義就是對(duì)單臺(tái)主機(jī)的安全審計(jì)。這是最基礎(chǔ)的審計(jì)也是最復(fù)雜的審計(jì),因?yàn)橹鳈C(jī)幾乎是所有業(yè)務(wù)系統(tǒng)的承載體,主機(jī)安全關(guān)系重大,同時(shí)主機(jī)也是最通用的計(jì)算單元,功能最復(fù)雜,接口最多,需要審計(jì)的內(nèi)容和格式也多種多樣。等保2.0要求的安全計(jì)算環(huán)境的審計(jì),大部分可以算作主機(jī)安全審計(jì)的范疇。為了拿到最可靠的審計(jì)證據(jù),主機(jī)安全審計(jì)一般需要在主機(jī)上安裝代理軟件來采集數(shù)據(jù)進(jìn)行審計(jì)。主機(jī)安全審計(jì)的內(nèi)容很多,但是又需要嚴(yán)格控制對(duì)主機(jī)系統(tǒng)資源(CPU、內(nèi)存、硬盤等)的占用,避免影響正常業(yè)務(wù)運(yùn)行。和主機(jī)相關(guān)的所有信息都可以納入審計(jì)的范圍,不同廠家的產(chǎn)品可能實(shí)現(xiàn)其中一部分??傮w看,主機(jī)安全審計(jì)包括但不限于下列內(nèi)容:
4.2 網(wǎng)絡(luò)安全審計(jì)
網(wǎng)絡(luò)安全審計(jì)是針對(duì)網(wǎng)絡(luò)訪問或網(wǎng)絡(luò)通信的審計(jì)?,F(xiàn)在幾乎所有的業(yè)務(wù)系統(tǒng)都要使用網(wǎng)絡(luò),幾乎沒有基于單機(jī)的業(yè)務(wù)系統(tǒng)了,所以網(wǎng)絡(luò)安全審計(jì)也是非常重要的一個(gè)審計(jì)類別。等保2.0要求的安全網(wǎng)絡(luò)邊界的審計(jì),可以算作網(wǎng)絡(luò)安全審計(jì)的范疇。網(wǎng)絡(luò)安全審計(jì)的數(shù)據(jù)采集方式如下表所示:
和網(wǎng)絡(luò)相關(guān)的所有信息都可以內(nèi)納入審計(jì)的范圍,審計(jì)內(nèi)容如下表所示:
4.3 數(shù)據(jù)庫(kù)安全審計(jì)
數(shù)據(jù)庫(kù)安全審計(jì)的概念相對(duì)比較新,近幾年因?yàn)閿?shù)據(jù)安全相關(guān)問題被頻繁暴露出來,大家開始重視數(shù)據(jù)庫(kù)的安全審計(jì)工作。數(shù)據(jù)庫(kù)安全審計(jì)主要針對(duì)常見數(shù)據(jù)庫(kù)(比如:SQL Server、Oracle、MySQL、MongoDB等)的各項(xiàng)操作進(jìn)行審計(jì),比如增、刪、改、查等操作。數(shù)據(jù)庫(kù)安全審計(jì)的數(shù)據(jù)采集方式如下表所示: 數(shù)據(jù)庫(kù)服務(wù)器相關(guān)的內(nèi)容都可以列入審計(jì)范圍,具體內(nèi)容如下表所示:
4.4 業(yè)務(wù)安全審計(jì)
業(yè)務(wù)安全審計(jì)是對(duì)業(yè)務(wù)系統(tǒng)應(yīng)用過程的審計(jì)。業(yè)務(wù)系統(tǒng)一般包括服務(wù)器、網(wǎng)絡(luò)設(shè)備、應(yīng)用系統(tǒng)、數(shù)據(jù)庫(kù)系統(tǒng)、客戶端等,所以業(yè)務(wù)安全審計(jì)需要融合主機(jī)安全審計(jì)、網(wǎng)絡(luò)安全審計(jì)、數(shù)據(jù)庫(kù)安全審計(jì)和運(yùn)維安全審計(jì)等功能,一般需要定制開發(fā),針對(duì)業(yè)務(wù)系統(tǒng)用戶在系統(tǒng)中的操作行為進(jìn)行記錄和審計(jì)。另外,為減少應(yīng)用系統(tǒng)因?qū)徲?jì)而產(chǎn)生的性能降低,可以配合第三方審計(jì)系統(tǒng)(比如日志審計(jì))來完成審計(jì)工作。等保2.0關(guān)于安全管理中心的審計(jì)內(nèi)容,可以算作業(yè)務(wù)安全審計(jì)的范疇。業(yè)務(wù)安全審計(jì)的數(shù)據(jù)采集方式如下表所示:
業(yè)務(wù)安全審計(jì)是融合多種內(nèi)容的審計(jì)工作,具體審計(jì)內(nèi)容如下表所示:
4.5 運(yùn)維安全審計(jì)
運(yùn)維安全審計(jì)是一種特殊的業(yè)務(wù)審計(jì),主要包括2種:堡壘機(jī)接入審計(jì)和KVM接入審計(jì)。堡壘機(jī)是運(yùn)維人員通過網(wǎng)絡(luò)遠(yuǎn)程接入的代理,KVM則適用于運(yùn)維人員在機(jī)房直接操作其他服務(wù)器。運(yùn)維審計(jì)以應(yīng)用層代理的方式運(yùn)行,獲取應(yīng)用層網(wǎng)絡(luò)協(xié)議,進(jìn)行還原分析,在重新打包提交給目標(biāo)主機(jī)。運(yùn)維安全審計(jì)的數(shù)據(jù)采集方式比較直接,作為代理,可以獲得加密前的數(shù)據(jù),所以運(yùn)維安全審計(jì)可以獲得更多的審計(jì)證據(jù)。運(yùn)維安全審計(jì)的審計(jì)內(nèi)容如下表所示:
以上信息來源于:威努特工控安全