麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 網站 > WEB開發 > 正文

基于機器學習的web異常檢測

2024-04-27 15:14:55
字體:
來源:轉載
供稿:網友

Web防火墻是信息安全的第一道防線。隨著網絡技術的快速更新,新的黑客技術也層出不窮,為傳統規則防火墻帶來了挑戰。傳統web入侵檢測技術通過維護規則集對入侵訪問進行攔截。一方面,硬規則在靈活的黑客面前,很容易被繞過,且基于以往知識的規則集難以應對0day攻擊;另一方面,攻防對抗水漲船高,防守方規則的構造和維護門檻高、成本大。

基于機器學習技術的新一代web入侵檢測技術有望彌補傳統規則集方法的不足,為web對抗的防守端帶來新的發展和突破。機器學習方法能夠基于大量數據進行自動化學習和訓練,已經在圖像、語音、自然語言處理等方面廣泛應用。然而,機器學習應用于web入侵檢測也存在挑戰,其中最大的困難就是標簽數據的缺乏。盡管有大量的正常訪問流量數據,但web入侵樣本稀少,且變化多樣,對模型的學習和訓練造成困難。因此,目前大多數web入侵檢測都是基于無監督的方法,針對大量正常日志建立模型(PRofile),而與正常流量不符的則被識別為異常。這個思路與攔截規則的構造恰恰相反。攔截規則意在識別入侵行為,因而需要在對抗中“隨機應變”;而基于profile的方法旨在建模正常流量,在對抗中“以不變應萬變”,且更難被繞過。

基于異常檢測的web入侵識別,訓練階段通常需要針對每個url,基于大量正常樣本,抽象出能夠描述樣本集的統計學或機器學習模型(Profile)。檢測階段,通過判斷web訪問是否與Profile相符,來識別異常。

對于Profile的建立,主要有以下幾種思路:

1. 基于統計學習模型

基于統計學習的web異常檢測,通常需要對正常流量進行數值化的特征提取和分析。特征例如,URL參數個數、參數值長度的均值和方差、參數字符分布、URL的訪問頻率等等。接著,通過對大量樣本進行特征分布統計,建立數學模型,進而通過統計學方法進行異常檢測。

2. 基于文本分析的機器學習模型

Web異常檢測歸根結底還是基于日志文本的分析,因而可以借鑒NLP中的一些方法思路,進行文本分析建模。這其中,比較成功的是基于隱馬爾科夫模型(HMM)的參數值異常檢測。

3. 基于單分類模型

由于web入侵黑樣本稀少,傳統監督學習方法難以訓練。基于白樣本的異常檢測,可以通過非監督或單分類模型進行樣本學習,構造能夠充分表達白樣本的最小模型作為Profile,實現異常檢測。

4. 基于聚類模型

通常正常流量是大量重復性存在的,而入侵行為則極為稀少。因此,通過web訪問的聚類分析,可以識別大量正常行為之外,小搓的異常行為,進行入侵發現。

基于統計學習模型

基于統計學習模型的方法,首先要對數據建立特征集,然后對每個特征進行統計建模。對于測試樣本,首先計算每個特征的異常程度,再通過模型對異常值進行融合打分,作為最終異常檢測判斷依據。

這里以斯坦福大學CS259D: Data Mining for CyberSecurity課程[1]為例,介紹一些行之有效的特征和異常檢測方法。

特征1:參數值value長度 模型:長度值分布,均值μ,方差σ2,利用切比雪夫不等式計算異常值p

特征2:字符分布 模型:對字符分布建立模型,通過卡方檢驗計算異常值p

特征3:參數缺失 模型:建立參數表,通過查表檢測參數錯誤或缺失

特征4:參數順序 模型:參數順序有向圖,判斷是否有違規順序關系

特征5:訪問頻率(單ip的訪問頻率,總訪問頻率) 模型:時段內訪問頻率分布,均值μ,方差σ2,利用切比雪夫不等式計算異常值p

特征6:訪問時間間隔 模型:間隔時間分布,通過卡方檢驗計算異常值p

最終,通過異常打分模型將多個特征異常值融合,得到最終異常打分:

基于文本分析的機器學習模型

URL參數輸入的背后,是后臺代碼的解析,通常來說,每個參數的取值都有一個范圍,其允許的輸入也具有一定模式。比如下面這個例子:

例子中,綠色的代表正常流量,紅色的代表異常流量。由于異常流量和正常流量在參數、取值長度、字符分布上都很相似,基于上述特征統計的方式難以識別。進一步看,正常流量盡管每個都不相同,但有共同的模式,而異常流量并不符合。在這個例子中,符合取值的樣本模式為:數字 _ 字母 _ 數字,我們可以用一個狀態機來表達合法的取值范圍:

對文本序列模式的建模,相比較數值特征而言,更加準確可靠。其中,比較成功的應用是基于隱馬爾科夫模型(HMM)的序列建模,這里僅做簡單的介紹,具體請參考推薦文章[2]。

基于HMM的狀態序列建模,首先將原始數據轉化為狀態表示,比如數字用N表示狀態,字母用a表示狀態,其他字符保持不變。這一步也可以看做是原始數據的歸一化(Normalization),其結果使得原始數據的狀態空間被有效壓縮,正常樣本間的差距也進一步減小。

緊接著,對于每個狀態,統計之后一個狀態的概率分布。例如,下圖就是一個可能得到的結果。“^”代表開始符號,由于白樣本中都是數字開頭,起始符號(狀態^)轉移到數字(狀態N)的概率是1;接下來,數字(狀態N)的下一個狀態,有0.8的概率還是數字(狀態N),有0.1的概率轉移到下劃線,有0.1的概率轉移到結束符(狀態$),以此類推。

