基于神经网络的恶意软件检测分析

对于目前的所有行业来说,“如何有效地检测恶意软件”已经成为了大家共同的网络安全问题。一次恶意软件感染事件将有可能给我们带来数百万美金的经济损失,而当前的反病毒产品以及恶意软件检测工具一般使用的是基于签名的检测技术,这种方法需要手动设置一系列规则来识别已知的不同类型的恶意软件。但是相对来说,这种方法的针对性比较强,而且无法识别新型的恶意软件。

这种方法的效率其实非常低,因为大多数环境所采用的代码不一样,而且每天都会出现数百万种新型的恶意软件。因此,我们急需一种能够应用于当前快速改变的恶意软件生态系统的检测技术,而机器学习也许正是我们所需要的。

实际上,很多初创企业和网络安全公司已经开始研发这种基于机器学习的安全检测系统了。这些公司通常会在特征工程以及数据分析方面花费大量的人力和物力资源来开发高质量的系统,但实际上,我们可以在不涉及特征工程的情况下开发出一套能够跨操作系统和硬件来检测恶意软件的技术,具体内容可以参考我们最新发布的研究报告。

 

报告中介绍了一种人工神经网络,我们可以通过训练这种神经网络来检测恶意的Windows可执行文件(只需要可执行文件的原始字节序列作为输入),这种方法有下列几个优点:

  1. 不需要手工编译以及与编译器相关的知识。这也就意味着,训练出来的分析模型适用性很强,而且可以适应恶意软件的自我进化。
  2. 计算复杂度与序列长度成线性关系,因此它适用于大文件。
  3. 可识别二进制代码中的重要子区域以进行取证分析。
  4. 这种方法同样适用于新的文件格式、编译器和指令集结构,我们需要做的只是训练数据和模型而已。

因此我们认为,使用机器学习来对恶意软件的原始字节序列进行分析和识别并以此来进行恶意软件监测,将会是机器学习社区中一个富有前景的研究领域。

将深度学习应用到恶意软件检测会遇到哪些困难?

近期,研究人员已经成功将神经网络应用到了计算机视觉、语音识别和自然语言处理领域了,而成功的其中一个原因就是他们能够从原始数据(例如像素或单个文本字符)中归纳学习出相应的特征。因此,在这些成功案例的启发之下,我们也许能够使用可执行文件的原始字符来对神经网络进行训练,并以此来判断目标文件是否为恶意文件。如果我们能够做到这一点,我们将能够大大简化恶意软件检测工具,我们不仅能够提升检测精确度,而且还能够识别出一些恶意软件非明显但十分重要的特征。

但是,想要将深度学习应用到恶意软件检测领域中,我们还有很多问题需要解决。比如说,对于微软的Windows PE恶意软件,我们需要解决的问题如下:

  1. 将单个字符作为输入序列中的一个单元来处理,意味着我们将按照二百万个时间步长的顺序处理一个序列分类问题。据我们所知,这远远超出了以往任何基于神经网络的序列分类器的输入长度。
  2. 恶意软件中的字节数据可以包含多种形式的信息,其中包括人类可读的文本、二进制代码、或例如图片之类的任意对象等等。除此之外,还包括一些经过加密的内容。
  3. 函数之间的调用命令和跳转命令都是可以重新排列的,因此函数之间存在复杂的空间相关性。

解决方案

针对这些挑战与难题,我们测试了大量不同的神经网络结构,但上面所提到的这些挑战促使我们不得不去尝试一些不常见的神经网络结构和参数。

在设计模型的时候,我们主要考虑了以下三种功能:

  1. 在计算和内存使用中有效扩展序列长度的能力;
  2. 在检测整个文件时考虑本地环境和全局环境的能力;
  3. 帮助分析恶意软件标记的能力;

最后,我们所能设计出的最合适的恶意软件检测网络模型框图如下图所示:

数据与模型训练

