观成科技:基于深度学习技术的APT加密流量检测与分类检测方案

news2024/10/6 4:01:57
一、前言

近年来APT攻击的案例屡见不鲜,给国家、企业以及个人的利益造成极大威胁。随着流量加密技术的不断成熟,许多APT组织倾向于将流量加密后进行传输,从而保护传输内容。由于加密流量的实际载荷已被加密,故采用原始的流量检测方法,如深度包检测等方法,对于加密流量而言基本无效。业内尝试采用机器学习算法,通过专家经验手工提取特征的方法进行检测,但该方法存在耗时多、容易出现人为错误等问题,因此,转向深度学习技术,对流量自身进行表征学习,从而提取深度特征进行检测,具有比传统机器学习更优异的检测能力。首先,采用堆叠自编码器算法进行无监督学习,区分APT加密流量与正常流量。其次,对被检测出来的APT加密流量,采用卷积神经网络算法进行多分类任务,确定该流量属于何种APT组织。经过实验验证,该方案可以有效的检测APT加密流量,并且具有很强的APT组织分类能力。

二、问题描述

本方案主要解决两个问题:APT加密流量的识别和APT加密流量所属组织的分类。

  1. APT加密流量的识别

业内普遍的解决方案是采用有监督学习方法,即收集一定数量的正常流量与APT流量,并打上不同的标签,然后采用有监督算法(例如逻辑回归、随机森林等)进行训练,生成模型用于检测。但是在实际应用中,会出现一个问题:由于收集到的APT黑流量数量有限,故而当采集的白流量数量远多于黑流量时,则会由于数据不平衡问题而使检测能力明显下降;若采集与黑流量数量相近的白流量,则可能因为白流量缺乏代表性则造成模型过拟合,进而产生大量误报。

面对这一问题,本方案采用无监督学习的方法进行检测,无监督学习是指无需预先定义目标变量,而是通过算法从无标签的数据中发现隐藏的结构和模式。这里采用无监督学习仅对掌握的APT加密流量进行训练,学习到APT加密流量的特有模式,然后用于流量检测,能够有效的利用现有APT流量,识别现网中的APT流量,同时规避白流量的选择问题。

  1. APT加密流量所属组织的分类

目前针对APT流量分类的研究还处于初级阶段。为了达到精细化检测、将检测出的APT恶意流量所属组织进行分类的目的,本方案采用深度学习多分类技术深入挖掘不同APT组织流量的深层次特征,学习出各自APT组织的流量差异,最终达到利用模型进行精细化分类的目的。

三、原理解释

首先,采用堆叠自编码器算法进行APT加密流量识别。该算法是一种经典的无监督学习算法,它由多个自编码器连接而成,自编码器用于学习数据的低维表示,而堆叠自编码器通过连接多个自编码器从而学习到更高级别的数据特征表示。

自编码器(Auto Encoder,简称AE)的原理图如下:

自编码器主要由编码器(Encoder)、解码器(Decoder)组成,其工作流程为将输入(Input)首先通过编码器进行信息压缩,生成中间变量Code,然后将中间变量通过解码器转换成最终Output,而自编码器训练的过程就是使得输入和输出无限接近的过程。堆叠自编码器的原理如下图所示:

堆叠自动编码器由多个标准自动编码器层堆叠而成。每一层自动编码器包括编码器和解码器两个部分,编码器负责将输入数据映射到隐藏层(低维空间),解码器再将隐藏层的表示解码回原始数据的维度。在训练过程中,首先单独训练每一层自动编码器,待每一层训练完成后,将所有编码器层串联起来形成预训练的深度神经网络。相比于自编码器,堆叠自动编码器能够通过多层非线性变换将原始数据映射到抽象和紧凑的特征空间,进而实现更深层次的特征学习和表示学习。

其次采用卷积神经网络算法进行对APT流量进行分类。卷积神经网络(Convolutional Neural Network,CNN)是一种常用于图像识别、语音识别等领域的深度学习模型。CNN的核心思想是通过卷积操作来提取图像等数据的特征,从而实现对数据的分类、识别等任务。卷积神经网络的流程如下:

CNN基本结构由卷积层、池化层和全连接层组成。其中,卷积层是CNN的核心,它通过滑动一个卷积核在输入数据上进行卷积操作,从而提取出数据的局部特征。卷积操作可以看作是一种特殊的加权求和操作,其中卷积核中的权重参数是通过训练学习得到的。池化层用于对卷积层输出的特征图进行降维处理,从而减少模型参数和计算量。常用的池化方式有最大池化和平均池化两种。全连接层用于将池化层输出的特征向量映射到输出类别上,从而实现对输入数据的分类或识别。CNN的优点在于它能够自动学习和提取数据的特征,无需手动进行特征工程。此外,CNN还具有平移不变性、参数共享等特点,使得模型具有较好的泛化能力和鲁棒性。

