观成科技-基于自适应学习的人工智能加密流量检测技术

1.前言

人工智能技术的广泛应用正在深刻改变我们的生活。在网络安全领域,基于机器学习的检测技术也应用在许多场景中。随着信息技术的迅猛发展和数字化转型的深入推进,加密技术逐渐成为保障网络安全和数据隐私的核心手段,而基于机器学习的检测技术已成为应对加密威胁的重要方式。

由于网络流量巨大,如果检测模型频繁产生大量警报,将严重干扰安全人员的分析和研判工作。为了解决这个问题,我们可以采用自适应学习技术。这种技术通过从现网中收集实时网络流量,并将其作为训练集的一部分,动态更新模型,从而有效降低模型的误报率,并提高模型的准确率。

2.对比分析

  1. 固化模型

在流量检测领域,由于加密技术的应用越来越广泛,基于传统的明文检测方法失效,但是机器学习算法可以通过对非加密内容数据作为训练数据,从中发现其中规律,进而有效的鉴别恶意流量。而基于机器学习技术的检测方法通常会使用预先收集的正常业务流量(白流量)与恶意加密流量(黑流量)构建训练集,然后通过训练模型进行检测,这样的模型称之为固化模型。然而,经过实际验证发现,由于预先收集的白流量与客户特定场景网络环境的白流量存在差异,固化模型的灵活性与适应性不够,会使模型出现一些误报,从而增加了安全研究人员分析与研判的难度。下图展示了其处理流程:

  1. 自适应模型

为了进一步提高固化模型的实际效果,可以采用自适应模型。这种方法通过在部署位置本地收集客户特定网络环境流量并将其作为训练集的一部分来扩充白流量的数据集,然后训练出的模型可以适应不同现网环境,更好地区分可能出现的恶意加密流量。下图展示了该处理流程:

在自适应模型中,使用历史数据构建的数据集训练模型后,在现网环境中会周期性收集客户现网的白流量(因为客户侧绝大多数的流量都是白流量),而后采用增量学习的方式将其加入到原有模型中,以完成模型的动态更新。自适应模型能够很好地适应客户侧现网流量的变化情况,相比于固化模型,它显著减少了许多误报的问题,检测效果得到了大幅提升。

  1. 原理解释

在构建自适应模型时,引入了增量学习的概念,这也是构建自适应模型的核心技术。增量学习的目的是学习系统能够不断从新样本中学习新知识,并且能够保留大部分先前学习到的知识。在构建自适应模型的过程中,引入增量学习技术能够在充分学习新环境中的知识的同时,不会遗忘模型学到的历史知识,从而丰富了模型的检测能力。这样的方法使得模型能够不断地适应变化的环境,并持续提升其检测能力。

  1. 自适应学习面临的技术问题

应用自适应学习技术时,需要解决以下技术问题:

  1. 数据分布未知

现网数据可能存在短时间内数据量大且相对单一的情况,因此需要应对未知的数据分布,以保证模型的鲁棒性。

  1. 恶意加密流量难获取

在现网流量中获取具有恶意加密流量的数据可能是一项挑战,需要寻找解决方案以获取足够的恶意加密流量进行学习,例如利用模拟攻击、合成数据或其他数据增强技术。

  1. 流量不平衡

正常业务流量(白流量)与恶意加密流量(黑流量)在现网流量数据中可能存在极大的不平衡,这需要采用有效的处理方法,如过采样、欠采样、类别权重调整等,以确保模型对各种情况都具有良好的适应性。

  1. 设备计算资源限制

现网设备的计算资源有限,因此在实施增量学习时需要考虑性能和效率,以确保在有限的资源下取得最佳效果,可以采用轻量化模型、优化算法或分布式计算等方法来解决该问题。

解决这些技术问题,可以有效应用自适应学习技术,并提高模型的适应性、鲁棒性和性能效果。

  1. 处理流程

在考虑到上述这些问题后,可以采用以下步骤进行处理:

  1. 数据预处理

提取流量中的行为特征,并进行去重、处理缺失值等初步预处理操作,以准备数据用于后续处理。

  1. 白流量获取

在现网数据获取阶段,针对复杂的正常业务流量(白流量),通过多时段的随机采样方法,获取新的代表性数据,以确保覆盖流量的多样性和变化性。

  1. 黑流量获取

针对难以获取的恶意加密流量(黑流量),利用历史的黑流量数据,采用基于数值扰动的数据增广方法,模拟生成新的黑流量数据,以扩充恶意加密流量的多样性。

  1. 参数调整