我们使用了两套数据集来训练并验证这个网络,我们从开源的数据中收集了第一套训练集Group A。A组中包含了43967个恶意文件样本以及21854个良性文件样本。第二组Group B中的样本由工业反病毒厂商提供,其中包含真实攻击场景中的恶意文件以及良性文件样本(总共40万文件样本,每种各占一半)。不过,在实验的后期,我们还收到了更多的训练语料(B组),新添加的语料中包含2011786个唯一的二进制文件样本,其中有1011766个恶意文件样本。为了及时得到神经网络模型的收敛性,我们必须用大批量的数据集来训练网络。

训练和分析的结果如下图所示:

从结果中可以看到,我们的模型比较适用于A组的训练数据集,其次是B组。但是,当我们继续使用更大的语料库(200万份测试文件)来进行训练时,我们发现我们的网络模型还会不断地完善。

总结

我们希望,这项研究可以鼓励机器学习社区更加积极地去探索恶意软件检测领域,因为这确实是一个富有前景的研究领域。由于深度学习已经在图像、信号和自然语言处理方面取得了令人瞩目的成就和进步,因此我们也许可以将这些技术扩展到另一种完全不同的领域,比如说恶意软件的检测方面。

文章来源网络,作者:运维,如若转载,请注明出处:https://shuyeidc.com/wp/153094.html<

(0)
运维的头像运维
上一篇2025-03-14 07:37
下一篇 2025-03-14 07:39

相关推荐

  • 个人主题怎么制作?

    制作个人主题是一个将个人风格、兴趣或专业领域转化为视觉化或结构化内容的过程,无论是用于个人博客、作品集、社交媒体账号还是品牌形象,核心都是围绕“个人特色”展开,以下从定位、内容规划、视觉设计、技术实现四个维度,详细拆解制作个人主题的完整流程,明确主题定位:找到个人特色的核心主题定位是所有工作的起点,需要先回答……

    2025-11-20
    0
  • 社群营销管理关键是什么?

    社群营销的核心在于通过建立有温度、有价值、有归属感的社群,实现用户留存、转化和品牌传播,其管理需贯穿“目标定位-内容运营-用户互动-数据驱动-风险控制”全流程,以下从五个维度展开详细说明:明确社群定位与目标社群管理的首要任务是精准定位,需明确社群的核心价值(如行业交流、产品使用指导、兴趣分享等)、目标用户画像……

    2025-11-20
    0
  • 香港公司网站备案需要什么材料?

    香港公司进行网站备案是一个涉及多部门协调、流程相对严谨的过程,尤其需兼顾中国内地与香港两地的监管要求,由于香港公司注册地与中国内地不同,其网站若主要服务内地用户或使用内地服务器,需根据服务器位置、网站内容性质等,选择对应的备案路径(如工信部ICP备案或公安备案),以下从备案主体资格、流程步骤、材料准备、注意事项……

    2025-11-20
    0
  • 如何企业上云推广

    企业上云已成为数字化转型的核心战略,但推广过程中需结合行业特性、企业痛点与市场需求,构建系统性、多维度的推广体系,以下从市场定位、策略设计、执行落地及效果优化四个维度,详细拆解企业上云推广的实践路径,精准定位:明确目标企业与核心价值企业上云并非“一刀切”的方案,需先锁定目标客户群体,提炼差异化价值主张,客户分层……

    2025-11-20
    0
  • PS设计搜索框的实用技巧有哪些?

    在PS中设计一个美观且功能性的搜索框需要结合创意构思、视觉设计和用户体验考量,以下从设计思路、制作步骤、细节优化及交互预览等方面详细说明,帮助打造符合需求的搜索框,设计前的规划明确使用场景:根据网站或APP的整体风格确定搜索框的调性,例如极简风适合细线条和纯色,科技感适合渐变和发光效果,电商类则可能需要突出搜索……

    2025-11-20
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注