四、检测流程

整个方案的检测流程如下图。

  1. 数据预处理:将原始流量的pcap包保留IP报头以及每个IP数据包的前1480字节,IP有效载荷小于1480字节的报文在报文末尾进行补零操作,将这些字节作为模型输入。然后将数据进行归一化,使得所有数据的输入值在[0,1]范围内。
  2. APT加密流量检测:将输入的向量代入训练好的堆叠自编码器模型进行预测,并留下模型预测为异常的疑似APT加密流量。

3)APT组织分类:将疑似APT加密流量代入卷积神经网络模型进行APT组织多分类任务,这里选取了四类主要的APT组织:蔓灵花、海莲花、白象以及蓝宝菇,除此以外,将其它APT组织的所有加密流量汇总成一个单独的类,共计5类。

五、实验结果

APT异常流量识别的实验验证中选择了正常流量1万条,以及APT加密流量2000条,实验结果如下:

准确率

精确率

召回率

F1分数

APT恶意流量识别

0.94

0.93

0.925

0.927

由实验结果可知,该检测三项指标均高于0.9,证明该方案能够有效检测APT加密流量。

APT组织多分类实验中选择了海莲花、蔓灵花、白象、蓝宝菇组织的加密流量各1000条,其他组织的加密流量总计1000条,实验结果如下:

对于多分类任务,一般使用Kappa系数来评判模型优劣,根据上述数据,计算Kappa系数KIA=0.872,根据业内经验,该系数在0.81到1之间说明模型性能极佳,因而该多分类任务具备一定的分类能力。

六、结语

针对传统的检测方式无法检测APT中的加密流量的问题,利用深度学习框架,提取加密流量本身的高级特征,分别完成对于APT加密流量的识别以及APT组织分类的任务,目前来看取得了不错的效果。随着深度学习技术的飞速发展,其提取特征的强大能力给流量安全检测提供很好的解决方案。观成科技团队将持续深入运用深度学习技术,争取在未来能够检测出更多的未知威胁。

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

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

相关文章

测试开发面经分享,面试七天速成 DAY 1

1. get、post、put、delete的区别 a. get请求: i. 用于从服务器获取资源。请求参数附加在URL的查询字符串中。 ii. 对服务器的请求是幂等的,即多次相同的GET请求应该返回相同的结果。 iii. 可以被缓存,可以被收藏为书签。 iv. 对于敏感数据不…

【python】docker-selenium 分布式selenium模拟浏览器 |可视化 或 后台运行selenium 部署与使用

一、分布式selenium 1、部署 docker-selenium Github官方地址如下: https://github.com/SeleniumHQ/docker-selenium?tabreadme-ov-file 执行安装指令: 1、这里可以将dashboard映射接口改为 14444(记得开放安全组) docker run …

微软在Windows上做了个安卓子系统…

前言 曾经小白想着如果Windows在不安装模拟器的情况下,可以安装并运行安卓软件,那这个功能一定很香。 在2021年,微软面向开发者推出WSA支持。在第二年的时候,用户就可以在Windows上使用安卓软件。 这个功能可把我乐坏了&#x…

阿里云的ALB如何实现http域名强制转到https域名

背景 通常我们申请域名之后,应用侧都会基于域名对应的ssl证书进下控制,目前通用的有商业版的负载均衡和开源的代理工具比如nginx,通过负载均衡工具一般都可以支持请求的协议是http或https 比如可以设置两个默认的端口80,443分别支持http或https,本文介绍…

品牌与产品:消费者决策的经济逻辑与品牌宣传的战略意义

在当今日益全球化的经济环境中,品牌与产品之间的关系对于企业的成功与否起着至关重要的作用。然而,在消费者做出购买决策时,他们到底是在选择产品本身,还是在选择附着在产品之上的品牌价值?同样,当客户选择…

C语言 | Leetcode C语言题解之第146题LRU缓存

