使用生成對抗網絡增強網絡入侵檢測性能

文章目錄

  • 前言
  • 一、GAN 模型介紹
  • 二、研究方法
    • 1.數據集選擇與處理
    • 2.IDS 基線模型構建
    • 3. GAN 模型設計與樣本生成
    • 4.生成樣本質量評估
  • 三、實驗評估
  • 四、總結


前言

網絡入侵檢測系統(Network Intrusion Detection System, NIDS)在保護關鍵數字基礎設施免受網絡威脅方面發揮著關鍵作用,基于機器學習的檢測模型在 NIDS 中應用廣泛。然而,這些模型的有效性常受限于不斷演變的入侵技術以及訓練樣本缺乏多樣性和更新不足等問題。其中,樣本稀缺(尤其是能反映網絡攻擊的異常流量數據匱乏)和類別不平衡(正常流量遠多于攻擊實例)是 NIDS 訓練過程中的顯著障礙,這導致訓練出的入侵檢測模型性能受限。

本文因此提出一種通過整合生成對抗網絡(Generative Adversarial Networks, GANs)來增強 NIDS 性能的新方法,利用 GANs 生成能緊密模擬真實網絡行為的合成網絡流量數據,以解決訓練數據集存在的關鍵挑戰,提升對攻擊的檢測能力。


一、GAN 模型介紹

為解決網絡入侵檢測系統(NIDS)訓練中存在的樣本稀缺和類別不平衡問題,研究中引入了三種生成對抗網絡(GAN)模型,通過生成模擬真實網絡行為的合成異常流量數據來增強檢測性能。

Vanilla GAN(基礎 GAN)。以二元交叉熵為損失函數,通過生成器與判別器的對抗訓練生成模擬數據。生成器專注于產出接近真實分布的樣本,判別器則致力于區分真實與生成數據,二者在博弈中共同優化。該模型在生成 Botnet 樣本時,能較好保留原始數據特征,與原始樣本的余弦相似度較高,生成的樣本可有效提升 IDS 對 Botnet 攻擊的檢測性能

Wasserstein GAN(WGAN)。針對基礎 GAN 訓練不穩定、易出現模式崩潰等問題,采用 Wasserstein 距離(地球移動距離)作為損失函數。這種距離度量方式能提供更平滑的梯度,增強訓練穩定性,使生成的數據分布更接近真實數據分布。在實驗中,其生成樣本與原始樣本的相似度表現優異,對 IDS 性能的提升效果顯著,尤其在大樣本量下,能大幅提高 Botnet 檢測的 F1-score。

Conditional Tabular GAN(CTGAN)。專為表格數據設計,支持條件生成,可保留原始數據的統計特性和特征間依賴關系。其生成器和判別器結構更復雜,能結合標簽信息生成特定類別的樣本。不過,在本研究中,其生成的 Botnet 樣本與原始樣本的相似度略低于前兩種模型,初始提升效果有限,但隨著生成樣本量增加,仍能有效增強 IDS 的檢測能力。

二、研究方法

本研究旨在通過生成對抗網絡(GANs)生成合成攻擊樣本,解決網絡入侵檢測系統(NIDS)訓練中的樣本稀缺和類別不平衡問題,提升對特定攻擊類型的檢測性能。 如下文所示為使用生成對抗網絡提升NIDS性能的流程:
在這里插入圖片描述

1.數據集選擇與處理

研究采用 CIC-IDS2017 數據集,該數據集是公開的基準數據集,包含多種網絡活動和攻擊類型,適合評估入侵檢測系統。為減少類別不平衡影響,對原始數據進行重新分組:將相似攻擊類型(如不同 DoS 攻擊)合并為更通用的類別(如 “Dos” 類),最終形成 8 個新類別,包括 Benign、Botnet、DDoS、DoS 等,以便后續研究。

2.IDS 基線模型構建

選擇隨機森林(RF)模型作為 NIDS 的基線分類器,因其在 CIC-IDS2017 數據集上已有良好的分類表現記錄。使用卡方檢驗選擇排名前 32 的特征,以 8:2 的比例劃分訓練集和測試集,訓練后該基線模型在 Botnet 類上的初始性能為:精確率 0.87、召回率 0.46、F1 分數 0.60,成為后續性能提升的對比基準。

3. GAN 模型設計與樣本生成

為生成高質量的 Botnet 攻擊樣本,研究實現了三種 GAN 模型,并針對原始 Botnet 數據特點設計生成策略:

  • 模型選擇:包括 Vanilla GAN(以二元交叉熵為損失函數)、Wasserstein GAN(WGAN,采用 Wasserstein
    距離作為損失函數,提升訓練穩定性)、Conditional Tabular GAN(CTGAN,專為表格數據設計,支持條件生成)。
  • 樣本生成策略:將原始 Botnet 樣本按目的端口(8080 與非 8080)及特征分布細分,基于細分片段按比例生成 4 倍、49
    倍、99 倍于原始數量的樣本,確保生成數據與原始數據的分布一致性。

