基於機器學習的入侵檢測系統

2021-01-14 架構師小秘圈


在過去十年中,機器學習技術取得了快速進步,實現了以前從未想像過的自動化和預測能力。隨著這一技術的發展促使研究人員和工程師為這些美妙的技術構思新的應用。不久,機器學習技術被用於加強網絡安全系統。


網絡安全性最常見的風險就是入侵,例如暴力破解、拒絕服務,甚至是網絡內部的滲透。隨著網絡行為模式的變化,有必要切換到動態方法來檢測和防止此類入侵。許多研究都致力於這一領域。


我們需要可修改、可重複、可擴展的數據集來學習和處理,以便能夠輕鬆繞過基本入侵檢測系統(IDS)的複雜攻擊。這是機器學習能夠發揮作用的地方,我們將在本文學習可用於構建健壯的IDS的各種機器學習技術。


「巨大的」網絡攻擊擊敗了雅虎。這是CNN的一段摘錄,描述了有史以來的首次DoS(拒絕服務)攻擊。

「在太平洋標準時間上午10:30,雅虎路由器出現了分布式拒絕服務攻擊」,一位不願透露姓名的雅虎發言人表示。「我們相信它是網際網路上的多個點上進行協調的。」

像這樣的事件可能導致現代數字經濟中數百萬美元的損失。

確實存在入侵檢測系統(IDS)以防止上述情況的組織。他們監控網絡流量是否存在可疑活動,並在出現問題的時候發出警報。


入侵檢測系統可以使用不同類型的方法來檢測可疑活動。它可以大致分為:


IDS測不同地方的入侵。根據他們發現的地方,可以分為:



IDS也可以根據它的行為進行分類:



在列出IDS的一般限制之後,我們將討論使用機器學習的混合入侵系統。


幾次真正的攻擊遠遠少於虛假警報的數量,這導致真正的威脅經常被忽視。

噪聲會通過產生高誤報率嚴重降低IDS的能力。

基於籤名的IDS需要不斷的軟體更新才能跟上新威脅。

IDS監控整個網絡,因此容易受到網絡主機的相同攻擊。基於協議的攻擊可能導致IDS失敗。

網絡IDS只能檢測網絡異常,這些異常限制了它可以發現的各種攻擊。

所有入站和出站流量都通過它時,網絡IDS可能會產生瓶頸。

主機IDS依賴於審計日誌,任何攻擊修改審計日誌都會威脅到HIDS的完整性


在我們解決問題之前,有必要了解以下幾點:

機器學習是一個研究領域,它使計算機能夠從經驗中學習和改進。機器學習側重於開發可以使用數據發現特徵的程序。

學習過程從觀察或數據開始,以查找數據中的模式,並根據提供的示例做出更好的預測。主要目的是讓計算機在沒有人工協助的情況下學習,並相應的進行調整。

機器學習算法可大致分為:

監督機器學習算法:可以應用過去學到的東西來使用標記示例預測未來事件。算法分析稱為訓練數據集,用於生成推斷函數以對輸出值進行預測。經過充分的訓練,系統可以為新的輸入提供目標。該機器配備了一組新的示例,因此監督學習算法分析訓練數據並從標記數據產生正確的結果。

無監督機器學習算法:當用於訓練的信息既未標記也未分類時使用。無人值守學習研究系統如何推斷函數來描述未標記數據的隱藏結構。這裡的機器任務是根據模式,相似性和差異對未分類信息進行分組,而無需任何先前的訓練數據。設備受到限制,結構不反映。

半監督機器學習算法:利用未標記的數據進行訓練 - 混合使用標記較少的數據和大量未標記的數據。

半監督學習介於無監督學習和監督學習之間:當你沒有足夠的標籤數據來產生準確的模型,或者你缺乏獲得更多的半監督技術的能力/資源時,可以使用這些學習訓練數據的大小。