由于现网数据中的正常业务流量和恶意加密流量可能存在不平衡,根据上一步获取的实时流量数目,基于代价敏感学习,进行类别权重的调整,以消除偏置,使得模型能够平衡地对待不同类别的流量。

  1. 现网实验结果

在某现网环境下,针对TLS协议的Cobalt Strike检测和Webshell检测,我们进行了固化模型和自适应模型的检测对比,结果如下:

对于Webshell检测,我们收集了现网中共5万条白流量,并使用固化模型和自适应模型进行检测对比。实验结果显示,固化模型检测结果分数高于50的为1300条,而自适应模型结果仅有140条。(分数高于50分意味着模型预测该条流量是黑流量的可能性大于预测为白流量的可能性)

对于Cobalt Strike检测,我们同样收集了现网中共5万条白流量,并使用固化模型和自适应模型进行检测对比。实验结果显示,固化模型检测结果分数高于50分的为53条,而自适应模型结果仅有1条。

从测试结果可以看出,采用自适应模型后误报明显减少。这显示自适应模型在现网环境下具有更好的准确性和鲁棒性,能够更有效地识别出真正的威胁,减少了误报的问题。

  1. 结语

针对目前基于预先训练模型的机器学习技术检测恶意流量在现网特定网络环境中存在误报率偏高的现象,引入基于增量学习的自适应学习技术,通过在一定时间周期内提取客户现场的白流量,我们使得原有的固化模型能够学习到最新的流量知识,从而大大减少了误报率,提升了检测能力。

观成科技团队将持续研究自适应学习技术,为恶意加密流量检测做出贡献。我们致力于不断改进和优化人工智能检测模型,以适应不断变化的威胁环境,并提供更准确、可靠的检测方案。

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

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

相关文章

每日五道java面试题之mybatis篇(四)

目录: 第一题. 映射器#{}和${}的区别第二题. 模糊查询like语句该怎么写?第三题. 在mapper中如何传递多个参数?第四题. Mybatis如何执行批量操作第五题 MyBatis框架适用场景 第一题. 映射器#{}和${}的区别 #{}是占位符,预编译处理;${}是拼接…

windows 安装cuda 11.2过程记录

参考: https://blog.csdn.net/m0_45447650/article/details/123704930 https://zhuanlan.zhihu.com/p/99880204?from_voters_pagetrue 在显卡驱动被正确安装的前提下,在命令行里输入nvidia-smi.exe 下载CUDA Toolkit: https://developer.nvidia.com/…

CrossEntropyLoss 和NLLLoss的关系

交叉熵损失在做一件什么事? 看公式: x是预测(不需要softmax归一化),y是label, N是batch维度的数量,交叉熵损失,干了三件事. 1. 对输入在类别维度求softmax 2. 多softmax后的数,求log 3. 对(样本数, 类别数)为shape的tensor计算NLLLoss. 其中,NLLloss做的就是log取负, 和o…

java入门 - 规范你的代码注释

java基础语法-代码注释 注释只是为了提高可读性,不会被计算机编译。代码注释是架起程序设计者与程序阅读者之间的通信桥梁,最大限度的提高团队开发合作效率。也是程序代码可维护性的重要环节之一。 开发中注释可以分为三种方式: 行注释块注释类/方法注释…

Linux 大页内存 Huge Pages 虚拟内存

Linux 大页内存 Huge Pages 虚拟内存 - 秋来叶黄 - 博客园 (cnblogs.com) Linux为什么要有大页内存?为什么DPDK必须要设置大页内存?这都是由系统架构决定的。一开始为了解决一个问题,设计了对应的方案,随着事物的发展&#xff0c…

Splitpanes拆分窗格插件使用

目录 基本用法 纵向排列 遍历渲染 动态拆分宽度 项目开发中用到了拆分窗格(就是下面的效果,可以拆分网页,我们项目通常都是用左右两块拆分,可以通过拖动图标进行左右拖动),于是就发现了一个很好用的插件:Splitpane…

上位机图像处理和嵌入式模块部署(qmacvisual畸变矫正)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing 163.com】 大部分同学在开始做计算机图像的时候,是没有意识到畸变矫正这个问题的。当然不仅仅是畸变矫正,很多同学还会忽略光源的问题…

python异常:Exception、BaseException接收异常,并打印异常信息msg