4.生成樣本質量評估

通過三種方法驗證生成樣本與原始樣本的相似度,確保生成數據的有效性:

  • 余弦相似度:計算 8 個關鍵特征的余弦相似度,值越接近 1 表示相似度越高,結果顯示 Vanilla GAN 和 WGAN 的相似度優于CTGAN。

  • 累積和對比:對比特征累積和曲線,Vanilla GAN 和 WGAN 生成樣本的累積和與原始樣本更接近。

  • 機器學習驗證:利用 RF 和決策樹模型驗證生成樣本的分類一致性,結果表明生成樣本能被模型正確識別,與原始樣本的分類表現一致

三、實驗評估

研究的數據基礎與對比方法如下:數據規模方面,采用的 CIC-IDS2017 數據集包含豐富的網絡活動,經處理后形成 8 個新類別,其中 Botnet 類原始樣本量為 1956 個。對比方法圍繞不同 GAN 模型生成樣本對 NIDS 性能的提升效果展開,具體對比了 Vanilla GAN、Wasserstein GAN(WGAN)和 Conditional Tabular GAN(CTGAN)在生成 4 倍、49 倍、99 倍于原始數量的 Botnet 樣本時,NIDS 在精確率、召回率和 F1 分數上的表現。

下表展示了不同 GAN 模型生成樣本在 NIDS 對生成 Botnet 樣本分類中的性能對比:
在這里插入圖片描述
實驗結果表明,隨著生成樣本量的增加,三種 GAN 模型生成的樣本均能提升 NIDS 對生成 Botnet 樣本的分類性能。其中,WGAN 和 Vanilla GAN 在 49 倍和 99 倍樣本量時,精確率、召回率和 F1 分數均達到 1.00,表現優異;CTGAN 在 4 倍樣本量時性能相對較弱(F1=0.81),但隨著樣本量增加至 99 倍,F1 分數提升至 0.97,性能逐步改善。

進一步分析可知,WGAN 和 Vanilla GAN 在生成樣本的質量上更優,這與之前對生成樣本與原始樣本相似度的評估結果一致,即它們生成的樣本與原始樣本在關鍵特征上的余弦相似度更高、累積和曲線更接近,因此能更好地輔助 NIDS 進行分類訓練。

下表展示了不同 GAN 模型生成樣本在 NIDS 對原始 Botnet 樣本分類中的性能對比:

在這里插入圖片描述

該表呈現了 NIDS 在融入不同 GAN 模型生成的樣本后,對原始 Botnet 樣本的檢測性能。結果顯示,WGAN 在 99 倍樣本量時表現最佳,F1 分數從基線的 0.60 提升至 0.90,召回率從 0.46 提升至 0.82,精確率保持 1.00;Vanilla GAN 在 99 倍樣本量時 F1 分數也達到 0.90,與 WGAN 相當;CTGAN 在 99 倍樣本量時 F1 分數為 0.87,雖不及前兩者,但相較其 4 倍樣本量時(F1=0.60)有明顯提升。

這一結果表明,生成樣本量的增加有助于 NIDS 更好地學習 Botnet 樣本的特征,從而提升對原始樣本的檢測能力,且 WGAN 和 Vanilla GAN 在性能提升上更為顯著,再次印證了其生成樣本的有效性。

此外,實驗還評估了融入 GAN 生成樣本后 NIDS 對其他類別的分類性能。下表展示了融入GAN生成樣本后NIDS對其他類別的分類性能:

在這里插入圖片描述

結果顯示,除 Web Attack 和 Infiltration 類有輕微波動(提升在 4% 以內)外,其他類別(如 Benign、DoS、DDoS 等)的性能保持穩定。這說明生成的 Botnet 樣本僅針對性地提升了 NIDS 對 Botnet 類的檢測性能,未對其他類別的檢測產生負面影響,驗證了該方法的可靠性。

與現有研究相比,本研究中 WGAN 在 99 倍樣本量時對 Botnet 類的分類性能(F1=0.90)優于 Keserwani 等人使用 Grey Wolf Optimization 和 Particle Swarm Optimization 結合 RF 模型的結果(F1=0.75),也優于 Lee 等人使用 GAN 生成 10,000 個 Botnet 樣本時的結果(F1=0.66),展現出該方法在提升 NIDS 性能方面的優勢。

四、總結

