1、第 卷 第 期兵 器 装 备 工 程 学 报 年 月 收稿日期:修回日期:作者简介:刘海燕()女博士教授主要从事网络信息安全和信息通信研究通信作者:吕涵()女硕士主要从事信息安全与对抗技术研究:.:./.基于 的入侵检测系统对抗样本生成模型刘海燕吕 涵(.陆军装甲兵学院 北京.中国人民解放军 部队 河南 平顶山)摘要:随着人工智能技术的兴起基于深度学习的网络入侵检测系统已广泛应用但神经网络模型很容易受到对抗扰动的影响 攻击者通过在网络流量中添加微小的扰动来构建对抗样本使得入侵检测系统对其错误分类 论文基于 进行设计与改进提出了一种对抗样本生成模型 该模型针对恶意流量生成满足网络流量特性的对抗性
2、恶意流量并对黑盒入侵检测系统进行对抗攻击 实验表明:能够在保证网络流量真实有效的前提下实现对深度学习入侵检测模型的有效黑盒攻击关键词:入侵检测系统生成对抗网络对抗样本深度学习黑盒攻击特征约束本文引用格式:刘海燕吕涵.基于 的入侵检测系统对抗样本生成模型.兵器装备工程学报():.:.():.中图分类号:文献标识码:文章编号:()(.):.().:引言入侵检测系统是保护网络安全的重要手段它可以在网络受到攻击时及时发现并作出响应 随着网络数据量不断增多基于机器学习算法的入侵检测技术应运而生 机器学习与入侵检测技术的结合能够有效降低检测的漏报率和误报率提高检测的准确率等 深度学习技术是机器学习领域的一
3、个重要分支研究表明:它在计算机视觉、自然语言处理和恶意软件检测等多个领域取得了优于传统机器学习算法的性能 目前随着攻击手段日益智能化和复杂化传统的机器学习方法在入侵检测中应用的有效性在下降而基于深度学习的入侵检测系统达到了很高的检测精度并且已广泛应用但对抗样本的出现使得神经网络模型的安全问题受到威胁 对抗样本是指在原始样本中加入细微扰动并使模型错误分类的一种合成样本 对抗样本会极大地干扰分类器降低深度学习算法在对抗环境下的鲁棒性 关于对抗样本的研究最初主要是在图像分类领域但随着研究的深入和拓展其他领域的对抗样本研究逐渐受到关注包括网络安全领域研究了恶意软件检测中的对抗样本用 和 方法成功生成了
4、能够逃避入侵检测系统的对抗性流量样本 应用了更多对抗攻击算法包括、和 针对 数据集生成对抗样本这些工作是基于掌握目标模型的内部信息而进行的白盒攻击 然而在实际场景中攻击者很可能无法获得模型的内部信息只能通过对目标模型输入样本得到输出 等进行了针对入侵检测系统的黑盒攻击的研究使用生成对抗网络针对 数据集生成了对抗样本但并未针对网络流量的特殊性进行添加扰动的限制更改了数据的功能特征导致攻击效果失效 此外这种静态的对抗攻击方法不能很好地学习到数据特征针对以上问题本文提出了一种基于生成对抗网络的对抗攻击模型一方面在生成对抗样本时设计了针对入侵检测数据集的特征约束机制保留了网络流量的真实有效性和不可察觉
5、性另一方面利用动态查询黑盒模型的输出更好地学习和适应入侵检测模型生成了高质量的对抗样本 该模型在训练完成后可以一步生成对抗样本并实施攻击提高了对抗攻击的效率 相关工作.入侵检测数据集及其特征约束 数据集是网络流量入侵检测领域的公开基准数据集本文将该数据集作为实验数据集 数据集中的每个样本由 个特征和 个类标识组成 个特征分为 种类型包括网络连接的基本特征、网络连接的内容特征、基于时间的流量统计特征和基于主机的流量统计特征 类标识即为标签用来表示该条网络连接的类型分为正常和攻击攻击样本共有四大类共 种攻击类型包括、和 攻击 其中训练集包含 种攻击类型另外 种在测试集中用来验证分类器的泛化性能与图
6、像不同网络流量的每个特征具有其特定的含义且取值各不相同如若在对抗样本生成时不对特征值进行约束生成的对抗样本则不能保证符合真实流量的特性以至于在网络入侵检测系统的中间环节即被丢弃或在通过检测继而攻击网络时丧失入侵功能为了使得生成的对抗样本能够更加真实有效我们对 数据集进行了特征分析并提出了一种特征约束机制 其中保证功能特征不变是为了对抗样本能保留真实流量入侵行为的特性其他特征约束是为了更加接近真实网络流量的特点使其不被察觉而丢弃)保证功能特征不变:根据攻击的原理和目的不同攻击类型的网络流量都有其特定的功能特征代表了该攻击的基本功能 基本特征对于任何网络流量的有效性来说都是必需的如若更改则网络流量
7、无效 攻击利用基于主机的流量特征和基于时间的流量特征来表现 攻击体现在基于时间的流量特征部分而 和 攻击一般体现在内容特征部分 在添加对抗扰动时针对不同攻击类型要保证其功能特征不被改动)保证特征类型一致:数据集中有 种不同的特征类型包括字符型特征离散型特征和连续型特征攻击者在生成对抗样本的过程中应该保持特征的数据类型不变 数据集中的字符向量包括、和 不做改动 特征向量中的离散型数据为二值特征经过生成器处理后将修改后的二值特征的值转换为以.为阈值的二值 我们将高于阈值的值转换为 低于阈值的值转换为)保证特征取值一致:数据预处理后每个特征向量都归一到()之间为使生成的对抗样本与原始样本取值范围相同
8、设定添加噪声的取值是()生成后的特征向量将 以上的元素设为 以下的元素设为 此外 这一特征表示 会话中带外命令的数量原数据集中该特征值均为 若修改该特征则会被察觉到流量含有外部命令因此在生成对抗样本时此项不做修改)保证特征间关系一致:代表错误分段的数量 代表连接的长度 当数据包中存在错误分段则该连接无法正常持续所以 的值会为 说明这 个特征间存在着 的条件约束.生成对抗网络生成对抗网络()是由 首次提出的深度学习模型由生成模型 和判别模型 两部分组成 生成模型学习真实数据分布生成伪数据判别模型区分真实数据和生成数据 生成对抗网络的生成模型和判别模型不断进行对抗训练和优化 在这种兵 器 装 备
9、工 程 学 报:/./模式下 能够生成看似接近原始数据的伪数据 设 为真实数据()为生成的伪数据()表示 被分类为真实样本的概率 表示数据的概率分布 的优化问题可描述为 与 的极大极小博弈问题:()()()()但是 也存在一些问题主要是训练不稳定以及容易陷入坍塌模式导致生成样本缺乏多样性 针对这些问题 在 的基础上提出了改进算法 它用 距离来衡量 个概率分布之间的差异可以提供有效的梯度信息使训练更加稳定生成样本与原始样本深度特征差异更小 下式为 的目标函数:()()()()算法设计本文在 的基础上对模型进行改进提出了一种对抗样本生成模型称为 该模型旨在生成逃避入侵检测系统且真实有效的对抗性流量
10、样本并对入侵检测模型进行黑盒攻击训练阶段:动态地学习黑盒 的输出结果并根据损失函数更新生成器和判别器的参数最后训练出能够基于输入数据生成逃避检测的对抗样本的生成模型测试阶段:向生成模型中输入测试集中的流量样本验证生成的对抗样本是否能够逃避目标模型的检测实际应用:在捕获到网络流量后送入训练后的生成模型即可将其构建为带有对抗性的网络流量并用其对入侵检测系统实施攻击.对抗样本生成模型图 为构建的 对抗样本生成模型的训练框架该框架主要由 个部分组成包括生成器、判别器 和目标 图 模型.本文设计了 神经网络模型作为目标 针对 数据集进行二分类训练来模拟真实场景中的网络入侵检测系统 在不了解目标 模型的参
11、数和结构等信息时假设可以通过查询来获得黑盒 的分类结果在 模型中生成器不再直接输入噪声生成虚假样本而是通过原始样本与噪声串联输入生成器并使用特征约束机制控制特征的修改 生成器的目标是生成对抗性样本使得分类器将对抗性恶意样本误判为正常样本生成器的梯度由判别器来反向传播 判别器不再是区分正常样本和对抗样本而是通过动态地学习和模仿目标模型的预测输出使得生成的对抗样本与预测的正常样本更加相似训练集被分为正常流量和恶意流量生成器输入恶意样本和噪声来生成对抗性样本再将正常样本和生成的对抗样本分别送入目标 和判别器 判别器 将目标 实时预测的标签作为目标进行训练并将分类结果反馈给生成器.算法步骤 生成模型的
12、训练算法如下学习率设置为 共训练 个轮次每训练 次生成器训练 次判别器参数 .():(每轮次迭代次数):输入 和 到 经过 生成 对 进行判别 根据生成器的目标函数 更新 的参数 ():将 的裁剪阈值设置为 输入 和 到 经过 生成 对()进行分类得到预测标签 对 预测的标签对应的数据集进行判别 根据判别器的目标函数 更新 的参数 生成器 将恶意流量和噪声作为输入并进行特征约束限制生成对抗性样本 将正常样本和生成的对抗样本送入判别器 根据判别器 的预测结果计算损失更新生成器 的参数判别器 设置权重裁剪阈值目标 对输入的正常样本和对抗样本进行分类判别器 输入目标 的数据进行判别根据判别的结果计更
13、新判别器 的参数 的目标是生成对抗性样本使得分类器将对抗性恶意样本误判为正常样本 的目的是通过动态地学习和模仿黑盒模型的预测输出使之无法区分正常样本和生成样本以下分别为 和 的目标函数:()()()()()其中为生成器的目标函数表示生成的对抗性样本最小化 为判别器的目标函数为目标 预测的攻击样本为目标 预测的正常样本最小化 使得判别器与目标模型结果相似刘海燕等:基于 的入侵检测系统对抗样本生成模型 实验及结果分析本文实验选用 数据集作为训练集分为 部分一半用来训练分类模型一半用来训练对抗样本生成模型作为测试集用于验证对抗攻击效果.数据预处理数据集中有多种攻击类型为方便起见将数据集的标签二元化本
14、文实验将所有异常样本标签设为正常样本标签设为 对非数值型数据特征、和 进行独热编码编码处理后的数据集每条记录变为 维的特征向量 针对部分特征取值空间过大的问题将各个特征取值范围归一化到之间.实验配置本文使用深度神经网络卷积神经网络和循环神经网络这 种经典的神经网络结构搭建了 个神经网络模型分别是 模型、模型和 模型 根据经验分析我们对各模型的网络层数、神经单元数、激活函数、优化算法、学习率和批尺寸等参数的选择做了对比实验最终确定了 种检测性能较好的神经网络模型它们在验证集上分别得到了.、.和.的检测准确率 个模型训练时批尺寸设置为 共 个轮次 使用网络输出与标签的交叉熵作为损失函数 作为优化器
15、学习率设置为.激活函数选择 函数输出层激活函数使用 函数 模型隐藏层的结点数分别为:、模型包含 个卷积层和 个最大池化层卷积核分别为 和 模型使用一个 层以 条网络流量记录作为一个序列生成器 和判别器 分别采用 层和 层全连接神经网络隐藏层的激活函数选取 的隐藏层结点数分别为、的隐藏层结点数分别为、训练过程中设置批尺寸为 使用的优化器为 判别器的权重裁剪阈值设置为.评估指标在实验指标上我们选择了攻击成功率和约束满足率攻击成功率()是指生成的对抗样本使分类器分类错误的比例 攻击成功率越高代表对抗样本生成方法越好约束满足率()是指满足特征约束机制的对抗样本所占的比例 越大说明生成的对抗样本与真实网
16、络流量越相似.实验结果本节针对基于深度学习的入侵检测系统进行对抗攻击实验分别输入测试集中各类型攻击流量来生成对抗样本并对黑盒 进行对抗攻击表 显示了不同对抗攻击方法针对不同黑盒 的对抗成功率的对比包括 提出的基于 的静态算法和本文提出的 算法 实验结果显示与静态 攻击算法相比在 算法的作用下针对各种攻击类型流量样本和不同神经网络模型进行的对抗攻击都达到了高攻击成功率表明 在逃避 模型检测的对抗攻击中具有良好的有效性和泛化性表 攻击成功率的对比 .此外还比较了生成的对抗性流量样本的约束满足率实验结果如表 所示:静态 攻击算法由于没有对特征修改进行限制其构建的对抗样本只有很低的约束满足率而在特征约束的作用下 模型生成的对抗样本均达到了的约束满足率说明该模型生成的对抗样本满足了真实网络流量的特性与原始流量样本相似度高表 约束满足率的对比 .结论 是基于生成对抗网络的对抗攻击方法该方法在完成生成模型的训练后能够在黑盒场景中在保证网络流量真实有效的前提下实现面向入侵检测系统的逃避攻击 实验证明通过该生成模型构建的对抗性流量样本绝大多数都能逃避入侵检测系统的检测并且满足真实网络流量的特性与原始样本