(NDSS2024)论文阅读——仅低质量的训练数据?用于检测加密恶意网络流量的稳健框架

news2025/1/4 1:00:58

文章基本信息

作者:Yuqi Qing et al. (清华大学李琦团队)
代码
文章

摘要

  • 存在问题:收集包含足够数量的带有正确标签的加密恶意数据的训练数据集是具有挑战性的,当使用低质量的训练数据训练机器学习模型时,它们的性能会下降。
  • 研究目标:解决现实世界中的低质量训练数据集问题,即检测由不断演变的恶意软件生成的加密恶意流量。
  • 核心思想:利用正常和恶意流量数据之间的分布差异来估计每种类型数据的可能位置。

方法概述

三个组件:

  1. 特征提取模块:将原始加密流量转换为(表示细粒度行为的)特征向量。基于改进的 AE 架构,以无监督的方式工作,以防止错误的标签污染特征向量。
  2. 标签噪声校正模块:通过自回归生成模型估计训练数据的分布,重新标记表现出最明显分布特征的训练数据,并通过集成学习(7 个机器学习方法)推断剩余数据的标签(首先确定一部分高置信度的数据样本标签,然后将其余的所有样本重新打上标签)。
  3. 数据增强模块:利用经过标签校正的训练数据,选择要生成的恶意数据可能分布的区域,使用了一个改进的 GAN 模型来生成位于这个目标区域的新恶意数据,将生成新数据和校正过标签的数据混合进行训练。

整体流程:特征提取>分布估计>数据生成>(数据应用)

在这里插入图片描述

特征提取模块

一个改进的自动编码器,它分为嵌入层、堆叠的双向GRU(分别是encoder和decoder,分别都为两个Bi-GRU,decoder中的第一层和encoder不同,剩下都一样)和重建层。作用是从流量数据的包长序列中提取特征向量。
(代码分析后面有空了补上)

标签纠正模块

这一部分主要目的是为了利用现有的数据,进行分布的估计,然后根据估计出来的分布来纠正标签。这一部分根据论文所写的是随机从三个数据集中抽取500个良性流量和500个恶意流量,使用特征提取模块提取每个流的特征向量。
使用TSNE算法将特征向量降维到1维,再使用核密度估计来估计两种流量的分布情况。下图是文中可视化后的结果。

在这里插入图片描述