本文提出了一種通過整合生成對抗網絡(GANs)來增強網絡入侵檢測系統(NIDS)性能的新方法,該方法利用 GANs 生成能緊密模擬真實網絡行為的合成異常流量數據,以解決 NIDS 訓練中存在的數據稀缺問題。研究實現了三種 GAN 模型(Vanilla GAN、Wasserstein GAN、Conditional Tabular GAN),針對 CIC-IDS2017 數據集生成特定的 Botnet 攻擊樣本,并將其融入訓練集以提升 NIDS 性能。

實驗表明,隨著生成樣本量的增加(4 倍、49 倍、99 倍于原始樣本),三種 GAN 模型均能顯著提升 NIDS 對 Botnet 的檢測性能,其中 Wasserstein GAN 在 99 倍樣本量時效果最優,使原始 Botnet 樣本檢測的 F1 分數從 0.60 提升至 0.90,且對其他類別的檢測性能影響較小。該方法成功解決了 NIDS 訓練數據稀缺的問題,為增強網絡安全防御能力提供了有效途徑。


本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/95422.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/95422.shtml
英文地址,請注明出處:http://en.pswp.cn/web/95422.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

VR森林經營模擬體驗帶動旅游經濟發展

將VR森林經營模擬體驗作為一種獨特的旅游項目,正逐漸成為旅游市場的新熱點。游客們無需長途跋涉前往深山老林,只需在旅游景區的VR體驗中心,戴上VR設備,就能開啟一場奇妙的森林之旅。在虛擬森林中,他們可以盡情探索&…

Vue2存量項目國際化改造踩坑

Vue2存量項目國際化改造踩坑 一、背景 在各類業務場景中,國際化作為非常重要的一部分已經有非常多成熟的方案,但對于一些存量項目則存在非常的改造成本,本文將分享一個的Vue2項目國際化改造方案,通過自定義Webpack插件自動提取中文…

硬件開發(1)—單片機(1)

1.單片機相關概念1.CPU:中央處理器,數據運算、指令處理,CPU性能越高,完成指令處理和數據運算的速度越快核心:指令解碼執行數據運算處理2.MCU:微控制器,集成度比較高,將所有功能集成到…

Elasticsearch面試精講 Day 4:集群發現與節點角色

【Elasticsearch面試精講 Day 4】集群發現與節點角色 在“Elasticsearch面試精講”系列的第四天,我們將深入探討Elasticsearch分布式架構中的核心機制——集群發現(Cluster Discovery)與節點角色(Node Roles)。這是構…

微信小程序長按識別圖片二維碼

提示&#xff1a;二維碼圖片才能顯示識別菜單1.第一種方法添加屬性&#xff1a;show-menu-by-longpress添加屬性&#xff1a;show-menu-by-longpress <image src"{{shop.wx_qrcode}}" mode"widthFix" show-menu-by-longpress></image>2.第二種…

智能化數據平臺:AI 與大模型驅動的架構升級

在前面的文章中,我們探討了 存算分離與云原生,以及 流批一體化計算架構 的演進趨勢。這些演進解決了“算力與數據效率”的問題。但在今天,企業在數據平臺上的需求已經從 存儲與計算的統一,逐步走向 智能化與自動化。 尤其是在 AI 與大模型快速發展的背景下,數據平臺正在發…

解鎖 Vue 動畫的終極指南:Vue Bits 實戰進階教程,讓你的Vue動畫比原生動畫還絲滑,以及動畫不生效解決方案。

一條 Splash Cursor 的 10 秒 Demo 視頻曾創下 200 萬 播放量&#xff0c;讓 React Bits 風靡全球。如今&#xff0c;Vue 開發者終于迎來了官方移植版 —— Vue Bits。 在現代 Web 開發中&#xff0c;UI 動效已成為提升用戶體驗的關鍵因素。Vue Bits 作為 React Bits 的官方 Vu…

《微服務協作實戰指南:構建全鏈路穩健性的防御體系》

在微服務架構從“技術嘗鮮”邁向“規模化落地”的進程中&#xff0c;服務間的協作不再是簡單的接口調用&#xff0c;而是涉及超時控制、事務一致性、依賴容錯、配置同步等多維度的復雜博弈。那些潛藏于協作鏈路中的隱性Bug&#xff0c;往往不是單一服務的功能缺陷&#xff0c;而…

STM32F103C8T6的智能醫療藥品存儲柜系統設計與華為云實現

項目開發背景 隨著現代醫療技術的快速發展&#xff0c;藥品的安全存儲與管理成為醫療質量控制中的重要環節。許多藥品對存儲環境的溫濕度具有嚴格的要求&#xff0c;一旦超出允許范圍&#xff0c;藥品的理化性質可能發生改變&#xff0c;甚至失效&#xff0c;直接影響患者的用藥…