利用這個狀態轉移模型,我們就可以判斷一個輸入序列是否符合白樣本的模式:

正常樣本的狀態序列出現概率要高于異常樣本,通過合適的閾值可以進行異常識別。

基于單分類模型

在二分類問題中,由于我們只有大量白樣本,可以考慮通過單分類模型,學習單類樣本的最小邊界,邊界之外的則識別為異常。

這類方法中,比較成功的應用是單類支持向量機(one-class SVM)。這里簡單介紹該類方法的一個成功案例McPAD的思路,具體方法關注文章[3]。

McPAD系統首先通過N-Gram將文本數據向量化,對于下面的例子,

首先通過長度為N的滑動窗口將文本分割為N-Gram序列,例子中,N取2,窗口滑動步長為1,可以得到如下N-Gram序列。

下一步要把N-Gram序列轉化成向量。假設共有256種不同的字符,那么會得到256*256種2-GRAM的組合(如aa, ab, ac … )。我們可以用一個256*256長的向量,每一位one-hot的表示(有則置1,沒有則置0)文本中是否出現了該2-GRAM。由此得到一個256*256長的0/1向量。進一步,對于每個出現的2-Gram,我們用這個2-Gram在文本中出現的頻率來替代單調的“1”,以表示更多的信息:

至此,每個文本都可以通過一個256*256長的向量表示。

現在我們得到了訓練樣本的256*256向量集,現在需要通過單分類SVM去找到最小邊界。然而問題在于,樣本的維度太高,會對訓練造成困難。我們還需要再解決一個問題:如何縮減特征維度。特征維度約減有很多成熟的方法,McPAD系統中對特征進行了聚類達到降維目的。

上左矩陣中黑色表示0,紅色表示非零。矩陣的每一行,代表一個輸入文本(sample)中具有哪些2-Gram。如果換一個角度來看這個矩陣,則每一列代表一個2-Gram有哪些sample中存在,由此,每個2-Gram也能通過sample的向量表達。從這個角度我們可以獲得2-Gram的相關性。對于2-Gram的向量進行聚類,指定的類別數K即為約減后的特征維數。約減后的特征向量,再投入單類SVM進行進一步模型訓練。

再進一步,McPAD采用線性特征約減加單分類SVM的方法解決白模型訓練的過程,其實也可以被深度學習中的深度自編碼模型替代,進行非線性特征約減。同時,自編碼模型的訓練過程本身就是學習訓練樣本的壓縮表達,通過給定輸入的重建誤差,就可以判斷輸入樣本是否與模型相符。

我們還是沿用McPAD通過2-Gram實現文本向量化的方法,直接將向量輸入到深度自編碼模型,進行訓練。測試階段,通過計算重建誤差作為異常檢測的標準。

基于這樣的框架,異常檢測的基本流程如下,一個更加完善的框架可以參見文獻[4]。

本文管中窺豹式的介紹了機器學習用于web異常檢測的幾個思路。web流量異常檢測只是web入侵檢測中的一環,用于從海量日志中撈出少量的“可疑”行為,但是這個“少量”還是存在大量誤報,只能用于檢測,還遠遠不能直接用于WAF直接攔截。一個完備的web入侵檢測系統,還需要在此基礎上進行入侵行為識別,以及告警降誤報等環節。

2017阿里聚安全算法挑戰賽將收集從網上真實訪問流量中提取的URL,經過脫敏和混淆處理,讓選手利用機器學習算法提高檢測精度,真實體驗這一過程。并有機會獲得30萬元獎金,奔赴加拿大參加KDD—-國際最負盛名的數據挖掘會議!

報名地址:https://tianchi.shuju.aliyun.com/mini/alibabajaq.htm

推薦閱讀 1. CS259D: Data Mining for CyberSecurity, 課程網址:http://web.stanford.edu/class/cs259d/ 2. 楚安,數據科學在Web威脅感知中的應用,http://www.jianshu.com/p/942d1beb7fdd 3. McPAD : A Multiple Classifier System for Accurate Payload-based Anomaly Detection, Roberto Perdisci 4. AI2 : Training a big data machine to defend, Kalyan Veeramachaneni

作者:七雨@阿里聚安全,更多阿里安全類技術文章,請訪問阿里聚安全博客


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 久久精品久久久久 | 日韩精品一区二区三区中文 | 毛片在线视频观看 | 久精品国产 | 欧美精品久久久久久久久老牛影院 | 久久久久久久久久久久久久av | 亚洲精品动漫在线观看 | 久久久久久久久久久一区 | 色婷婷av一区二区三区久久 | 日本aaa一级片| 久久精品一区二区三区不卡牛牛 | av免费在线观 | 理论片中文字幕 | 精品久久久一二三区播放播放播放视频 | 精品国产一区二区三区四 | 一级做a爱视频 | 国产精品久久久久久模特 | 国产成人精品免费视频大全最热 | 中文成人在线 | 色播av在线 | 国产亚洲精品久久久久久网站 | 日本xxxx视频 | 免费亚洲视频在线观看 | 免费放黄网站在线播放 | 亚洲精品有限 | 成人福利免费在线观看 | 中文字幕在线观看视频一区 | 久久久日韩精品一区二区 | 香蕉久久久 | 成人免费久久 | 香蕉久草视频 | 免费小毛片 | 日本视频网 | 手机av在线电影 | 懂色av懂色aⅴ精彩av | 欧美日韩国产成人在线 | 久久伊人国产精品 | 国产精品九九久久一区hh | 毛片小网站 | 亚洲国产精品高潮呻吟久久 | 毛片网站网址 |