機(jī)器學(xué)習(xí)算法在用戶行為檢測(cè)(UBA)領(lǐng)域的應(yīng)用

最近看到越來(lái)越多的安全圈的同學(xué)開(kāi)始關(guān)注UBA或者UEBA的相關(guān)產(chǎn)品和技術(shù)采转,恰好這一段時(shí)也一直在跟進(jìn)UBA產(chǎn)品的狀況耙箍,正如Gartner報(bào)告所述撰糠,最具創(chuàng)新能力的UBA供應(yīng)商往往都是一些初創(chuàng)公司,我們比較了IBM辩昆、HPE阅酪、Splunk這類大公司的UBA產(chǎn)品,但是感覺(jué)無(wú)非就是SIEM產(chǎn)品的更新升級(jí)罷了,相反一些名不見(jiàn)經(jīng)傳的初創(chuàng)公司如Balabit术辐、Sqrrl等的UBA產(chǎn)品到讓人眼前一亮砚尽。在參考業(yè)界的同時(shí),我們也在UBA的核心算法上做了一番研究辉词,要知道UBA之所以號(hào)稱下一代SIEM必孤,其核心就是將機(jī)器學(xué)習(xí)引入行為數(shù)據(jù)檢測(cè),本文簡(jiǎn)要總結(jié)一下近期研究的適用于UBA的機(jī)器學(xué)習(xí)算法和效果瑞躺。

UBA產(chǎn)品并不依賴某個(gè)“銀彈”算法敷搪,其必定是一系列機(jī)器學(xué)習(xí)算法的有機(jī)融合,稍微了解機(jī)器學(xué)習(xí)的同學(xué)都清楚幢哨,像貝葉斯家族赡勘、線性回歸這類有監(jiān)督學(xué)習(xí)算法往往都需要大量的訓(xùn)練樣本,但是網(wǎng)絡(luò)安全領(lǐng)域APT攻擊的樣本一年抓不住兩個(gè)捞镰,要說(shuō)大量訓(xùn)練幾乎沒(méi)可能闸与,因此UBA產(chǎn)品大量采用非監(jiān)督學(xué)習(xí)算法,通過(guò)聚合行為數(shù)據(jù)巧妙的達(dá)到異常檢測(cè)的目的曼振。下面簡(jiǎn)要介紹一下在行為檢測(cè)過(guò)程中常用的機(jī)器學(xué)習(xí)算法。

首先我們假設(shè)一個(gè)用戶場(chǎng)景蔚龙,張三冰评,是一個(gè)SO的系統(tǒng)管理員,他的賬號(hào)有很多出入IT系統(tǒng)的權(quán)限木羹,某天他的賬號(hào)被黑客盜用了甲雅,黑客通過(guò)VPN等通道接入內(nèi)網(wǎng),并且將數(shù)據(jù)偷盜到公司外出售給競(jìng)爭(zhēng)對(duì)手坑填。

一個(gè)低風(fēng)險(xiǎn)用戶的正常業(yè)務(wù)活動(dòng)通常沒(méi)什么可關(guān)注的抛人,但是一些高風(fēng)險(xiǎn)人群的正常活動(dòng)或者低風(fēng)險(xiǎn)賬號(hào)進(jìn)行的高危操作則足以值得調(diào)查人員關(guān)注脐瑰,更近一步妖枚,如果一個(gè)高風(fēng)險(xiǎn)用戶做了一些高危并且不長(zhǎng)出現(xiàn)的動(dòng)作,那就絕對(duì)需要安全人員介入調(diào)查了苍在。這里有一個(gè)問(wèn)題绝页,我們?nèi)绾沃酪粋€(gè)用戶風(fēng)險(xiǎn)等級(jí)是高還是低?這便是UBA及其算法要解決的核心問(wèn)題寂恬,通過(guò)建立動(dòng)態(tài)行為基線發(fā)現(xiàn)用戶偏離正常模式的行為续誉,并根據(jù)風(fēng)險(xiǎn)累計(jì)的數(shù)值判斷用戶風(fēng)險(xiǎn)級(jí)別。綜上初肉,構(gòu)建用戶的特征行為矩陣是第一步酷鸦,也即User-Profile,特征行為矩陣的構(gòu)建方法五花八門(mén),考慮到HBase支持?jǐn)?shù)據(jù)量大臼隔,列式存儲(chǔ)等特點(diǎn)嘹裂,我們選擇將特征矩陣保存在HBase里。