题目: 题解: typedef struct {int key;int val;UT_hash_handle hh; } LRUCache;LRUCache* cache NULL; int g_capacity 0; LRUCache** lRUCacheCreate(int capacity) {g_capacity capacity;return &cache; }int lRUCacheGet(LRUCache** obj, int…

Docker|了解容器镜像层(2)

引言 容器非常神奇。它们允许简单的进程表现得像虚拟机。在这种优雅的底层是一组模式和实践,最终使一切运作起来。在设计的根本是层。层是存储和分发容器化文件系统内容的基本方式。这种设计既出人意料地简单,同时又非常强大。在今天的帖子[1]中&#xf…

Windows Docker 部署 VictoriaMetrics 数据库

一、简介 VictoriaMetrics(VM)是一个快速、高效、经济且可扩展的监控解决方案和时序数据库。它提供了数据存储、管理、处理和分析的强大功能,专注于时间序列数据,并具备高吞吐量和低延迟特性,适用于各类大规模数据场景…

FreeRTOS学习笔记-基于stm32(13)低功耗 Tickless 模式

一、stm32低功耗模式 STM32 本身就支持低功耗模式,如图有三种模式:睡眠(Sleep)模式;停止(Stop)模式;待机(Standby)模式。 二、低功耗 Tickless 模式 由于一般的应用中,处理器大量的时间都在处理空闲任务,所…

mysql中 什么是锁

大家好。上篇文章我们讲了事务并发执行时可能带来的各种问题,今天我们来聊一聊mysql面试必问的问题–锁。 一、解决并发事务带来问题的两种基本方式 1. 并发事务访问相同记录的情况 并发事务访问相同记录的情况大致可以划分为3种: 读-读情况&#xf…

如何用AI大模型打造个性化内容页面展示,提升用户阅读体验和内容传播效果

摘要 本文介绍了如何使用人工智能大模型进行个性化内容页面展示的方法和步骤,包括数据收集、数据处理、特征提取、模型训练、模型预测、数据分析等,以及它们对用户的阅读体验和内容的传播效果的影响和价值。 在数字化时代,内容是王者&…

RT-DETR详解之 Decoder 层

在上一篇博客中,博主已经讲解了如何利用Uncertainty-minimal Query Selection选择出好的特征,接下来便要将这些特征输入到Decoder中进行解码,需要注意的是,在RT-DETR的Encoder中,使用的是标准的自注意力计算方法&#…

【多重背包 动态规划】2585. 获得分数的方法数

本文涉及知识点 动态规划汇总 背包问题汇总 C算法:前缀和、前缀乘积、前缀异或的原理、源码及测试用例 包括课程视频 LeetCode2585. 获得分数的方法数 考试中有 n 种类型的题目。给你一个整数 target 和一个下标从 0 开始的二维整数数组 types ,其中 …

TCP三次握手和四次挥手过程简介

接上篇 传输层部分 链路层、网络层、传输层和应用层协议详解分析-CSDN博客文章浏览阅读689次,点赞10次,收藏15次。wireshark抓包分析-CSDN博客wireshark是网络包分析工具网络包分析工具的主要作用是尝试捕获网络包,并尝试显示包的尽可能详细…

bugku---misc---贝斯手

1、下载附件,解压之后得到下面文件 2、zip需要密码,但是介绍里面给出了提示 3、再结合图片,是古力娜扎,搜索了以下她的生日是1992。应该就是密码 4、破解flag.zip得到一段文本 5、结合题目描述说的贝斯手,猜测应该是b…

win11 默认程序中找不到typora 和设置typora为md的默认打开程序

1.找到任意一个.md文件 2.在任意一个.md文件的上面右键,点击--》打开方式--》选择其他应用--》在电脑上选择应用--》(如果列表中没有,拉到最下面)在电脑上选择应用--》弹出文件浏览框 3.找到安装typora的时候的exe文件&#xff0c…

Flutter打包网络问题解决办法

问题情况":app:compileReleaseJavaWithJavac" 报错的最主要问题其实在下一句 Failed to find Build Tools revision 30.0.3,请查看自己的Android sdk版本,比如我的就是’34.0.0’版本. 解决办法: 在app/build.gradle中的android下添加,即可 buildToolsVersion 3…

【C++课程学习】:类和对象(拷贝构造和运算符重载)

🎁个人主页:我们的五年 🔍系列专栏:C课程学习 🎉欢迎大家点赞👍评论📝收藏⭐文章 目录 ✍拷贝构造: 🍉特点一: 🍉特点二: &…

实体类status属性使用枚举类型的步骤

1. 问题引出 当实体类的状态属性为Integer类型时,容易写错 2. 初步修改 把状态属性强制为某个类型,并且自定义一些可供选择的常量。 public class LessonStatus {public static final LessonStatus NOT_LEARNED new LessonStatus(0,"未学习"…

高边坡监测规范:确保边坡安全的科学准则

随着土木工程建设的不断发展,高边坡作为常见的土方边坡形式,其安全问题日益受到人们的关注。高边坡监测规范作为保障边坡安全的重要手段,对于预防边坡滑坡、坍塌等地质灾害具有重要意义。本文将对高边坡监测规范进行深入探讨,以期…