無監督學習算法可以「學習」網絡的典型模式,並且可以在沒有任何標記數據集的情況下報告異常。它可以檢測新類型的入侵,但很容易出現誤報警。因此,前面只討論了一種無監督算法K均值聚類。為了減少誤報,可以引入標記數據集,並教網絡中正常數據包和攻擊數據包之間的差異來構建受監督的機器學習模型。受監督的模型可以靈活的處理已知的攻擊,並且還可以識別這些攻擊的變化。將討論標準監督算法(貝葉斯網絡、隨機森林、隨機樹、MLP、決策表)。


數據集

開始使用機器學習模型的最重要和繁瑣的過程是獲得可靠的數據。我們使用KDD Cup 1999數據來構建能夠區分入侵或攻擊以及有價值的連接的預測模型。該資料庫包含一組標準數據,其中包括在軍事網絡環境中模擬的各種幹預措施。它由4,898,431個實例和41個屬性組成。


每個連接都標記為正常或攻擊,只有一種特定的攻擊類型。每個連接記錄包含大約100個字節。


攻擊分為四大類:

DOS:拒絕服務

R2L:遠程計算機的未授權訪問

U2R:未經授權訪問本地root權限

探測:監視和另一次探測


每個組都有各種攻擊,共有21種類型的攻擊。


KDD集摘要

使用基於TCP/IP實現的任何連接收集的分類為必要信息的屬性也如下所示:


必須先處理數據,然後才能在機器學習算法中使用。這意味著必須選擇功能,有些元素很容易找到;其他人必須通過試驗和運行測試找到。使用數據集的所有功能並不一定能保證IDS的最佳性能。它可能會增加計算成本以及系統的錯誤率。這是因為某些功能是冗餘的,或者對於區分不同的類沒有用。


該數據集的主要貢獻是引入專家建議屬性,有助於理解不同類型攻擊的行為,包括檢測DOS、PROBE、R2L和U2R的基本特徵。以下是域知識建議的一些內容功能列表。


專家特色

其他幾個數據集也在這裡提及:

K-Means聚類

如上所述,K-Means聚類是一種無監督學習技術。它是最簡單和最流行的機器學習算法之一。它在數據中查找組,其中組的數量有變量K表示。算法根據數據集的特徵將數據點分配給K組之一。數據點基於特徵的相似性進行聚類。


貝葉斯網絡

貝葉斯網絡是一種概率圖形模型。它旨在通過在有向圖的邊緣上繪製依賴關係來利用條件依賴性。它假設所有未通過邊連接的節點都是有條件獨立的,並在創建有向非循環圖時利用這一事實。


隨機森林分類器

隨機森林是一個集合分類器,這意味著它結合了許多算法用於分類目的。它們在隨機數據子集上創建多個決策樹。然後匯總每棵樹的總票數以決定測試的類別,或者它為各個樹的貢獻分配權重。


多層感知器(MLP)

MLP是前饋神經網絡。它至少包含三層:輸入層、隱藏層和輸出層。在訓練期間,調整權重或參數以最小化分類中的誤差。在每個隱藏節點中引入非線性。反向傳播用於相對於誤差進行那些權重和偏差調整。


將使用Python及其廣泛的庫來使用IDS。在我們開始申請之前,需要安裝Pandas、numpy、scipy。如果你使用的是Ubuntu shell,請使用

1sudo pip install numpy scipy pandas


首先需要對數據集進行預處理。需要下載數據集,並將其解壓縮到你將編寫程序的文件夾中。


數據集應採用.csv格式,python可以輕鬆讀取。

1# Import pandas
2import pandas as pd
3# reading csv file
4dataset = pd.read_csv("filename.csv")


前面提到的機器學習算法都存在於奇妙的scipy庫中。你可以按照以下步驟通過不同的模型快速運行數據集:

K-MEANS

1import numpy as np
2from sklearn.cluster import KMeans
3print(dataset.describe()) 
4kmeans = KMeans(n_clusters=2) 
5kmeans.fit(X)
6prediction = kmeans.predict(dataset[0]) 