从图中可以看出良性流量和恶意流量确实存在分布差异(这里也是我们需要验证的,需要在其他数据集上进行复现
因此,我们可以估计低质量训练数据的分布,然后识别位于分布最密集和最稀疏区域的训练样本,如下图所示。

在这里插入图片描述

可以看到,右图横坐标代表了样本密度,其中密度高的样本就认为是正常流量,密度低的样本认为是恶意流量。并据此重新打标签。

但是存在的问题是,核密度估计等传统统计方法无法准确估计高维数据的分布。其次,正常数据分布和恶意数据分布之间的差异可能并不显着,特别是对于不太频繁的正常操作。

所以,本文采用了MADE进行分布估计,也就是说,最后本文并没有直接使用核密度估计和TSNE算法来进行分布估计,而是使用了先前的工作MADE(实际上,本文的代码中也集成了大量MADE中的代码,这实际上在图1中并没有标明,标签纠正模块也基本是MADE的工作)。最后根据预测的分布来纠正低质量训练数据的标签。

数据增强模块

通过上述特征提取和标签纠正,最后得到了目标数据集的分布情况,核心思想就是根据预测的分布来生成数据达到数据增强的效果。作者提出的现有的research gap是普通GAN模型只能生成遵循原始训练数据分布的新数据。而本文的创新是预测新的流量可能出现的分布,文中给了下图中的三个情况。

在这里插入图片描述

  1. 第一种情况是新的恶意流量可能会更接近正常流量,因为恶意流量为了绕过检查,所以会尽力装为正常流量。
  2. 第二种情况是新的恶意流量可能是从未出现过的0 Day攻击,所以会与现存的所有流量都有差距。
  3. 第三种情况实际上是生成正常流量的边界,如果单纯在上述两个边界的情况下生成数据,会加剧类别不平衡,使决策边界向正常流量转移,导致误报增多。因此文章使用原始训练数据中正常流量的分布作为边界,生成新的正常流量。

为了使生成的数据符合上述三种情况,本文提出了一种改进的GAN,结构如下图所示。
在这里插入图片描述
它根据每一种情况单独设计一个生成器,利用定制的损失函数来学习目标数据分布。最终的结构就是三个生成器网络和一个判别器网络。并且,为了避免模型崩溃问题,并进一步增加合成数据的多样性,数据增强模块实际上训练了三个独立的GAN,并将所有合成的数据组合起来作为新的训练数据。
下图是代码运行后生成的三个GAN模型。

在这里插入图片描述

文章主要贡献

文章核心是数据增强,考虑在缺乏训练数据以及训练数据质量过低时,使用什么方法可以提高数据集质量。
文章的思路大致如下:首先我们发现了流量数据集质量往往很差,这是无法避免的,因为流量数据的异构性。并且,我们发现了在大部分的数据集中,恶意流量和正常流量的分布是不同的,那么我们就可以根据这个不同来界定两者的边界。进一步,根据这个边界,对现有的数据进行划分(标签噪声纠正)以及对未来的数据进行划分(考虑的两种恶意流量的边界和一种正常流量的边界),从而指导数据生成,达到数据增强的目的。

文章比较好的地方是将数据的质量、正常流量和恶意流量的特征转换为特征空间中的分布情况,从而利用数学方法来进行分析,得到了最终的结论。

思考

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2269560.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

如何将CSDN文章 导出为 PDF文件

一、首先,打开我们想要导出为 PDF格式的 CSDN文章,以下图为例。 二、按 F12 调出浏览器调式模式后,选择 控制台 三、在控制台处粘贴代码 代码: (function(){ use strict;var articleBox $("div.article_content"…

YApi接口管理平台本地搭建方法介绍

YApi是一个免费开源的API管理平台,开发人员可用它来管理、调试接口,并且提供了API文档管理和测试功能,具有友好的UI页面,本文介绍Linux环境如何安装部署YApi接口管理平台。 目录 1 环境准备2 安装部署2.1 安装nodejs2.2 安装 Mong…

案例分析-采样率对模拟链路的带宽的影响

目录 问题来源: 情况分析: 总结 问题来源: 在进行模拟带宽调整时,发现设计值 与实测值,不一样,就这一问题,进行详细分析。 情况分析: 在本项目中,采用巴特沃兹四阶滤波器,设计带宽350M,改滤波器设计可以采用fiter solution工具进行设计,实测值仅仅260M,因此针…

Huggingface Trending!可控人物图像生成统一框架Leffa,可精确控制虚拟试穿和姿势转换!

今天给大家介绍一个Huggingface上虚拟试穿的热门项目Leffa,Leffa是一个可控人物图像生成的统一框架,可以精确操纵外观(即虚拟试穿)和姿势(即姿势转换)。从效果看生成效果很不错! 相关链接 论文&…

memcached的基本使用

memcached是一种基于键值对的内存数据库,一般应用于缓存数据,提高数据访问速度,减轻后端数据库压力。 安装 这里以Ubuntu为例,其他系统安装方法请看官方文档。 sudo apt-get update sudo apt-get install memcached启动 memca…

ROS话题通信

1 .理论模型 话题通信实现模型是比较复杂的,该模型如下图所示,该模型中涉及到三个角色: ROS Master (管理者)Talker (发布者)Listener (订阅者) ROS Master 负责保管 Talker 和 Listener 注册的信息,并匹配话题相同的 Talker 与 Listener,…

经验证:将数据从索尼传输到Android的 4 种方法

概括 像Android Galaxy S20 这样的新型Android智能手机很酷,但除了将数据从索尼传输到Android之外。众所周知,旧的索尼手机上存储着大量的文件,因此将数据从旧的索尼手机传输到新的Android手机非常重要。为了解决这个问题,我们做…

VITUREMEIG | AR眼镜 算力增程

根据IDC发布的《2024年第三季度美国AR/VR市场报告》显示,美国市场AR/VR总出货量增长10.3%。其中,成立于2021年的VITURE增长速度令人惊艳,同比暴涨452.6%,成为历史上增长最快的AR/VR品牌。并在美国AR领域占据了超过50%的市场份额&a…

JavaSpring AI与阿里云通义大模型的集成使用Java Data Science Library(JDSL)进行数据处理

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默, 忍不住分享一下给大家。点击跳转到网站 学习总结 1、掌握 JAVA入门到进阶知识(持续写作中……) 2、学会Oracle数据库入门到入土用法(创作中……) 3、手把…

git reset --hard(重置到当前提交,所有未提交的更改都会被永久丢弃)

git reset --hard 是一个强大的命令,它会将你的工作目录、暂存区和当前分支的 HEAD 指针重置到指定的提交状态,所有未提交的更改都会被永久丢弃。因此,使用这个命令时需要非常小心。 基本用法 重置到当前提交(丢弃所有未提交的更…

基于单片机智能水产养殖系统设计(论文+源码)

1 系统方案设计 根据系统设计需求,对智能水产养殖系统总体方案展开详细设计。如图2.1所示为系统设计总框架,系统以STM32单片机作为主控制器,通过DS18B20温度传感器、水位传感器、TSW-30浊度传感器、光照传感器实现水产养殖环境中水温、水位、…

基于微信小程序的校园点餐平台的设计与实现(源码+SQL+LW+部署讲解)

文章目录 摘 要1. 第1章 选题背景及研究意义1.1 选题背景1.2 研究意义1.3 论文结构安排 2. 第2章 相关开发技术2.1 前端技术2.2 后端技术2.3 数据库技术 3. 第3章 可行性及需求分析3.1 可行性分析3.2 系统需求分析 4. 第4章 系统概要设计4.1 系统功能模块设计4.2 数据库设计 5.…

Mysql学习笔记之约束

1.简介 MySQL中的约束用于定义表中数据的规则,以确保数据的准确性和完整性。以保证数据表中数据的有效性、正确性和完整性。 2.约束分类 在mysql中约束分类如下: 约束说明关键字主键约束每个表只能有一个主键;主键的值必须唯一&#xff0…

LabVIEW 实现自动对焦的开发

自动对焦(Autofocus, AF)技术是通过分析图像或传感器信号,动态调整焦点位置以实现清晰成像或高精度定位的过程。在LabVIEW中,可以通过集成信号采集、数据处理、控制算法和硬件接口模块,实现多种自动对焦方法&#xff0…

2024年第52周ETF周报

ETF 第52 周 ( 2024-12-23 至 2024-12-29 )周报 核心观点 ETF 业绩表现 股票型ETF周度收益率中位数为1.0731%宽基ETF中,科创创业50涨跌幅中位数为1.5625%,跌幅最小。按板块划分,金融涨跌幅中位数为1.9334%&#xff…

[Qt] 万字详解Qt入门~ Qt Creator | 对象树 | 控件布局

目录 1. Qt Creator 概览 2. 使用 Qt Creator 新建项目 3. 认识 Qt Creator 界面 4. Qt Hello World 程序 1. 使用 “按钮” 实现 2. 使用 “标签” 实现 3. 使用 “编辑框” 实现 5. 项目文件解析 1. 命名空间声明与作用 2. class Widget : public QWidget 6. Qt 编…

远程命令执行之基本介绍

一.远程命令执行漏洞 1.命令执行 命令执行是指计算机程序接受用户输入的命令,并按照命令的要求执行相应的操作。命令可以执行各种操作,例如读取文件、创建文件、修改文件、运行程序、删除文件等。 命令执行通常是通过一个命令行界面或终端窗口进行的。在…

【数据结构-单调队列】力扣2762. 不间断子数组

给你一个下标从 0 开始的整数数组 nums 。nums 的一个子数组如果满足以下条件&#xff0c;那么它是 不间断 的&#xff1a; i&#xff0c;i 1 &#xff0c;…&#xff0c;j 表示子数组中的下标。对于所有满足 i < i1, i2 < j 的下标对&#xff0c;都有 0 < |nums[i1…

扩充vmware磁盘大小以及分区

扩充vmware磁盘大小以及分区 扩充vmware磁盘大小 分区 目前使用vmware版本为17.5.2 gparted fdisk cxqubuntu:~$ sudo fdisk -l Disk /dev/loop0: 219 MiB, 229638144 bytes, 448512 sectors Units: sectors of 1 * 512 512 bytes Sector size (logical/physical): 512 …

【Python图像处理】进阶实战续篇(七)

在上一篇文章中&#xff0c;我们探讨了Python在图像处理中的几个前沿技术&#xff0c;包括语义分割和视频帧间插值。本篇将继续深化这些话题&#xff0c;并进一步拓展到其他相关的高级技术应用中&#xff0c;以便为读者提供更为详尽的知识体系。 12. 深度学习在语义分割中的应…