用于异常检测的深度神经网络模型融合
用于异常检测的深度神经网络模型融合
在当今的数字时代,网络安全至关重要,因为全球数十亿台计算机通过网络连接。近年来,网络攻击的数量大幅增加。因此,网络威胁检测旨在通过观察一段时间内的流量数据来检测这些攻击,并将异常行为与正常流量区分开来 [ 1 ]。
网络异常检测 (NAD) 是一种通过基于流量异常模式的威胁检测来促进网络安全的技术。NAD 通过持续监控网络的异常事件或趋势 [ 1 ] 来运作。因此,NAD 通常是网络行为分析 (NBA) 不可或缺的一部分,其中网络安全由防病毒软件、防火墙、间谍软件检测软件和入侵检测系统等反威胁应用程序提供 [ 2 ]。
随着 Internet 技术的进步,网络攻击急剧增加。因此,网络入侵检测成为提高系统检测网络安全攻击能力的重要领域。入侵威胁是蓄意访问和操纵信息以使系统不可靠的尝试。例如,拒绝服务 (DoS) [ 3 ]。
基于异常的入侵检测是用于查找网络流量中与预期的网络正常流量不匹配的不合格模式的过程。这些异常模式是异常、异常值或异常[ 4、5 ]。NAD 已广泛用于许多应用,例如网络安全入侵检测和信用卡欺诈检测 [ 3 ]。
多年来,基于统计算法 [ 6 ]、数据挖掘方法 [ 7 ] 和机器学习 [ 8 ] 开发了异常检测系统。大多数 NAD 方法通常依赖于为正常行为开发模型,因此开发的模型可以检测任何异常模式 [ 8 ]。NAD 系统中有许多类型的模式学习,例如监督学习、半监督学习和无监督学习 [ 9 ]。
近年来,深度学习方法受到了广泛关注,因为深度神经网络能够直接从网络流量数据中学习异常的复杂模式 [ 10 ]。然而,现实世界的交通数据规模庞大、标签嘈杂且类别不平衡。换句话说,交通数据有数以百万计的样本,分布不均匀,很少有异常,而正常的交通数据太多。大多数现有网络数据集不符合现实条件,不适合现代网络。此外,传统数据集如 kddcup99 [ 11 ] 和 UNSW-NB15 [ 12 ]] 已在文献中进行了大量调查。利用这些数据集的方法能够提供高性能。因此,在本文中,我们使用ZYELL的数据集 [ 13、14 ]重点关注大规模(百万级)和高度不平衡的交通数据问题,以训练、验证和测试所提出的解决方案。
本文提出的新解决方案是在 NAD 的混合方法下考虑的。两个深度神经网络 (DNN) 的模型融合用于检测攻击并将其映射到特定类别。第一个端到端 DNN 用于从流量数据中学习模式以进行正常/攻击二元分类。第二个端到端 DNN 用于从流量数据中学习模式,以对四种类型的攻击进行分类,例如 DDOS smurf、探测 IP 扫描、探测端口扫描和探测 NMAP。本文给出的结果表明,所提出的方法在 Fβ 分数和误报率方面优于传统的单一深度神经网络。
将分类数据转换为数字表示
应用程序名称列是分类的,有 45 个唯一的字符串值,如下 [ 13 ]:
['其他', '域', 'https', 'snmp', 'icmp', 'http', 'microsoft-ds', 'ssdp', 'netbios-ssn', 'netbios-dgm', 'ssh' , 'netbios-ns', 'ftp', 'syslog', 'igmp', 'h323', 'real-audio', 'pop3', 'telnet', 'smtp', 'rtsp', 'pptp', ' auth', 'roadrunner', 'bgp', 'isakmp', 'rexec', 'rcmd', 'finger', 'bootps', 'sql-net', 'vdolive', 'irc', 'nntp', '目标'、'rlogin'、'msn'、'新闻'、'bootpc'、'snmp-trap'、'tftp'、'nfs'、'tacacs'、'icq'、'sftp']。
这些唯一值中的每一个都以不同的方式在交通记录中重复。例如,https 重复了 1,577,502 次,而 sftp 只重复了 8 次。图 1显示了应用程序名称列中的 45 个唯一值以及每个值的出现频率。应用程序名称列中的字符串值已转换为数值以供进一步处理。具有 45 个唯一值的列的单热编码导致具有大量零的稀疏矩阵。因此,为避免内存问题,未对该列进行编码。然而,它被重新缩放和裁剪。
图。1
条形图说明应用程序名称列中唯一值的频率
标签列也是分类的,具有高度不平衡的五个类别。图 2说明了标签列中的五个唯一值以及每个值的频率。使用一个热编码器对标签列中的值进行编码并转换为二进制形式。
图 2
条形图说明标签类别的频率
此数据集中很少有数字列(例如 cnt_src)具有离散数字和几十个唯一值。图 3显示了 cnt_src 列中的值以及每个值的频率。值 1 在此列中重复了超过 600 万次,而值 2 和 10 之间的值重复了 100 到 800 十万次。相反,其他值(例如 20 到 40 之间的值)的频率小于 200。
图 3
cnt_src 列值的频率
相关性
本节计算交通样本特征之间的相关性和相关度。每对特征之间的相关矩阵以图形方式表示为带有颜色编码的热图,如图 4所示. 相关系数衡量变量之间关系的强度,值范围在 − 1.0 和 1.0 之间。换句话说,- 1.0 的相关性表示完全负相关,而 1.0 的相关性表示完全正相关(这对特征高度相关)。另一方面,零或接近零的相关值表明这对特征是弱相关的。相关矩阵的意义与特征选择有关,特征选择是分类前的主要阶段。当两个特征高度相关时,可以丢弃这两个特征之一。
图 4
交通特征之间的相关热图
从图 4中可以明显看出,应该预测的标签(输出)与流量的任何输入特征都没有高度相关。此外,该功能与其后缀为“_slow”和“_conn”的版本之间只有中等相关性 (0.5–0.8)。例如,cnt_src 与 cnt_src_slow 和 cnt_src_conn 具有中等相关性。因此,没有流量特征被丢弃,因为没有人与其他人具有高相关性。
提出的模型融合
在本节中,描述了所提出的模型融合方法。模型融合包含两个深度神经网络。二元模型 1 包括特征预处理和 DNN。DNN 用作二元分类器,通过将流量数据分为两类来检测任何攻击:正常和攻击。为了组成新的攻击流量集,将包括 DDOS smurf、IP 探测、PORT 探测和 NMAP 探测在内的四种类型的攻击组合为一组,如图 5所示。两组新的攻击流量和正常流量被馈送到二进制 DNN。
图 5
拟议模型的框图
多类模型 2 包括特征预处理和 DNN。DNN 被用作多类分类器,在去除正常流量数据后将攻击分为四类,如图 5所示. 只有当模型 1 产生攻击类别时,多类模型 2 才会运行。否则,当模型 1 的输出产生正常流量时,模型 2 不会运行。最后一个密集层在正常/攻击 DNN 中有 2 个类,在多重攻击 DNN 中有 4 个类。另一方面,将提出的模型融合方法与基线模型进行了比较。基线是一个单一的深度神经网络,它已经对包括正常流量和四种攻击流量在内的五类数据进行了训练,将流量数据分为 5 类。基线方法中的 DNN 与建议方法中使用的两个 DNN 中的每一个都具有相同的架构,如表5所示。
结论和未来的工作
在本文中,为了网络安全目的,提出了一种新的异常检测和分类策略。展示了一种模型融合,它结合了二元正常/攻击 DNN 来检测任何攻击的可用性和多重攻击 DNN 来对攻击进行分类。此外,本文解决了百万规模和高度不平衡的交通数据问题。所提出的解决方案已使用真实世界的 ZYELL 数据集进行了训练、验证和测试,结果令人鼓舞。结果发现,我们的解决方案在 Fβ 分数方面优于基准解决方案 17%。此外,所提出的解决方案在将大多数 NAD 系统的误报率降低 5.3% 方面发挥了重要作用。通常,误报会降低 NAD 系统的可靠性。所以,降低误报率可以使 NAD 系统更加健壮和可靠。然而,所提出的解决方案中的低误报率并没有降低检测真实攻击的能力。
对于未来的工作,我们的目标是通过使用其他类型的深度学习模型(例如一维卷积神经网络(CNN)来学习空间特征和长短期记忆(LSTM)来学习时间特征)来提高性能。此外,LSTM 自动编码器的无监督学习也是这个百万级数据集的一个有前途的候选解决方案。
相关文章:

用于异常检测的深度神经网络模型融合
用于异常检测的深度神经网络模型融合 在当今的数字时代,网络安全至关重要,因为全球数十亿台计算机通过网络连接。近年来,网络攻击的数量大幅增加。因此,网络威胁检测旨在通过观察一段时间内的流量数据来检测这些攻击,…...

游戏服务器如何选择合适的服务器配置
游戏服务器如何选择合适的服务器配置 大家好,今天给大家分享一下游戏服务器配置的选择,为什么特别的说明一下服务器呢?服务器是决定服稳定性和安全性最重要的一个程序,如果是服务器配置不够,可能会导致服掉线、卡顿的…...

01-幂等性解释,问题及常用解决方案
目录 1. 幂等性简介 2. 后端如何解决幂等性问题 2.1 数据库层面 -> 2.1.1 防重表 -> 2.1.2 数据库悲观锁(不建议,容易出现死锁情况) -> 2.1.3 数据库乐观锁 -> 2.1.4 乐观锁CAS算法原理 2.2 锁层面 2.3 幂等性token层面 -> 2.3.1 简介文字描述: …...

SpringBoot配置文件
配置文件有两种格式: .properties .yml .properties是老版配置文件,.yml是新版配置文件 一、properties详解 IDEA社区版不支持 properties格式的日志的提示,需要安装相应插件。 3.1properties 基本语法 (ps:小技巧࿰…...

基于蜣螂算法改进的DELM分类-附代码
蜣螂算法改进的深度极限学习机DELM的分类 文章目录蜣螂算法改进的深度极限学习机DELM的分类1.ELM原理2.深度极限学习机(DELM)原理3.蜣螂算法4.蜣螂算法改进DELM5.实验结果6.参考文献7.Matlab代码1.ELM原理 ELM基础原理请参考:https://blog.c…...

FPGA纯verilog代码实现图像对数变换,提供工程源码和技术支持
目录1、图像对数变换理论2、log系数的matlab生成3、FPGA实现图像对数变换4、vivado与matlab联合仿真5、vivado工程介绍6、上板调试验证并演示7、福利:工程代码的获取1、图像对数变换理论 对数变换可以将图像的低灰度值部分扩展,显示出低灰度部分更多的细…...
【Python百日进阶-Web开发-Vue3】Day516 - Vue+ts后台项目3:首页
文章目录 一、首页头部1.1 element-plus中找到适合的Container布局容器1.2 头部容器Layout 布局1.3 src/views/HomeView.vue二、侧边菜单栏2.1 element-plus中找到适合的Menu侧栏2.2 src/views/HomeView.vue三、侧边栏的动态路由3.1 src/views/HomeView.vue3.2 src/views/Goods…...

分析了 200 个 DeFi 项目,我发现了这些规律
作者:Ren & Heinrich翻译:dongdong在这篇文章中,我分享了我通过分析当前排名前 200 的 DeFi 加密项目的见解。这不是一项学术研究。尽管如此,这些发现对加密货币投资者来说具有附加值。我使用 https://defillama.com/ 的公共数…...
你领证了吗?各地2022下半年软考纸质证书发放中
不少同学都在关注2022下半年软考证书领取时间,截止至目前,江苏、南京、山东、浙江、贵州、云南、大连、广西地区的纸质证书可以领取了,请大家在证书申领时间内及时预约证书邮寄发放哦~ 江苏 证书领取时间:2023年2月3日起 南京 …...

将群晖NAS变为本地盘
本文介绍一个工具,可以在 Windows 系统下将群晖NAS的目录变为本地盘,好处是在外部访问的时候,能够大大改善体验。可以用本地的应用程序直接打开,速度依赖网络带宽,正常情况下,看视频是没有问题的。当然&…...
以太坊上交易异常Pending的处理方法
交易Pending ETH交易pending的原因: 1.交易GasPrice设置过低,共识节点不打包 2.账户Nonce不连续,一直处于交易池队列当中 只要确认了是哪种原因引起的,就可以做出对应的解决方案。 GasPrice设置过低 由于ETH共识节点是按照Gas价格从高到低打包交易,如果每笔交易的GasPr…...

第三节 第一个内核模块
hellomodule 实验 实验说明 硬件介绍 本节实验使用到STM32MP157 开发板 实验代码讲解 本章的示例代码目录为:linux_driver/module/hellomodule 从前面我们已经知道了内核模块的工作原理,这一小节就开始写代码了,跟hello world 一样&…...

从CNN到Transformer:基于PyTorch的遥感影像、无人机影像的地物分类、目标检测、语义分割和点云分类
我国高分辨率对地观测系统重大专项已全面启动,高空间、高光谱、高时间分辨率和宽地面覆盖于一体的全球天空地一体化立体对地观测网逐步形成,将成为保障国家安全的基础性和战略性资源。随着小卫星星座的普及,对地观测已具备多次以上的全球覆盖…...

操作系统的奋斗(三)内存管理
第三章 内存管理3.1内存管理概念3.1.1 内存管理的基本原理和要求(1)内存管理的主要功能3.1.2 覆盖和交换(1)覆盖(2)交换3.1.3 连续分配管理方式(1)单一连续分配(2&#x…...
多选多的一种通用处理逻辑
开发的时候,我们经常会涉及元素的多选多,并且还需要对选中的元素进行拖动排序 通用的设计方案如下 游戏资源集合与游戏资源的绑定关系处理(多选多的一种通用处理逻辑) 可能的情况: 1.之前被选中的资源,现…...

Redis 的安装 + SpringBoot 集成 Redis
1.安装 Redis此处的 Redis 安装是针对 Linux 版本的安装, 因为 Redis 官方没有提供 Windows 版本, 只提供了 Linux 版本. 但是我们可以通过Windows 去远程连接 Redis.1.1 使用 yum 安装 Redis使用如下命令, 将 Redis 安装到 Linux 服务器:yum -y install redis1.2 启动 Redis使…...

为什么在容器中 1 号进程挂不上 arthas?
作者:卜比 本文是《容器中的 Java》系列文章之 4/n ,欢迎关注后续连载 😃 。 系列1:JVM 如何获取当前容器的资源限制? 系列2:Java Agent 踩坑之 appendToSystemClassLoaderSearch 问题 系列3:让…...

23种设计模式之策略模式
一、概念 就是将一系列算法封装起来,并使它们之间相互替换。被封装起来的算法具有独立性外部不可改变其特性。 策略模式属于对象行为模式,它通过对算法进行封装,把使用算法的责任和算法的实现分割开来,并委派给不同的对象对这些算…...

不会做UI自动化测试?一起设计框架再实践吧
目的相信做过测试的同学都听说过自动化测试,而UI自动化无论何时对测试来说都是比较吸引人的存在。相较于接口自动化来说它可以最大程度的模拟真实用户的日常操作与特定业务场景的模拟,那么存在即合理,自动化UI测试自然也是广大测试同学职业道…...

数据分析实战项目3:RFM用户分群
目录1、RFM模型介绍2、Excel实际RFM划分案例3、RFM案例3.1 数据加载和基本信息查看3.2 数据预处理和RFM的初始值计算3.3 RFM区间和划分和分值计算3.4 RFM计算结果保存3.4.1 保存到excel3.4.2 保存到数据库3.5 RFM计算结果可视化3.6 结果分析(营销建议)3.…...

【人工智能】神经网络的优化器optimizer(二):Adagrad自适应学习率优化器
一.自适应梯度算法Adagrad概述 Adagrad(Adaptive Gradient Algorithm)是一种自适应学习率的优化算法,由Duchi等人在2011年提出。其核心思想是针对不同参数自动调整学习率,适合处理稀疏数据和不同参数梯度差异较大的场景。Adagrad通…...

通过Wrangler CLI在worker中创建数据库和表
官方使用文档:Getting started Cloudflare D1 docs 创建数据库 在命令行中执行完成之后,会在本地和远程创建数据库: npx wranglerlatest d1 create prod-d1-tutorial 在cf中就可以看到数据库: 现在,您的Cloudfla…...
测试markdown--肇兴
day1: 1、去程:7:04 --11:32高铁 高铁右转上售票大厅2楼,穿过候车厅下一楼,上大巴车 ¥10/人 **2、到达:**12点多到达寨子,买门票,美团/抖音:¥78人 3、中饭&a…...
使用van-uploader 的UI组件,结合vue2如何实现图片上传组件的封装
以下是基于 vant-ui(适配 Vue2 版本 )实现截图中照片上传预览、删除功能,并封装成可复用组件的完整代码,包含样式和逻辑实现,可直接在 Vue2 项目中使用: 1. 封装的图片上传组件 ImageUploader.vue <te…...

Module Federation 和 Native Federation 的比较
前言 Module Federation 是 Webpack 5 引入的微前端架构方案,允许不同独立构建的应用在运行时动态共享模块。 Native Federation 是 Angular 官方基于 Module Federation 理念实现的专为 Angular 优化的微前端方案。 概念解析 Module Federation (模块联邦) Modul…...

Maven 概述、安装、配置、仓库、私服详解
目录 1、Maven 概述 1.1 Maven 的定义 1.2 Maven 解决的问题 1.3 Maven 的核心特性与优势 2、Maven 安装 2.1 下载 Maven 2.2 安装配置 Maven 2.3 测试安装 2.4 修改 Maven 本地仓库的默认路径 3、Maven 配置 3.1 配置本地仓库 3.2 配置 JDK 3.3 IDEA 配置本地 Ma…...
动态 Web 开发技术入门篇
一、HTTP 协议核心 1.1 HTTP 基础 协议全称 :HyperText Transfer Protocol(超文本传输协议) 默认端口 :HTTP 使用 80 端口,HTTPS 使用 443 端口。 请求方法 : GET :用于获取资源,…...
Webpack性能优化:构建速度与体积优化策略
一、构建速度优化 1、升级Webpack和Node.js 优化效果:Webpack 4比Webpack 3构建时间降低60%-98%。原因: V8引擎优化(for of替代forEach、Map/Set替代Object)。默认使用更快的md4哈希算法。AST直接从Loa…...

FFmpeg:Windows系统小白安装及其使用
一、安装 1.访问官网 Download FFmpeg 2.点击版本目录 3.选择版本点击安装 注意这里选择的是【release buids】,注意左上角标题 例如我安装在目录 F:\FFmpeg 4.解压 5.添加环境变量 把你解压后的bin目录(即exe所在文件夹)加入系统变量…...

脑机新手指南(七):OpenBCI_GUI:从环境搭建到数据可视化(上)
一、OpenBCI_GUI 项目概述 (一)项目背景与目标 OpenBCI 是一个开源的脑电信号采集硬件平台,其配套的 OpenBCI_GUI 则是专为该硬件设计的图形化界面工具。对于研究人员、开发者和学生而言,首次接触 OpenBCI 设备时,往…...