隨機森林

1
2from sklearn.ensemble import RandomForestClassifier
3
4clf=RandomForestClassifier(n_estimators=50)
5
6clf.fit(dataset,dataset[:,LAST_COLUMN]) 
7pred=clf.predict(dataset)


NAIVE BAYES NETWORK

1from sklearn.naive_bayes import GaussianNB
2
3gnb = GaussianNB()
4gnb.fit(dataset,dataset[:,LAST_COLMN])
5pred=predict(gnb,dataset[0])


MULTI_LAYER PERCEPTRON

1From sklearn.neural_network import MLPClassifier
2
3clf = MLPClassifier(solver='lbfgs', alpha=1e-5,
4hidden_layer_sizes=(5, 2), random_state=1)
5clf.fit(dataset,dataset[:,LAST_COLMN])
6pred=clf.predict(dataset[0]);


為了衡量機器學習模型的準確性,我們使用各種參數。此處使用的指標包括平均準確度、誤報率和誤差率。K-Means被排除在該度量之外,因為它是無監督算法。

平均準確度定義為正確分類的數據點與數據點總數的比率。


誤報是那些應該作為威脅返回的情況,但實際並不是。


下面給出了一些其他指標比較:

精確和真實的積極

精確度是感知威脅與總威脅的比率。

真正的積極因素是威脅並正確識別為威脅的數據包。

所有當前的IDS都在轉向機器學習技術,以應對不斷增加的網絡安全威脅。這不僅使入侵檢測過程自動化,而且還具有驚人的準確性。企業可以使用這些結果來定位攻擊源,阻止進一步的嘗試並優化其網絡。另一個重要的優勢是公司不必為特定的專有籤名付費以保護自己免受新攻擊。

IDS正在使用本文中討論的許多機器學習技術:

●K-means

●貝葉斯網絡

●隨機森林分類器

●多層感知器

不同的技術在各種指標中表現更好。IDS應根據要求提供最有效的解決方案。有一件事是肯定的,任何公司現在或在不久的將來都不會採用這些技術,這會危及數據或伺服器。建議保證安全,採用機器學習。

                                                 

長按二維碼 ▲

訂閱「架構師小秘圈」公眾號

如有啟發,幫我點個在看,謝謝↓

