自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

海量日志中,如何實時在線檢測未知異常行為?看瀚思的序列異常算法

安全 應(yīng)用安全 算法
隨著互聯(lián)網(wǎng)、移動互聯(lián)網(wǎng)的發(fā)展,企業(yè)的傳統(tǒng)網(wǎng)絡(luò)邊界在逐漸消失,工業(yè)界的企業(yè),特別是大型互聯(lián)網(wǎng)公司,平均每日活躍用戶上千萬,每個應(yīng)用系統(tǒng)的日志都會高達(dá)幾百G字節(jié),甚至達(dá)到T數(shù)量級,同時,以灰產(chǎn),黑產(chǎn)為代表的惡意訪問占比依然居高不下,因此,不夸張的說,針對大型互聯(lián)網(wǎng)公司,特別是金融、電信等行業(yè)的惡意攻擊每天各個時段都在發(fā)生,并且攻擊手段在不斷推陳出新。

[[194630]]

 1. 背景

隨著互聯(lián)網(wǎng)、移動互聯(lián)網(wǎng)的發(fā)展,企業(yè)的傳統(tǒng)網(wǎng)絡(luò)邊界在逐漸消失,工業(yè)界的企業(yè),特別是大型互聯(lián)網(wǎng)公司,平均每日活躍用戶上千萬,每個應(yīng)用系統(tǒng)的日志都會高達(dá)幾百G字節(jié),甚至達(dá)到T數(shù)量級,同時,以灰產(chǎn),黑產(chǎn)為代表的惡意訪問占比依然居高不下,因此,不夸張的說,針對大型互聯(lián)網(wǎng)公司,特別是金融、電信等行業(yè)的惡意攻擊每天各個時段都在發(fā)生,并且攻擊手段在不斷推陳出新。

反觀,傳統(tǒng)的被動防御技術(shù),無論是Firewall、Web應(yīng)用防火墻(WAF)、入侵防御系統(tǒng)、入侵防御系統(tǒng)(IPS)還是入侵檢測系統(tǒng)(IDS),本質(zhì)上的工作原理,不是依據(jù)白名單,就是基于已發(fā)現(xiàn)攻擊總結(jié)出的規(guī)則,換句話說,傳統(tǒng)防御技術(shù)僅限于防御已知威脅。所以,傳統(tǒng)的防御技術(shù),由于不知道何為未知的威脅,既無法檢測到,也就更談不上有效的阻斷。

瀚思以將機(jī)器學(xué)習(xí)應(yīng)用于信息安全的新角度,重新審視日志信息挖掘,提出了基于日志的實時在線檢測序列異常算法。該算法能夠在線檢測出未知異常行為,并已在國內(nèi)某Top10券商處上線使用。

2. 何為序列異常

序列異常是對離散異常時序事件的檢測,常應(yīng)用于工業(yè)設(shè)備檢測,生物界中的氨基酸序列或基因組序列檢測,用戶行為分析等方面。舉個栗子,一個冰箱的操作日志里,如果存在“冰箱柜門打開,冰箱內(nèi)物品被取走,冰箱柜門關(guān)閉”的序列,認(rèn)為是正常的。而出現(xiàn)了“冰箱柜門關(guān)閉,冰箱內(nèi)物品被取走,冰箱柜門打開”則是異常的。

簡單來說,序列異常分為兩類。第一類為位置異常,即序列是否異常取決于位置上的實際值與模型預(yù)測值間的偏差。第二類是組合異常,以符號組合為考量,對整個序列進(jìn)行判斷,如果其與絕大多數(shù)不同,則被作為異常找出來。

在信息安全領(lǐng)域中,序列異常有很多表現(xiàn)形式。從傳統(tǒng)的SQL注入,XSS攻擊,到撞庫,灰產(chǎn)/黑產(chǎn)的薅羊毛刷單等等。

在用戶行為分析(UBA)中,異常序列一方面能夠找出異常用戶行為序列,另一方面,能更直觀地表現(xiàn)出其為何異常的異常點。