張三躬翁,像其他特權(quán)用戶一樣焦蘑,利用其賬號(hào)的權(quán)限登錄到某一臺(tái)主機(jī)或者服務(wù)器,主機(jī)登錄算法用以檢測(cè)每個(gè)用戶經(jīng)常使用的主機(jī)或者服務(wù)盒发,DBA通常傾向于登錄固定的幾臺(tái)機(jī)器例嘱,并且都是使用相似的命令,同時(shí)銷售人員都是使用天兔或者某個(gè)XX系統(tǒng)的服務(wù)宁舰,兩者使用方式完全不同拼卵。這里張三登錄的是一臺(tái)保存銷售數(shù)據(jù)的服務(wù)器,而顯然蛮艰,這與他之前的模式或者與他所在的Peer-Group都是格格不入的腋腮。這里我們使用KMeans算法根據(jù)用戶行為數(shù)據(jù)的特征矩陣對(duì)用戶劃分Peer-Group,行為模式類似的人群會(huì)劃分到一個(gè)動(dòng)態(tài)群組壤蚜。

除了動(dòng)態(tài)群組即寡,根據(jù)現(xiàn)有的系統(tǒng)權(quán)限組進(jìn)行風(fēng)險(xiǎn)評(píng)估同樣是一種有效方式,我們從LDAP或者AD獲取用戶組以及組的成員數(shù)袜刷,通常規(guī)模較小的組比成千上萬(wàn)用戶的組風(fēng)險(xiǎn)系數(shù)更高聪富。當(dāng)張三的賬號(hào)被黑客從普通管理員組提升到超級(jí)管理員組的時(shí)候,他的賬號(hào)瞬間進(jìn)入了一個(gè)人煙罕至的群組著蟹,這時(shí)候他的風(fēng)險(xiǎn)值會(huì)瞬間提升墩蔓。

除了用戶登錄的機(jī)器,登錄時(shí)間也是行為特征中非常重要的一個(gè)環(huán)節(jié)萧豆,基于時(shí)間序列的分析方法有很多奸披,這里我們使用KDE(核心概率密度估計(jì))算法來(lái)統(tǒng)計(jì)和預(yù)測(cè)用戶在某個(gè)時(shí)間段登錄的概率,這種方法可以有效的克服離散數(shù)據(jù)在模式匹配過(guò)程中容易過(guò)耦合的問(wèn)題涮雷。比如張三作為一個(gè)系統(tǒng)管理員阵面,通常的登錄時(shí)間是上班時(shí)間以及晚飯以后的時(shí)間,早上7:30屬于正常登錄時(shí)間洪鸭,而凌晨0點(diǎn)登錄就會(huì)被標(biāo)記為高度反常和可疑膜钓。KDE曲線如下圖:

57edd3793b7e1.jpg

張三登錄系統(tǒng)以后進(jìn)行了一系列的操作,通常一個(gè)用戶在一段時(shí)間內(nèi)能夠產(chǎn)生的操作個(gè)數(shù)也是一個(gè)人的典型特征卿嘲,User-Profile聚合一個(gè)用戶在一段時(shí)間內(nèi)產(chǎn)生的所有行為數(shù)據(jù)的數(shù)量颂斜,使用KDE重新組織統(tǒng)計(jì)數(shù)據(jù),并檢測(cè)這個(gè)模式是否發(fā)生明顯改變拾枣。如果這里張三在一小時(shí)內(nèi)接連登錄了30+臺(tái)服務(wù)器沃疮,而他通常也就登錄2盒让、3臺(tái),那么這里就與正常的行為有明顯的偏移司蔬。

57edd3793c686.jpg

基于頻繁項(xiàng)集的聚類算法(如Aprior/FP-Growth)在零售行業(yè)很早以前就有廣泛應(yīng)用邑茄,比如沃爾瑪對(duì)顧客購(gòu)買商品的模式發(fā)掘發(fā)現(xiàn)啤酒和尿布經(jīng)常一起出售】√洌基于頻繁項(xiàng)集的機(jī)器學(xué)習(xí)算法在UBA領(lǐng)域也有廣泛應(yīng)用肺缕,比如,張三通常在周末的時(shí)候通過(guò)SSH協(xié)議登錄授帕,而在工作日通過(guò)RDP協(xié)議登錄同木,那么有一天他在周末通過(guò)RDP登錄就是一個(gè)行為模式的偏移。

