文章目錄
- 前言
- 一、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 訓練數據稀缺的問題,為增強網絡安全防御能力提供了有效途徑。