python批量調用大模型API:多線程和異步協程

文章目錄 多線程批量調用 基本原理 實現代碼 代碼解析 使用注意事項 異步協程實現批量調用 異步協程實現方式 異步實現的核心原理 多線程 vs 異步協程 選擇建議 多線程批量調用 基本原理 多線程批量調用大模型API的核心思想是通過并發處理提高效率,主要原理包括: 并發請求:…

硬件開發1-51單片機1

一、嵌入式1、概念&#xff1a;以應用為中心&#xff0c;以計算機技術為基礎&#xff0c;軟硬件可裁剪的專用計算機系統以應用為中心&#xff1a;系統設計的起點是 “具體應用場景”&#xff0c;按照應用需求出發以計算機技術為基礎&#xff1a; 硬件技術&#xff1a;嵌…

Redis核心數據類型解析——string篇

Redis的常見數據類型Redis 提供了 5 種數據結構&#xff0c;理解每種數據結構的特點對于 Redis 開發運維?常重要&#xff0c;同時掌握每 種數據結構的常?命令&#xff0c;會在使? Redis 的時候做到游刃有余。預備在正式介紹 5 種數據結構之前&#xff0c;了解?下 Redis 的?…

爬蟲逆向--Day20Day21--扣JS逆向練習【案例4:深證信服務平臺】

一、案例【深證信數據服務平臺】案例地址鏈接&#xff1a;https://webapi.cninfo.com.cn/#/marketDataDate案例爬取鏈接&#xff1a;https://webapi.cninfo.com.cn/api/sysapi/p_sysapi10071.1、入口定位當進行入口定位時&#xff0c;我們首先需要進行查看響應、載荷、請求頭是…

ExcelJS實現導入轉換HTML展示(附源碼可直接使用)

目錄 簡介 開始實踐 難點 文件示例 效果預覽 具體實現 安裝 完整代碼 總結 簡介 在日常工作中&#xff0c;我們可能會遇到需要上傳并展示 Excel 文件的需求&#xff0c;實現文件內容的在線預覽。 這里給大家接收一個組件庫exceljs&#xff0c;這個組件庫進過實踐發現…

ECDH和數字簽名

文章目錄一、核心區別&#xff1a;目的完全不同二、協同工作關系&#xff1a;缺一不可的安全組合三、技術結合點&#xff1a;都基于ECC(橢圓曲線密碼學)ECDH&#xff08;橢圓曲線迪菲-赫爾曼密鑰交換&#xff09;和數字簽名&#xff08;如ECDSA&#xff0c;橢圓曲線數字簽名算法…

withCredentials(簡單說:帶不帶憑證)

一、withCredentials是什么&#xff1f;withCredentials 是瀏覽器 XMLHttpRequest 或 Fetch API&#xff08;以及 axios 等基于它們的庫&#xff09;中的一個配置項&#xff0c;作用是控制跨域請求時是否攜帶 Cookie、HTTP 認證信息等憑證。用更通俗的方式解釋&#xff1a;二、…

window系統使用命令行來安裝OpenSSH服務器或客戶端

可以通過 PowerShell 命令行來安裝&#xff0c;這種方式更直接可靠&#xff1a;以管理員身份打開 PowerShell&#xff1a; 按下 Win S 搜索 “PowerShell”右鍵點擊 “Windows PowerShell”&#xff0c;選擇"以管理員身份運行"安裝 OpenSSH 客戶端&#xff1a; Add-…

vim中常見操作及命令

在 Vim 中為所有行的行首添加相同字符&#xff0c;可以使用以下方法&#xff1a; 方法1&#xff1a;使用 :%s 替換命令&#xff08;推薦&#xff09; vim :%s/^/要添加的字符/ 例如要在所有行首添加 #&#xff1a;vim :%s/^/#/ 方法2&#xff1a;使用塊選擇模式&#xff08;可視…

開發使用mybatis是用混合模式還是全注解模式

在使用 MyBatis 開發項目時&#xff0c;Mapper 接口是為數據庫操作提供最直觀的方法&#xff0c;但在實現方式上&#xff0c;我們有兩種選擇&#xff1a;全注解模式和混合模式。那么&#xff0c;他們有什么區別&#xff0c;應該如何選擇&#xff1f;我們一起來討論一下。一、全…

WS2812燈帶效果設計器上位機

軟件使用方法介紹&#xff1a;bilibili地址 【免寫單片機代碼WS2812燈帶效果設計軟件-嗶哩嗶哩】 https://b23.tv/xFhxMGm