文章目录

  • 前言
  • 一、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