except IOEerror 只能接收到 IO 类型的错误,对于抛出的 NameError 类型的错误,在 Python 中所有的异常类都继承 Exception,所以我们可以使用它来接收所有的异常。 1.Exception接收异常 源码: open("test1.py",r) pr…

4款智能文章生成器推荐,为你创作文章效率高

智能文章生成器的出现为创作者带来了很多方便,尤其是在当今信息爆炸的时代,内容创作已经成为许多人日常工作中不可或缺的一部分。无论是博客、新闻报道、营销文案还是学术论文,高质量的文章往往需要耗费大量的时间和精力来撰写。但有了智能文…

固态硬盘格式化后怎么恢复 固态硬盘被格式化后如何恢复

你知道吗,固态硬盘被格式化后,还有一线生机可以让你把数据找回来!固态硬盘被格式化后如何恢复?不要慌张,我们来一步一步地看看该怎么做。首先,你需要知道格式化并不是真正意义上的删除数据,而是把硬盘上的文件系统清空,让数据变得不可见。所以,只要你没有在格式化后往…

Linux —— 定时任务(sleep、crontab、at)

目录 1、使用 sleep 来完成定时任务 2、使用 crontab 来进行定时任务 3、使用 at 来执行单次的定时任务 1、使用 sleep 来完成定时任务 sleep n 等待 n 秒再继续往后执行 usleep n 等待 n 微秒再继续往后执行(1 秒等于 1 000 000 微秒&#xf…

uniapp使用Echarts图表H5显示正常 打包app显示异常

uniapp使用Echarts在H5页面调试 调试完在H5正常显示 然后通过安卓机调试的时候 发现直接空白了 还有这个爆错 Initialize failed: invalid dom 我有多个图表、图表是通过v-for循环出来的 解决方案 原来是yarn直接安装Echarts 然后改成本地JS文件引入 gitbub文件地址 — dist/…

二十几岁的我们:在旷野中找寻自我

二十几岁,这是一个充满变数、充满机遇和挑战的年纪。它如同一片辽阔的旷野,每个人都在其中寻找自己的方向,摸索着自己的道路。这是一个既令人兴奋又令人迷茫的年纪,我们穿着不同的鞋子,注定要走不同的路。 在这个年纪里…

面向对象(下)

目录 01、static1.1、static的使用1.2、static应用举例1.3、单例(Singleton)设计模式 02、main方法的语法03、类的成员之四:代码块04、关键字:final05、抽象类与抽象方法5.1、多态的应用:模板方法设计模式(TemplateMethod) 06、接口(interfac…

(九)Android布局类型(约束布局ConstraintLayout)

约束布局(ConstraintLayout)与相对布局差不多,是创建一个应用后默认的布局方式,比相对布局更加灵活,一般用于平铺的布局(不适用于层叠布局),常用于托拖拽方式构建页面,最…

第五篇:数字视频广告格式概述 - IAB视频广告标准《数字视频和有线电视广告格式指南》

第五篇:第五篇:数字视频广告格式概述 - IAB视频广告标准《数字视频和有线电视广告格式指南 --- 我为什么要翻译介绍美国人工智能科技公司IAB系列技术标准(2) ​​​​​​​翻译计划 第一篇序言第二篇简介和目录第三篇概述- IA…

由浅到深认识C语言(2):C语言的类型及语句

该文章Github地址:https://github.com/AntonyCheng/c-notes 在此介绍一下作者开源的SpringBoot项目初始化模板(Github仓库地址:https://github.com/AntonyCheng/spring-boot-init-template & CSDN文章地址:https://blog.csdn…

pr画中画模板视频素材

pr画中画视频模板,视频聊天对话模板。软件支持:Premiere Pro 2021或更高版本。 来自:pr模板网,下载地址:https://prmuban.com/38196.html

代码随想录算法训练营第day26|39. 组合总和、 40.组合总和II、 131.分割回文串

39. 组合总和 力扣题目链接(opens new window) 给定一个无重复元素的数组 candidates 和一个目标数 target ,找出 candidates 中所有可以使数字和为 target 的组合。 candidates 中的数字可以无限制重复被选取。 说明: 所有数字(包括 ta…

execl数据多维度建模(二)

源数据 1.选择数据 1)插入透视表 选中源数据的数据区域--插入--数据透视表(新的工作表名:透视表) 2)透视表设置 ShipCountry拉入行标签;CategoryName拉入列标签;sales拉入值的位置 3&#xf…