3. 如何找序列異常

無論是找位置異常,還是組合異常,都是找離散類型的時序異常。馬爾科夫鏈模型應(yīng)用到這類應(yīng)用中是十分合適的。我們使用了一種變階馬爾科夫鏈模型——Probabilistic Suffix Tree概率后綴樹來查找序列異常。

1) 馬爾科夫鏈模型

馬爾可夫鏈,又稱離散時間馬爾可夫鏈,因俄國數(shù)學(xué)家安德烈·馬爾可夫得名,為狀態(tài)空間中經(jīng)過從一個狀態(tài)到另一個狀態(tài)的轉(zhuǎn)換的隨機(jī)過程。該過程要求具備“無記憶”的性質(zhì):下一狀態(tài)的概率分布只能由當(dāng)前狀態(tài)決定,在時間序列中它前面的事件均與之無關(guān)。這種特定類型的“無記憶性”稱作馬爾可夫性質(zhì)。馬爾科夫鏈作為實際過程的統(tǒng)計模型具有許多應(yīng)用。

在馬爾可夫鏈的每一步,系統(tǒng)根據(jù)概率分布,可以從一個狀態(tài)變到另一個狀態(tài),也可以保持當(dāng)前狀態(tài)。狀態(tài)的改變叫做轉(zhuǎn)移,與不同的狀態(tài)改變相關(guān)的概率叫做轉(zhuǎn)移概率。隨機(jī)漫步就是馬爾可夫鏈的例子。隨機(jī)漫步中每一步的狀態(tài)是在圖形中的點,每一步可以移動到任何一個相鄰的點,在這里移動到每一個點的概率都是相同的(無論之前漫步路徑是如何的)。

舉個栗子,假設(shè)天氣在晴朗sunny,下雨rainy和多云cloudy間互相轉(zhuǎn)換。

其馬爾科夫狀態(tài)圖見下圖??梢娒總€狀態(tài)都可遷移到其它狀態(tài),且概率皆不同。

其對應(yīng)的一階遷移矩陣,即為下圖。

那么,今天是晴天,明天下雨的概率就是

PWeather2=rainy Weather1=sunny)=0.1

馬爾科夫鏈模型對應(yīng)的異常則為遷移中概率最小的路徑。如

P( Weather1=sunny, Weather2=rainy, Weather3=cloudy, Weather4=sunny, Weather5=rainy )=0.1,就是5階序列中,概率最低,出現(xiàn)可能性最小的序列,被認(rèn)為是異常。

2) Probabilistic Suffix Tree概率后綴樹

概率后綴樹是一種變階馬爾科夫鏈模型的緊湊形式,它將后綴樹作為索引結(jié)構(gòu)使用。當(dāng)序列集被組織在概率后綴樹中時,僅通過檢查與樹中根節(jié)點相近的點就能區(qū)分異常和非異常序列。

概率后綴樹簡單來說,就是將具有預(yù)測能力的子序列存儲在一顆后綴樹上。然后,根據(jù)序列各子序列在樹中的情況,計算整個序列的概率值。算法將歸一化后的低概率的序列,作為異常找出來。

PST樹例子

在概率后綴樹中,每個節(jié)點代表一個元素,每條邊代表一條從根節(jié)點到當(dāng)前節(jié)點的路徑,換句話說,代表一個入樹的子序列。在每個節(jié)點上,均有一個概率分布。表示當(dāng)前節(jié)點的下一個后綴子序列的概率。

在構(gòu)建樹時,需要將沒有預(yù)測能力的的子序列和出現(xiàn)極少,本身就是異常的序列全部過濾掉。這樣從根節(jié)點開始,以后綴的方式逐步構(gòu)建出概率后綴樹。建好樹之后,還可以自行設(shè)置更嚴(yán)格的條件對樹繼續(xù)剪枝,使得該樹具有更好的預(yù)測能力。

如何使用概率后綴樹計算序列概率值?概率后綴樹能夠利用中間條件概率,從而可以高效計算出概率值。詳細(xì)來說就是,某序列P(s)在概率后綴樹上的概率為:

PS= PS1PS2S1)…PSlS1S2…Sl-1)。

舉個栗子,P(BAAB) = P(B)P(A|B)P(A|BA)P(B|BAA)

= 0.7 * 0.5 * 0.2 * 0.7

如何利用概率后綴樹找異常?將測試序列的概率值歸一化后,低概率的序列就是異常序列。

4. 實例分析

1) 在某商業(yè)股份制銀行的Web日志中,使用序列異常檢測,發(fā)現(xiàn)了灰產(chǎn)/黑產(chǎn)自動化登錄攻擊實例。

在對其銀行手機(jī)銀行Web日志常規(guī)序列異常檢測中,發(fā)現(xiàn)存在一些登錄序列和正常序列區(qū)別很大。經(jīng)過分析后發(fā)現(xiàn),正常用戶登錄是無法產(chǎn)生該序列的。這些序列的出現(xiàn),和其它證據(jù)指明,這些皆為灰產(chǎn)/黑產(chǎn)自動化登錄的產(chǎn)物。

2) 在某券商的Web日志中,通過使用序列異常檢測,發(fā)現(xiàn)了一個灰產(chǎn)/黑產(chǎn)可疑的用戶探測行為。

序列異常檢測程序發(fā)現(xiàn),存在一些利用用戶檢存頁面,被惡意地作為用戶探測的手段利用了。經(jīng)分析,正常用戶使用這些頁面很難產(chǎn)生這些序列。經(jīng)過調(diào)查,以及和業(yè)務(wù)部門確認(rèn),該類序列皆為惡意用戶探測行為。

5. 結(jié)語

工業(yè)界面臨的現(xiàn)狀是,一方面,傳統(tǒng)的防護(hù)手段只能抵御“已知威脅”,迫切需要應(yīng)對來自“未知威脅”的攻擊。另一方面,互聯(lián)網(wǎng)產(chǎn)品快速迭代更新,用戶行為千變?nèi)f化,攻擊手段不斷進(jìn)化,急需可自學(xué)習(xí),可實施的高效檢測手段出現(xiàn)。

瀚思的序列異常檢測算法,一來能夠檢測“未知威脅”,二來能夠面對快速變化的環(huán)境,進(jìn)行優(yōu)化后的在線學(xué)習(xí),三來已經(jīng)在一些公司實際上線,并有所斬獲。

【本文為51CTO專欄作者“瀚思 ”的原創(chuàng)稿件,轉(zhuǎn)載請通過作者獲取授權(quán)】

戳這里,看該作者更多好文

責(zé)任編輯:武曉燕 來源: 51CTO專欄
相關(guān)推薦

2021-03-31 11:20:57

PythonADTK異常檢測

2013-04-27 13:33:33

2015-10-12 10:37:42

學(xué)習(xí)算法檢測

2020-10-15 12:00:01

Python 開發(fā)編程語言

2015-11-20 08:36:43

2015-12-10 11:15:02

2020-05-13 11:10:32

安全 機(jī)器學(xué)習(xí)數(shù)據(jù)

2013-03-12 10:54:24

2018-09-17 15:30:05

機(jī)器學(xué)習(xí)密度異常值

2023-11-22 09:42:02

系統(tǒng)檢測

2020-10-18 07:15:53

Python異常檢測算法開發(fā)

2023-05-09 13:56:33

2022-09-21 23:41:40

機(jī)器學(xué)習(xí)開源數(shù)據(jù)

2023-10-18 09:00:00

人工智能異常檢測

2022-02-25 23:54:43

人工智能數(shù)據(jù)計算

2021-07-28 09:53:53

FalconEye注入安全檢測

2021-01-15 12:22:35

異常檢測工具

2017-02-16 08:25:35

2020-12-24 19:01:14

iForest大數(shù)據(jù)檢測算法

2023-03-09 12:21:38

點贊
收藏

51CTO技術(shù)棧公眾號