主成分分析(PCA) 是一種應(yīng)用廣泛的降維算法跛十,其在行為數(shù)據(jù)異常檢測(cè)的過(guò)程中有很好的效果彤路,首先用戶行為的特征矩陣往往都有成千上萬(wàn)個(gè)維度,如果我們想從海量數(shù)據(jù)的特征矩陣中找出異常也即離群的點(diǎn)芥映,計(jì)算難度會(huì)比較大洲尊,我們采用PCA對(duì)特征進(jìn)行降維并結(jié)合KMeans等聚類算法找出離群點(diǎn)。比如奈偏,張三通常會(huì)長(zhǎng)時(shí)間使用前臺(tái)的服務(wù)器坞嘀,而運(yùn)維后臺(tái)服務(wù)器的時(shí)候比較短,如果他長(zhǎng)時(shí)間停留在后臺(tái)服務(wù)器上我們的算法會(huì)將其潛在的風(fēng)險(xiǎn)值提高惊来。

57edd3793d839.jpg

上面介紹的幾個(gè)算法Spark的MLlib提供的全部的實(shí)現(xiàn)丽涩,不得不感嘆一下Spark確實(shí)是解放程序猿雙手的良心之作。再往后唁盏,基于圖數(shù)據(jù)的分析挖掘是我們后續(xù)的研究方向内狸,安全調(diào)查人員時(shí)常需要看到用戶和實(shí)體之間的數(shù)據(jù)關(guān)聯(lián)检眯,或者所謂的Kill-Chain厘擂,圖數(shù)據(jù)庫(kù)和基于Graph的算法天然支持這一點(diǎn),好在Spark GraphX又替我們做到了這一步锰瘸。圖數(shù)據(jù)的挖掘我想業(yè)界應(yīng)該沒(méi)有比Palantir做的更好的了刽严,就是那個(gè)號(hào)稱幫助美軍找到本·拉登的那家傳奇數(shù)據(jù)公司

57edd3793e0dc.jpg

原文地址: 《機(jī)器學(xué)習(xí)算法在用戶行為檢測(cè)(UBA)領(lǐng)域的應(yīng)用》

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市避凝,隨后出現(xiàn)的幾起案子舞萄,更是在濱河造成了極大的恐慌,老刑警劉巖管削,帶你破解...
    沈念sama閱讀 217,406評(píng)論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件倒脓,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡含思,警方通過(guò)查閱死者的電腦和手機(jī)崎弃,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,732評(píng)論 3 393
  • 文/潘曉璐 我一進(jìn)店門(mén)甘晤,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人饲做,你說(shuō)我怎么就攤上這事线婚。” “怎么了盆均?”我有些...
    開(kāi)封第一講書(shū)人閱讀 163,711評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵塞弊,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我泪姨,道長(zhǎng)游沿,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,380評(píng)論 1 293
  • 正文 為了忘掉前任驴娃,我火速辦了婚禮奏候,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘唇敞。我一直安慰自己蔗草,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,432評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布疆柔。 她就那樣靜靜地躺著咒精,像睡著了一般。 火紅的嫁衣襯著肌膚如雪旷档。 梳的紋絲不亂的頭發(fā)上模叙,一...
    開(kāi)封第一講書(shū)人閱讀 51,301評(píng)論 1 301
  • 那天,我揣著相機(jī)與錄音鞋屈,去河邊找鬼范咨。 笑死,一個(gè)胖子當(dāng)著我的面吹牛厂庇,可吹牛的內(nèi)容都是我干的渠啊。 我是一名探鬼主播,決...
    沈念sama閱讀 40,145評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼权旷,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼替蛉!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起拄氯,我...
    開(kāi)封第一講書(shū)人閱讀 39,008評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤躲查,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后译柏,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體镣煮,經(jīng)...
    沈念sama閱讀 45,443評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,649評(píng)論 3 334
  • 正文 我和宋清朗相戀三年鄙麦,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了典唇。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片邮弹。...
    茶點(diǎn)故事閱讀 39,795評(píng)論 1 347
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖蚓聘,靈堂內(nèi)的尸體忽然破棺而出腌乡,到底是詐尸還是另有隱情,我是刑警寧澤夜牡,帶...
    沈念sama閱讀 35,501評(píng)論 5 345
  • 正文 年R本政府宣布与纽,位于F島的核電站,受9級(jí)特大地震影響塘装,放射性物質(zhì)發(fā)生泄漏急迂。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,119評(píng)論 3 328
  • 文/蒙蒙 一蹦肴、第九天 我趴在偏房一處隱蔽的房頂上張望僚碎。 院中可真熱鬧,春花似錦阴幌、人聲如沸勺阐。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,731評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)渊抽。三九已至,卻和暖如春议忽,著一層夾襖步出監(jiān)牢的瞬間懒闷,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,865評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工栈幸, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留愤估,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 47,899評(píng)論 2 370
  • 正文 我出身青樓速址,卻偏偏與公主長(zhǎng)得像玩焰,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子壳繁,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,724評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容