喻波,王志海,孫亞東,謝福進,安鵬
(北京明朝萬達(dá)科技股份有限公司,北京 100876)
伴隨大數(shù)據(jù)時代來臨,數(shù)據(jù)同土地、勞動力一樣列入生產(chǎn)要素之一,為加快培育數(shù)據(jù)要素市場,數(shù)據(jù)安全防護是基礎(chǔ)保障[1]。由于業(yè)務(wù)場景復(fù)雜多變、數(shù)據(jù)量持續(xù)增長,基于數(shù)據(jù)流的信息化架構(gòu)演進對數(shù)據(jù)安全防護提出了更高要求。傳統(tǒng)的數(shù)據(jù)安全防護措施難以適應(yīng)新時代架構(gòu)復(fù)雜、場景多樣、數(shù)據(jù)海量、交互頻繁的“大物移云智”環(huán)境。在數(shù)據(jù)安全領(lǐng)域,可以把管控場景劃分為強管控、中管控、弱管控3種場景。針對強管控場景,在數(shù)據(jù)傳輸、數(shù)據(jù)存儲等環(huán)節(jié)采取全量數(shù)據(jù)加密手段,可以解決強管控場景的安全訴求。但是在更為普遍的中管控場景,敏感數(shù)據(jù)與非敏感數(shù)據(jù)混合使用,如果采用強管控,必然對操作效率造成影響,但如果弱管控,又會造成敏感數(shù)據(jù)泄露。因此中管控場景,識別敏感數(shù)據(jù)與異常行為是目前數(shù)據(jù)安全領(lǐng)域研究的重要問題。
近年來企業(yè)內(nèi)部人員竊取數(shù)據(jù)事件頻發(fā),如銀行內(nèi)部人員竊取、販賣上萬條用戶信息,根據(jù)Gartner的調(diào)查結(jié)果[2],內(nèi)部人員竊取敏感數(shù)據(jù)、盜用賬號等行為已經(jīng)成為企業(yè)數(shù)據(jù)泄露的最主要原因。由于內(nèi)部人員具備企業(yè)數(shù)據(jù)資產(chǎn)的合法訪問權(quán)限,且了解企業(yè)敏感數(shù)據(jù)的存放位置,因此內(nèi)部人員在合法外衣的保護下,自由地游走在企業(yè)內(nèi)網(wǎng),進行長期而隱蔽的數(shù)據(jù)竊取行為。
導(dǎo)致上述現(xiàn)象的根本原因是企業(yè)經(jīng)營活動復(fù)雜、業(yè)務(wù)系統(tǒng)多、數(shù)據(jù)規(guī)模大,無法窮舉人員、終端、應(yīng)用、數(shù)據(jù)之間多對多的使用與訪問規(guī)則,從而為內(nèi)部惡意人員留下了巨大的非法活動空間。這種情況下,安全部門只能把管控重點放在已知的、規(guī)則明確的安全威脅上,導(dǎo)致內(nèi)部人員長期、隱蔽數(shù)據(jù)竊取行為發(fā)現(xiàn)難,數(shù)據(jù)泄露事件依然層出不窮[3-5]。
因此,研究文檔分類分級技術(shù),識別需要重點保護的敏感數(shù)據(jù);研究用戶異常行為分析技術(shù),識別用戶異常操作,是解決內(nèi)網(wǎng)數(shù)據(jù)泄露的重要課題。
根據(jù)數(shù)據(jù)安全治理理論,數(shù)據(jù)安全防護的基礎(chǔ)是識別數(shù)據(jù)資產(chǎn)、分級分類數(shù)據(jù)資產(chǎn),只有明確了數(shù)據(jù)保護對象及安全等級,才能對數(shù)據(jù)實施按需防護,避免一刀切式的靜態(tài)防御,促進數(shù)據(jù)的安全流通與共享。
在數(shù)據(jù)資產(chǎn)的識別過程中,按載體形態(tài)差異其識別方式也存在不同,數(shù)據(jù)按載體形態(tài)主要劃分為結(jié)構(gòu)化數(shù)據(jù)與非結(jié)構(gòu)化數(shù)據(jù)兩類。針對結(jié)構(gòu)化數(shù)據(jù),數(shù)據(jù)集中承載在數(shù)據(jù)庫中,可以通過元數(shù)據(jù)的精確定義,較為直接地進行數(shù)據(jù)資產(chǎn)識別并實施分級分類管控,但針對廣泛分布在終端、網(wǎng)絡(luò)、云存儲中的非結(jié)構(gòu)化敏感數(shù)據(jù)(如商務(wù)合同、會議紀(jì)要、監(jiān)管報告、技術(shù)資料等敏感文檔),鑒于文檔是由字、詞及上下文語義構(gòu)成的,單純的依賴關(guān)鍵詞、正則表達(dá)式等傳統(tǒng)規(guī)則手段對文檔分類進行識別,缺乏詞與詞之間的上下文語義級分析,導(dǎo)致文檔分類分級的高誤報率與高漏報率。如商務(wù)合同與涉訴文檔,雖然都會存在甲方、乙方、聯(lián)系電話、聯(lián)系方式等關(guān)鍵詞,但在不同類型文檔語境下,其文檔表達(dá)含義與分類截然不同。而且,由于文檔分類定級誤判,會產(chǎn)生敏感文檔的非授權(quán)明文外發(fā)風(fēng)險,進而導(dǎo)致數(shù)據(jù)泄露。由于分類誤判對非敏感級文檔進行加密、阻斷處理,影響正常業(yè)務(wù)開展[6-8]。
通過自然語言處理技術(shù)檢測識別文檔敏感內(nèi)容,已經(jīng)演化為文檔智能分類分級的技術(shù)趨勢,在落地實施過程中,也面臨如下突出的技術(shù)問題[9]。
在文檔語義特征表達(dá)層面,各領(lǐng)域文檔形式多樣、內(nèi)容豐富、中文語體混雜的情況普遍存在,例如公安電子筆錄形式多樣,官方語體和方言語體交相混雜,且上下文語義高度相關(guān)。而目前的語言模型建立在樸素貝葉斯獨立性假設(shè)的基礎(chǔ)上,現(xiàn)實情況明顯無法滿足獨立性假設(shè)要求,從而導(dǎo)致文檔分類分級的準(zhǔn)確率較低[9-10]。
在文檔內(nèi)容識別層面,敏感文檔的分類檢測技術(shù)分為有監(jiān)督和無監(jiān)督兩種模式,無監(jiān)督文檔分類技術(shù)不需要樣本但準(zhǔn)確率很低,有監(jiān)督文檔準(zhǔn)確率相對較高,但存在樣本標(biāo)注工作量大、人工標(biāo)注質(zhì)量無法保證的問題,直接導(dǎo)致產(chǎn)品研發(fā)周期長、成本高、效果差的問題[11]。
針對文檔分類分級在實際應(yīng)用中面臨的技術(shù)問題,本文提出如下的解決思路:構(gòu)建N元中文語言模型,解決當(dāng)前語言模型面臨的獨立性假設(shè)不成立問題。構(gòu)建自動無監(jiān)督樣本庫,解決當(dāng)前樣本標(biāo)注工作量大,質(zhì)量難保證問題。
2.2.1 語言模型基本原理
語言模型的發(fā)展經(jīng)歷了專家語法規(guī)則模型、統(tǒng)計語言模型和神經(jīng)網(wǎng)絡(luò)語言模型。專家語法規(guī)則模型在初始階段利用模式匹配技術(shù),以自然語言的語法規(guī)則為切入點,模式匹配歸納總結(jié),提供自然語言建模能力,但隨著語法規(guī)則規(guī)模急劇擴大,專家語法規(guī)則已不可持續(xù)[12]。
統(tǒng)計語言模型認(rèn)為文檔由單詞序列構(gòu)成,通過建模,分析文檔中單詞的概率分布。統(tǒng)計語言模型基于樸素貝葉斯的獨立性假設(shè),即將句子S看成一組相互獨立的單詞序列 (w1w2···wn),那么對于任意一個單詞wi(i≤n)在句子S中出現(xiàn)的條件概率為P(wi|w1w2···wi?1),那么整個句子的概率模型P(S)=P(w1w2···wn),根據(jù)貝葉斯公式和全概率公式可推導(dǎo)出概率模型:
式(1)必須在基于樸素貝葉斯獨立性假設(shè)條件的情況下才成立,但是在實際應(yīng)用中樸素貝葉斯獨立性假設(shè)往往不成立。
神經(jīng)網(wǎng)絡(luò)語言模型為了應(yīng)對獨立性假設(shè)不成立的問題,采用因果思路,在語料庫龐大到能覆蓋所有可能語義表述的情況下,通過訓(xùn)練的方法獲得條件概率P(wi|w1w2···wi?1)。但是收集這樣一個龐大的語料庫本身就是一個問題,在特別的應(yīng)用領(lǐng)域,例如各地方言與官方語體混雜語料的收集明顯不可行[13]。
2.2.2N元中文語言模型構(gòu)建過程
因此在統(tǒng)計語言模型的基礎(chǔ)上提出N元中文語言模型,其核心思想是將語言模型劃分為N個相互獨立的子模型,分段訓(xùn)練,利用線性插值公式分步整合。其實施過程:
1) 將語料庫按領(lǐng)域和語體劃分為N個語料庫子集;
2) 針對各個語料子集訓(xùn)練特定語言模型;
3) 使用線性插值公式,獲得整個語言模型:
式中 0≤λ≤1。 λ 的期望最大值(expectation maximum, EM)的迭代計算方法為
1) 對于N個語言模型,使用隨機數(shù)初始化 λ;
2)根據(jù)整個語言模型公式計算新的語言模型概率;
3)第r次迭代,第j個語言模型在第i(i≤n)類上 λ 的計算公式為
式中h為歷史。
4)不斷迭代,重復(fù)步驟2)、3),直至收斂。
通過上述方法,將中文語言模型的困惑度值從320降低到150以下,為自然語言處理后續(xù)任務(wù)奠定基礎(chǔ)。
2.2.3 無監(jiān)督算法構(gòu)建樣本庫基本原理
常用的無監(jiān)督聚類包括K均值聚類、均值漂移聚類、基于密度的聚類方法、高斯混合模型的最大期望聚類和層次聚類等。經(jīng)實驗驗證效果最好的方法是K均值聚類。K均值聚類首先隨機選擇K個中心點,其次計算每個樣本到K個中心點的歐氏距離,然后將每個樣本劃分到離它最近的中心點所屬類族,最后更新每個類族的中心點,重復(fù)迭代直到所有的樣本不再被重新分類為止[14]。此過程不需要人工標(biāo)注樣本,無須人工干預(yù)就可以自動區(qū)分樣本及類別,但是K均值聚類面臨兩個問題:
1)K的取值問題。在業(yè)務(wù)層面,企業(yè)往往也無法提供文檔類別數(shù);在技術(shù)層面,K均值聚類算法的K取值本身也是一個關(guān)鍵問題。
2) 準(zhǔn)確率低問題。K均值聚類算法,雖然是效果最好的無監(jiān)督算法,但是準(zhǔn)確率也只能到70%,與構(gòu)建樣本庫的要求還相去甚遠(yuǎn)。
2.2.4 基于無監(jiān)督算法的樣本庫構(gòu)建過程
針對上述問題,基于無監(jiān)督算法的樣本庫構(gòu)建過程如下:
1) 從生產(chǎn)環(huán)境網(wǎng)絡(luò)出口收集大量文檔,作為樣本集Q;
2) 采用N元中文語言模型對樣本Q中的文檔進行特征提取;
3) 采用數(shù)據(jù)分析工具Pandas對樣本集Q中的文檔特征進行特征對齊;
4) 采用非線性降維的算法(uniform manifold approximation and projection for dimension reduction,UMAP)降維文檔特征,降低文檔特征復(fù)雜性,提高聚類準(zhǔn)確率;
5) 確定K均值聚類算法的K值,具體原理和方法為:假設(shè)真實類別數(shù)為N,所有樣本到其所屬類族中心的距離的平方和為D,隨著K值增加,樣本劃分的類族越來越精細(xì),每個類族的內(nèi)聚程度會越來越高,那么平方和D會越來越?。划?dāng)K值小于N時,增加K值時會大幅增加每個族的聚合程度,故平方和D下降梯度會很大,當(dāng)K值大于等于N時,繼續(xù)增加K值,類族內(nèi)部的聚合效果不再明顯,所以平方和D下降梯度會急劇變小,平方和D下降梯度拐點即為真實聚類數(shù)K:
式中:i為類族編號;Ci為第i個類族;P為Ci中的某一個文檔數(shù)據(jù);Mi為Ci的類族中心點向量;D為所有樣本到其所屬類族中心的距離的平方和;
6) 按照5)確定的K值,對樣本集Q進行聚類,得到聚類結(jié)果,由于K均值聚類算法準(zhǔn)確率離樣本庫準(zhǔn)確率要求太遠(yuǎn),優(yōu)化K均值聚類算法提升準(zhǔn)確率的投入大而回報小,所以不可取。因此采用將無監(jiān)督轉(zhuǎn)換為有監(jiān)督,分批迭代,投票篩選樣本的辦法來解決此問題;
7) 從K均值聚類結(jié)果中挑出一部分離類族中心距離小于預(yù)設(shè)閥值M的文檔作為樣本集Y,可以調(diào)節(jié)M的取值,確保挑中樣本集Y的準(zhǔn)確性;
8) 將樣本集Y分為訓(xùn)練集和驗證集;
9) 分別采用支持向量機、TextCNN、鄰近算法建模,并使用樣本集Y訓(xùn)練模型;
10) 從Q中取出一批樣本,分別使用已訓(xùn)練的支持向量機、TextCNN、鄰近算法模型進行預(yù)測;
11) 使用少數(shù)服從多數(shù)的投票法,對預(yù)測結(jié)果進行合并,挑出至少有2個模型預(yù)測結(jié)果均一樣的樣本,將這些樣本合并到樣本集Y中;
12) 重復(fù)步驟10)~11),直至樣本數(shù)量達(dá)到要求。
隨著企業(yè)IT架構(gòu)日益復(fù)雜,業(yè)務(wù)系統(tǒng)逐步增多,大量內(nèi)部隱藏、持久、緩慢的數(shù)據(jù)泄露行為成為企業(yè)數(shù)據(jù)安全關(guān)注的重點。傳統(tǒng)的單點式安全防護措施,對于具備一定反偵查能力的數(shù)據(jù)泄露行為,毫無辦法。為了解決隱蔽數(shù)據(jù)泄露問題,采用基于人工智能的用戶異常行為分析技術(shù),從傳統(tǒng)的特征規(guī)則和人工分析轉(zhuǎn)向大數(shù)據(jù)和機器學(xué)習(xí)驅(qū)動的新型安全模式[14]。
基于從正常行為中發(fā)現(xiàn)規(guī)律,從規(guī)律中挖掘異常的思路:首先,基于歷史數(shù)據(jù)構(gòu)建用戶個體行為、群體行為、場景行為三大行為基線,從個體、群體、場景3個角度詮釋正常用戶行為;然后,采用神經(jīng)網(wǎng)絡(luò),建立用戶異常行為模型,對用戶異常行為進行跟蹤、預(yù)測與判定。模型具備實時流處理、離線批量處理兩項能力,實時流用于實時分析日志,動態(tài)發(fā)現(xiàn)異常,并進行跟蹤。離線批量處理,用于對歷史數(shù)據(jù)進行分析判定,在歷史數(shù)據(jù)中發(fā)現(xiàn)已發(fā)生的異常行為[15]如圖1所示。
圖1 模型構(gòu)建過程Fig.1 Build model process
在用戶異常行為分析中,采用大數(shù)據(jù)和機器學(xué)習(xí)構(gòu)建異常檢測模型,顯著提高異常行為識別能力,縮短策略升級嚴(yán)重滯后問題,異常行為檢測時間控制在24 h以內(nèi),自動優(yōu)化模型,實現(xiàn)自適應(yīng)動態(tài)風(fēng)險識別[15]。
目前采用機器學(xué)習(xí)技術(shù)幫助企業(yè)明確用戶與實體的行為基線,檢測偏離基線的異常行為,防止數(shù)據(jù)泄露。但在實際生產(chǎn)環(huán)境中,由于樣本依賴度過高而導(dǎo)致異常行為識別準(zhǔn)確率較低。
現(xiàn)有的用戶異常行為分析系統(tǒng)需要通過大量已標(biāo)注樣本數(shù)據(jù),訓(xùn)練生成用戶異常行為分析模型,但是在實際應(yīng)用中,用戶往往不具備足夠的已標(biāo)注樣本數(shù)據(jù),從而導(dǎo)致系統(tǒng)識別準(zhǔn)確率偏低[16-17]。
為解決目前用戶異常行為分析過程中樣本依賴過高的問題,構(gòu)建無樣本依賴、實時識別異常行為的分析系統(tǒng)。本文采用無監(jiān)督異常點檢測算法,以海量行為日志數(shù)據(jù)為基礎(chǔ),計算單一操作行為異常,自動構(gòu)建異常行為樣本庫,解決樣本依賴問題。
3.3.1 離群點檢測構(gòu)建異常行為樣本庫基本原理
由于異常行為與正常行為日志數(shù)據(jù)混雜存儲,異常數(shù)據(jù)呈現(xiàn)出以下特點:
1) 異常數(shù)據(jù)的特征與大多數(shù)數(shù)據(jù)的特征是不一致的,例如同一個員工,大多數(shù)情況下都會使用自己的賬號登錄業(yè)務(wù)系統(tǒng),員工每天的工作內(nèi)容都基本相同,其行為也應(yīng)基本相同。如果某天在自己辦公電腦上使用其他賬號登錄,就可能是非正常行為。
2) 異常數(shù)據(jù)在企業(yè)數(shù)據(jù)中的占比較小,例如同一崗位的不同員工,大多數(shù)情況下工作內(nèi)容基本相同,其工作產(chǎn)生的行為日志特征也基本相同,如若某員工與其他同崗位員工行為不太一致,就可能是非正常行為。
針對上述日志數(shù)據(jù)的特點,可以采用基于統(tǒng)計的、距離的、密度的量化指標(biāo),刻畫異常數(shù)據(jù)與全集數(shù)據(jù)的疏離程度,即離群點檢測方法[18]。
3.3.2 離群點檢測構(gòu)建異常行為樣本庫構(gòu)建過程
依據(jù)企業(yè)日志數(shù)據(jù)的特點,企業(yè)用戶異常行為樣本庫構(gòu)建過程如下:
1) 在用戶終端部署終端日志采集器,收集用戶操作行為數(shù)據(jù),如系統(tǒng)登錄、文檔操作、軟件使用、郵件外發(fā)、上網(wǎng)行為等日志數(shù)據(jù);
2) 在數(shù)據(jù)庫、應(yīng)用服務(wù)器、交換機等位置部署設(shè)備日志采集器,采集防火墻、業(yè)務(wù)系統(tǒng)、數(shù)據(jù)庫等系統(tǒng)與設(shè)備的用戶操作日志;
3) 定義用戶異常行為場景;
4) 依據(jù)異常行為場景,確定場景所需的用戶行為數(shù)據(jù);
5) 依據(jù)場景所需的用戶行為數(shù)據(jù),從用戶及操作類型的角度切分?jǐn)?shù)據(jù);
6) 對切分好的數(shù)據(jù)按照場景要求進行特征提?。?/p>
7) 使用鄰近算法、離群點檢測算法和Feature Bagging等算法,分析建模特征數(shù)據(jù),分離出正常數(shù)據(jù)和異常數(shù)據(jù);
8) 按場景聚合正常數(shù)據(jù),形成樣本庫。
構(gòu)建數(shù)據(jù)分類分級與異常行為分析實驗系統(tǒng),分析驗證技術(shù)可行性與應(yīng)用效果。
實驗系統(tǒng)采用Spring Cloud微服務(wù)架構(gòu),使用應(yīng)用容器Docker進行部署,采用關(guān)系型與文件型混合存儲模式,通過Nginx Web服務(wù)器實現(xiàn)負(fù)載均衡。系統(tǒng)架構(gòu)包括采集層、分析層、存儲層、可視化層。
實驗系統(tǒng)采用探針主動采集和接口被動采集兩種模型,管理員可以通過圖形化界面選擇采集模型,定義探針主動采集頻率、被動采集服務(wù)地址。主動采集探針部署在操作終端、交換機、應(yīng)用服務(wù)器、數(shù)據(jù)庫審計系統(tǒng),主動采集日志。被動采集服務(wù)部署在服務(wù)端,通過標(biāo)準(zhǔn)接口,對接操作終端、交換機、應(yīng)用服務(wù)器、數(shù)據(jù)庫審計等系統(tǒng)上報的日志數(shù)據(jù)。日志數(shù)據(jù)上報后,數(shù)據(jù)流轉(zhuǎn)引擎將日志數(shù)據(jù)推送至分布式消息系統(tǒng)Kafka數(shù)據(jù)隊列組件中準(zhǔn)備進行數(shù)據(jù)清洗處理與持久化。
采集探針利用日志處理引擎Logstash的filebeat組件,采用TCP、UDP協(xié)議將日志數(shù)據(jù)上報到采集層,通過網(wǎng)絡(luò)和應(yīng)用監(jiān)測系統(tǒng)Zabbix Agent將日志數(shù)據(jù)上報至Zabbix 服務(wù)器。
采集層匯集日志數(shù)據(jù)后,經(jīng)過數(shù)據(jù)匹配、解析以及組裝操作,將數(shù)據(jù)推送到采集層中的Kafka隊列中,通過數(shù)據(jù)分流操作以及動態(tài)模板匹配操作將數(shù)據(jù)推送到數(shù)據(jù)搜索引擎Elasticsearch中完成日志數(shù)據(jù)的存儲流程。
采集層通過Logstash的input、filter、output組件對數(shù)據(jù)進行匹配、解析、組裝,通過 HTTP Client讀取Zabbix 服務(wù)端的數(shù)據(jù),進行處理操作后將數(shù)據(jù)上報到數(shù)據(jù)存儲層。
存儲層存儲訓(xùn)練用戶異常行為分析模型需要的日志數(shù)據(jù)、訓(xùn)練分類分級模型需要的文檔樣本數(shù)據(jù)、用戶異常行為告警數(shù)據(jù)、安全事件審計數(shù)據(jù)。其中日志數(shù)據(jù)包括終端、網(wǎng)絡(luò)設(shè)備、主機設(shè)備、數(shù)據(jù)庫、應(yīng)用系統(tǒng)日志數(shù)據(jù)。文檔樣本數(shù)據(jù)包括覆蓋業(yè)務(wù)范圍內(nèi)各業(yè)務(wù)分類與各安全等級的文檔。
數(shù)據(jù)存儲層使用Spark Streaming從Kafka中讀取主動探針采集、被動接口采集匯總的日志數(shù)據(jù),使用Spring Boot同步數(shù)據(jù)、生成文件,通過Common-pool2創(chuàng)建數(shù)據(jù)庫連接池,通過Abstract-RoutingDataSource訪問關(guān)系型數(shù)據(jù)庫,使用Elasticsearch和Mysql存儲用戶異常行為告警數(shù)據(jù)、安全事件審計數(shù)據(jù),使用Redis存儲日志數(shù)據(jù)與文檔樣本數(shù)據(jù),采用Mysql存儲規(guī)則、用戶權(quán)限等系統(tǒng)管理數(shù)據(jù)。
分析層包括基本規(guī)則與高級模型兩種分析方式,其中基本規(guī)則是采用關(guān)鍵字、正則表達(dá)式等簡單匹配模型識別文檔類別、安全等級與異常行為。高級模型包括文檔分類分級模型、用戶異常行為分析模型。
數(shù)據(jù)分析層包括工作流框架、特征提取、算法模型、格式化輸出等主要功能。工作流框架負(fù)責(zé)構(gòu)建業(yè)務(wù)流、調(diào)度數(shù)據(jù)處理任務(wù),特征提取負(fù)責(zé)選擇各種數(shù)據(jù)的業(yè)務(wù)特征、特征提取和特征對齊,根據(jù)業(yè)務(wù)場景和數(shù)據(jù)分布選擇算法模型,對接業(yè)務(wù)系統(tǒng)輸出分析結(jié)果。
業(yè)務(wù)工作流采用SpiffWorkflow工作流框架,實現(xiàn)動態(tài)配置業(yè)務(wù)流程、動態(tài)選擇數(shù)據(jù)特征,動態(tài)配置算法模型、靈活調(diào)度業(yè)務(wù)場景。
特征選擇和特征提取采用N-Gram語言模型、詞向量方法、線性差別分析、主成分分析、奇異值分解等技術(shù)對文檔數(shù)據(jù)和行為數(shù)據(jù)進行特征選擇和特征提取。
算法模型采用插件化封裝,根據(jù)數(shù)據(jù)分布特點選擇算法模型。算法模型包括K均值聚類、密度聚類方法、高斯混合模型,以及支持向量機、決策樹、鄰近算法、長短時記憶網(wǎng)絡(luò)、神經(jīng)網(wǎng)絡(luò)。
采用JSON、XML協(xié)議封裝輸出數(shù)據(jù),滿足上層業(yè)務(wù)系統(tǒng)對接要求。
可視化層用于審計分析用戶異常行為安全事件、查看文檔分類分級結(jié)果。
可視化層使用前后端完全分離的機制,采用VUE.JS結(jié)合Webpack搭建前端架構(gòu),使用 HTTP協(xié)議進行前后端的數(shù)據(jù)通信。
可視化層的接口服務(wù)模塊,外部接口使用 Netty進行TCP協(xié)議數(shù)據(jù)交互、HttpClient 進行 HTTP協(xié)議數(shù)據(jù)交互。內(nèi)部接口使用 Aviator、Elasticsearch、Mysql、Common-pool2 以及 Redis 實現(xiàn)。
實驗環(huán)境包括硬件和軟件配置兩部分。
硬件配置:兩臺測試機器,CPU Intel Core i3-4 130 3.40 GHz 4核,內(nèi)存 8 GB,硬盤 5 TB,網(wǎng)卡 1 000 MB。
軟件配置:操作系統(tǒng) CentOS7.6,數(shù)據(jù)庫MySQL5.7.29。
1) 實驗準(zhǔn)備
①服務(wù)器、客戶端系統(tǒng)部署完成、網(wǎng)絡(luò)通信正常;
②準(zhǔn)備24 000份樣本文件,其中財經(jīng)、體育、娛樂、時政各6 000份;
③測試發(fā)件箱test@wondersoft.cn,收件箱test@shou.com。
2) 實驗輸入
①登錄控制臺,創(chuàng)建財經(jīng)、體育、娛樂、時政分類,創(chuàng)建4個安全等級、定義每個安全等級涉及的敏感數(shù)據(jù)形式,導(dǎo)入樣本文件,構(gòu)建分類分級模型;
②使用foxmail發(fā)件箱test@wondersoft.cn發(fā)送各種類型、各種安全等級文檔至test@shou.com,檢查分類分級結(jié)果。
1) 實驗準(zhǔn)備
①服務(wù)器系統(tǒng)搭建,GPU驅(qū)動安裝、tensorflow環(huán)境搭建,客戶端系統(tǒng)搭建和客戶端軟件安裝;
②準(zhǔn)備3 000名用戶、30萬條日志數(shù)據(jù)。日志數(shù)據(jù)包括郵件外發(fā)日志數(shù)據(jù)、U盤拷貝文件日志數(shù)據(jù)、賬號準(zhǔn)入登錄日志數(shù)據(jù)3種類型。其中郵件外發(fā)日志數(shù)據(jù)包括操作終端信息、發(fā)件人信息、收件人信息、抄送人信息、正文信息、附件信息、時間信息;U盤拷貝文件日志數(shù)據(jù)包括U盤設(shè)備信息、操作終端信息、拷貝操作信息、操作文件信息、操作時間信息;賬號準(zhǔn)入登錄日志數(shù)據(jù)包括人員賬號信息、接入設(shè)備信息、接入網(wǎng)絡(luò)信息、管控策略信息、接入時間信息。
2) 實驗輸入
①首先將日志數(shù)據(jù)導(dǎo)入mongodb,3種行為日志數(shù)據(jù)單獨存放。其次登錄實驗系統(tǒng)控制臺,配置數(shù)據(jù)源和檢測模型。最后使用準(zhǔn)備數(shù)據(jù)訓(xùn)練得到用戶行為模型;
②使用客戶端執(zhí)行郵件外發(fā)、U盤拷貝文件和賬號登錄系統(tǒng)操作;
③服務(wù)端接收客戶端日志信息,對用戶操作進行異常行為檢測,并將結(jié)果展示在控制臺。
基于N元語言模型的文檔智能分類分級技術(shù),數(shù)據(jù)分類分級準(zhǔn)確率達(dá)到93%。
4種分類數(shù)據(jù)、4個安全等級數(shù)據(jù)組成了16種數(shù)據(jù)集合,每種數(shù)據(jù)集合各執(zhí)行500次數(shù)據(jù)發(fā)送。進入實驗系統(tǒng)數(shù)據(jù)分類分級界面,可查看到8 000次數(shù)據(jù)發(fā)送郵件,按16組統(tǒng)計分析分類分級模型準(zhǔn)確率分別為96.2%、93.6%、94.8%、87.4%、90.1%、92.1%、97.2%、86.2%、89.2%、90.1%、96.4%、92.7%、91.6%、87.4%、90.1%、88.3%。
基于無標(biāo)記樣本的實時用戶異常行為分析技術(shù),用戶異常行為分析準(zhǔn)確率達(dá)86%以上。
郵件外發(fā)、U盤文件拷貝和賬號上下線操作各執(zhí)行500次,進入實驗系統(tǒng)用戶行為分析界面,可查看到郵件外發(fā)記錄500次、U盤文件拷貝500次、賬號登錄系統(tǒng)500次,統(tǒng)計分析異常行為識別準(zhǔn)確率分別為86.7%、88.6%、86.2%。
在數(shù)字經(jīng)濟時代,數(shù)據(jù)安全是保障數(shù)字經(jīng)濟發(fā)展的基礎(chǔ)條件,數(shù)據(jù)安全也正在從傳統(tǒng)的邊界防護逐步轉(zhuǎn)向以數(shù)據(jù)為基礎(chǔ)的縱深全鏈條防護,在這個轉(zhuǎn)變過程中,準(zhǔn)確地識別數(shù)據(jù),找到管控重點,成為關(guān)鍵問題。人工智能賦能數(shù)據(jù)安全創(chuàng)新地解決了海量數(shù)據(jù)中敏感數(shù)據(jù)識別、數(shù)據(jù)分類分級和用戶異常行分析識別問題。本文為數(shù)據(jù)安全領(lǐng)域使用人工智能技術(shù)解決行業(yè)普遍性問題進行了前期的嘗試與探索。同時,我們也應(yīng)看到,人工智能技術(shù)在數(shù)據(jù)安全領(lǐng)域的應(yīng)用才剛剛開始,如何通過人工智能技術(shù)低成本、高效率地解決數(shù)據(jù)安全問題,還需要廣大從業(yè)者不斷努力探索。