相關焦點

  • 關於入侵檢測系統常用的幾種檢測方法
    入侵檢測系統常用的檢測方法有特徵檢測、統計檢測與專家系統。據公安部計算機信息系統安全產品質量監督檢驗中心的報告,國內送檢的入侵檢測產品中95%是屬於使用入侵模板進行模式匹配的特徵檢測產品,其他5%是採用概率統計的統計檢測產品與基於日誌的專家知識庫系產品。
  • 基於機器視覺的汽車智能駕駛系統
    目前,機器視覺在智慧機器人領域的研究熱火朝天:Klaus Fleischer等人提出的基於機器視覺的城外公路基礎設施固定對象的檢測與跟蹤;D. Brzakovie等人提出道路邊緣檢測在移動機器人導航中應用 ; O.Djekoune等人提出基於神經網絡的視覺引導機器人導航。這些研究成果對機器視覺在智能駕駛中應用有著重要的啟迪。
  • 基於深度學習的智能網格錯誤數據注入攻擊動態檢測
    對通信技術的嚴重依賴凸顯出了智能電網對虛假數據注入(FDI)攻擊的脆弱性,這種攻擊可以繞過不良數據檢測機制。電力系統中現有的緩解措施要麼側重於冗餘測量,要麼就保護一組基本測量。這些方法對FDI攻擊作了具體假設,現有緩解措施對現代網絡威脅的處理經常是存在一些限制和不足。在已提出的方法中,基於深度學習的框架工作用於檢測注入數據測量。
  • Alink:基於Flink的機器學習平臺
    分享嘉賓:楊旭 阿里巴巴 資深算法專家編輯整理:朱榮導讀:Alink是基於Flink流批一體的機器學習平臺,提供一系列算法,可以幫助處理各種機器學習任務,比如統計分析、機器學習、實時預測、個性化推薦和異常檢測。
  • IDS入侵檢測基礎知識
    下面討論一些更常見的檢測技巧。 入侵監測系統的必要性   防火牆看起來好像可以滿足系統管理員的一切需求。然而,隨著基於僱員的攻擊行為和產品自身問題的增多,IDS由於能夠在防火牆內部監測非法的活動正變得越來越必要。新的技術同樣給防火牆帶來了嚴重的威脅。  例如,VPN可穿透防火牆,所以需要IDS在防火牆後提供安全保障。
  • 機器視覺系統與機器視覺檢測最常見的技術應用分析
    這些關鍵字的熱度,從機器視覺論壇上就可以窺見一斑,在機器視覺論壇上,經常有很多專業人士會探討機器視覺算法與應用,以及與機器視覺相關的機器視覺光源方面的技術以及知識。鑑於機器視覺的專業性,很多機器視覺公司,主要從事機器視覺系統和機器視覺軟體的研究,售賣,這些也是機器視覺算法與應用研究的最終目的,也就是將知識轉化為商業價值。關於機器視覺的應用,我們可以從一些機器視覺應用實例中,去學習和借鑑。
  • 如何設計紅外入侵檢測監控報警系統
    如何設計紅外入侵檢測監控報警系統 電子設計 發表於 2018-11-02 09:30:00 隨著電子和通信技術的不斷發展,單片機已經在數據壓縮採集、電子設備
  • 基於ATCA AVP系統的高端機器視覺應用的解決方案
    基於ATCA AVP系統的高端機器視覺應用的解決方案 黃怡暾,凌華科技 發表於 2021-01-15 10:31:10   作者:黃怡暾,凌華科技工業計算機產品部 機器視覺的市場應用日益增加
  • 一種基於機器視覺的結構光三維掃描系統
    傳統意義上很多對產品的檢測方法已經不能適應現代製造業的要求。計算機視覺檢測技術具有操作、維護簡單,測量速度快,精度高,測量範圍廣等眾多無可比擬的優點,被認為是檢測技術領域中最具有發展潛力的技術。機器視覺被稱為自動化的眼睛,在國民經濟、科學研究及國防建設上都有著廣泛的應用。機器視覺不但可以實現無接觸觀測,還可以長時間保持精度,因此,機器視覺系統可以廣泛應用於長時間的、惡劣的環境。
  • 人眼還是機器「眼」?機器視覺在工業檢測領域大有可為
    機器視覺全球市場主要分布在北美、歐洲、日本、中國等地區,根據統計數據,2014年,全球機器視覺系統及部件市場規模是36.7億美元,2015年全球機器視覺系統及部件市場規模是42億美元,2016年全球機器視覺系統及部件市場規模是62億美元,2002-2016年市場年均複合增長率為12%左右。而機器視覺系統集成,根據北美市場數據估算,大約是視覺系統及部件市場的6倍。
  • Quora是如何使用機器學習的?
    從那時起,在Quora上使用機器學習發展的越來越快,我們不僅為現有的機器學習應用程式開發了更大更好的模型,而且還擴展了我們使用機器學習的領域。在這個答案中,我將給出一個藍圖,來描繪出在2017年Quora是如何使用機器學習的。機器學習使用實例我將介紹產品的各個不同組成部分,並討論如何在其中使用機器學習。1.
  • 現代汽車開發全球首款基於機器學習的智能巡航控制技術
    現代汽車集團宣布開發了全球首款基於機器學習的智能巡航控制技術,可識別和分析駕駛模式,打造定製的自動駕駛體驗。 基於機器學習的智能巡航控制 對於駕駛愛好者來說,將制動和加速控制權轉讓給諸如自適應巡航控制之類的駕駛輔助系統可能會感到有些放鬆,但也可能會感到有些機械,因為目前人工智慧在汽車上的應用還並不完善,自適應巡航系統往往會出現反應遲鈍、跑偏或者比較小心翼翼的跟車以及加速過快等問題,讓一些系統變得很雞肋。
  • 技術| 基於深度學習圖像識別的變電站監控系統
    打開APP 技術 | 基於深度學習圖像識別的變電站監控系統 發表於 2019-07-22 08:29:10 基於計算機網絡技術以及無線通信技術和視頻監控技術,研究深度學習圖像識別的變電站基建安全行為監控系統。
  • 機器視覺學習筆記:一個雙目測距的簡單實例
    1.實例目標學習OpenCV也一月有餘了,遂想進行一個雙目測距的簡單實驗,先解決從無到有,再解決錦上添花。,可以看出綠線並沒有包含稜,結果較好距離檢測結果 實際距離是74.5mm左右,絕對檢測誤差為1.15mm,相對誤差為1.5%,此時物體距離相機1134mm左右相機標定誤差為0.3mm,所以測量結果還是比較準確的4.總結本實例背景較為簡單,只能適用於固定場合的零件檢測,水果品質檢測等基本的幾何知識是必要的,例如求直線的交點,一元函數的線性回歸雙目測距基本就是這個流程
  • 機器視覺檢測系統設計過程中有哪些難點
    目前機器視覺檢測技術在國內主要應用於定位、測量、檢測和識別四個主要方向,在進行圖像採集和圖像處理的過程中,下面分析的五個問題直接影響了機器視覺檢測系統分析數據的獲取精確性。一 打光的穩定性,在機器視覺應用中,打光穩定性最影響測量的精度,因為只要是光照發生微小變化,測量結果都可能出現1到2個像素差。主要原因是光照的不穩定會影響到圖像採集邊緣位置發生變化,所以在機器視覺檢測系統設計中將環境光的影響消除到最低,同時要保證配套的主動光源的穩定性。
  • 機器視覺系統包含哪些組成部分
    :基於PC的機器視覺系統和嵌入式機器視覺系統。基於PC的機器視覺系統是傳統的結構類型,硬體包括CCD相機、視覺採集卡和PC等。嵌入式機器視覺系統將所需要的大部分硬體如CCD、內存、處理器以及通信接口等壓縮在一個「黑箱」式的模塊裡,又稱之為智能相機,其優點是結構緊湊、性價比高、使用方便、對環境的適應性強,是機器視覺系統的發展趨勢。
  • Qeexo發布基於邊緣傳感器數據的全自動機器學習平臺AutoML
    來源:TechWeb.com.cn【TechWeb】12月3日,Qeexo奇手公司今日發布了全新的AutoML產品,這是一款一鍵式全自動化平臺,讓用戶能夠快速在邊緣設備上使用傳感器數據構建機器學習解決方案。
  • 深度學習在NLP中的運用?從分詞、詞性到機器翻譯、對話系統
    》中,我們已經講到,2016 年是深度學習大潮衝擊 NLP 的一年,通過去年一年的努力,深度學習在 NLP 領域已經站穩了腳跟。其中,對話交互系統已經成為一個重要的應用研究領域,2017 年的自然語言對話系統,將開創一個新的人機互動時代。
  • Cloudopt AdBlocker 發布基於機器學習的隱私保護瀏覽器擴展
    通過攔截常見第三方跟蹤系統保護您的隱私。5. 保護您對抗惡意和釣魚攻擊。6. 阻止腳本從危險網站下載東西。 白澤是中國古代神話中地位崇高的神獸,祥瑞之象徵,傳說中白澤可以預測吉兇,是令人逢兇化吉的吉祥之獸。白澤亦能說人話,通萬物之情,曉天下萬物狀貌。
  • 基於差動電容傳感器的車輛載荷檢測系統
    基於差動電容傳感器的車輛載荷檢測系統 陳 梅 發表於 2011-08-27 02:05:42       本文提出了一種電容式車輛載荷檢測系統