APTMalInsight:基于系统调用信息和本体知识框架识别和认知APT恶意软件
2022-4-14 10:7:34 Author: mp.weixin.qq.com(查看原文) 阅读量:19 收藏

原文作者:Weijie Han, Jingfeng Xue, Yong Wang, Fuquan Zhang, Xianwei Gao
原文标题:APTMalInsight: Identify and cognize APT malware based on system call information and ontology knowledge framework
原文来源:Information Sciences 2021
原文链接:https://www.sciencedirect.com/science/article/pii/S0020025520308628?via%3Dihub
笔记作者:[email protected]
笔记小编:[email protected]

解决的问题

为了检测APT攻击,研究人员目前尝试利用网络流量或安全日志信息挖掘隐藏的异常行为,或者通过对安全警报事件进行相关性分析来寻找APT攻击的足迹。然而,由于安全和隐私的要求,普通研究人员获取网络流量或安全日志信息并不容易。因此,我们需要探索其他方式来开展 APT 攻击研究。与传统的网络攻击类似,APT 攻击者需要使用恶意软件作为攻击武器来发动网络空间攻击。因此,通过分析APT攻击中部署的恶意软件,为我们进行APT攻击研究提供了一种可行的方法。本文的主要研究动机包括:

  • APT 恶意软件是一种高级且复杂的恶意软件。如何检测在野 APT 恶意软件并有效地将其归入其所属家族?
  • 作为新型恶意软件,APT 恶意软件是否具有新的行为特征?APT 恶意软件与传统恶意软件的行为特征是否存在差异?
  • 如何描述攻击行为、构建知识表示并深入了解APT 恶意软件的恶意仍然是一个需要解决的关键问题。

论文主要贡献

  • 提出了一种基于动态行为特征来检测 APT 恶意软件的有效方法。APTMalInsight首先从APT恶意软件中提取动态API序列,然后计算API的鉴别性能并对API序列进行排序,最终实现对APT恶意软件的有效检测和家族分类。检测和分类的准确率分别可以达到99.28%和98.85%。
  • APTMalInsight利用本体模型描述APT恶意软件的行为特征,构建APT恶意软件的本体知识框架,实现对APT攻击的通俗易懂的描述,深入洞察APT恶意软件家族的恶意行为。
  • 我们基于真实的 APT 恶意软件样本进行综合评估,并与类似研究进行综合比较,证明所提出的方法具有良好的实际性能,研究结果可为网络空间安全界提供有价值的参考。

APTMalInsight 概述基于动态 API 序列的特征向量生成

该框架主要由两个核心模块组成:

  1. APT恶意软件检测和家族分类模块:
  • 监控APT恶意软件的动态行为,提取执行过程中的动态API调用序列;
  • 计算每个API的鉴别性能,根据性能对提取的动态API调用序列进行排序,从排序后的API序列中选择Top-N API作为特征向量来表征程序。
  • 检测 APT 恶意软件并根据上述构建的特征向量将它们分类到其所属的家族中。
  1. 基于本体的APT恶意软件行为知识表示模块:
  • 构建APT恶意软件本体模型;
  • 基于本体模型生成APT恶意软件的知识表示;
  • 基于本体知识框架对APT恶意软件的典型攻击行为进行剖析,提供APT攻击行为的知识表示,最终理解和认知APT攻击行为。

基于动态API序列的特征向量生成模块

为了检测在野 APT 恶意软件,我们首先需要建立 APT 恶意软件的有效特征表示。动态系统调用信息被广泛用于分析恶意软件,因为它可以反映程序的真实行为。为此,我们通过从程序中提取 API 并根据鉴别性能对 API 序列进行排序来构建特征向量。API序列特征向量的生成过程如图3所示,具体如下:

  • 首先,从APT恶意软件的动态分析报告中提取API序列,统计每个API在所有样本中出现的次数、每个API在每个族中出现的次数、每个API在每个样本中出现的次数;
  • 其次,根据步骤(1)得到的信息,采用TF-IDF算法计算各个API的加权值,并按照鉴别性能对API序列进行排序;
  • 第三,从排序后的序列中选择排名靠前的Top-N API,构建特征向量;
  • 第四,匹配每个样本,计算每个API在每个样本中出现的次数,作为其特征值;
  • 第五,为所有样本生成特征向量;
  • 最后,根据 API 序列生成特征向量矩阵。

基于APT恶意软件本体知识的表示模型

  1. APT恶意软件本体模型
    基于本体模型的原理,论文构建了APT恶意软件的本体框架,包括三个核心类:APT恶意软件、计算机系统组件和行为。APT 恶意软件类别定义了 APT 恶意软件的分类结构,包括所有 APT 恶意软件家族及其个体。行为类定义了恶意软件行为的分类结构,包括所有不同类型的恶意软件行为。计算机系统组件类定义了计算机系统组件的分类结构,包括所有计算机系统组件子类和个体。
    基于本体模型原理,APT恶意软件本体模型设计如下图所示:
  1. 基于本体知识的APT恶意软件描述
    在构建了APT恶意软件的本体知识框架后,可以应用本体知识来描述APT恶意软件的恶意行为,从而有助于理解APT恶意软件的恶意,实现对APT恶意软件的深入、全面的认识,进而可以基于构建的本体知识框架进行行为推理。对应的本体描述如下图所示:
    如图所示,APT恶意软件表现出的典型恶意行为包括远程控制、颠覆、窃取和自卫。这些典型的行为类型由许多更具体的行为组成。例如,远程控制行为类型包括连接C&C服务器、获取命令、下载代码等。颠覆行为类型包括内存写入、文件修改、注册表修改等。窃取行为类型包括窃取系统信息、窃取用户信息等。自卫行为类型包括环境检测、反分析、自删除等,这些典型行为将在后续评估过程中得到验证。
  2. 基于本体知识的APT恶意软件恶意行为描述
    如上图所示,APT恶意软件表现出的典型恶意行为包括远程控制、颠覆、窃取和自卫。这些典型的行为类型由许多更具体的行为组成。例如,远程控制行为类型包括连接C&C服务器、获取命令、下载代码等。颠覆行为类型包括内存写入、文件修改、注册表修改等。窃取行为类型包括窃取系统信息、窃取用户信息等。自卫行为类型包括环境检测、反分析、自删除等,这些典型行为将在后续评估过程中得到验证。

基于API的鉴别性能和行为类型的API与本体知识的关联

下图是一个生成Mirage家族恶意可执行文件的本体知识序列的示例。

局限性

  1. 生成本体知识框架的过程并没有自动实现。目前,基于提取的动态系统调用序列和本体知识,自动得到一个典型的恶意执行过程。然而,一个典型的恶意行为过程可能由多种不同的行为组成。如何将这些多种类型的行为自动组合成一个集成的过程仍然是未来研究中需要解决的问题。
  2. 恶意攻击的收集有待进一步扩大和完善。由于APT攻击过程极其复杂,APT恶意软件的动态行为过程也极其复杂。下一步是从其复杂的行为信息中提取更多的恶意行为,以进一步增强 APT 攻击的可识别性。
安全学术圈招募队友-ing 
有兴趣加入学术圈的请联系 secdr#qq.com


文章来源: http://mp.weixin.qq.com/s?__biz=MzU5MTM5MTQ2MA==&mid=2247487560&idx=1&sn=b9f7762775702e12d917586ca66154b0&chksm=fe2eefc3c95966d5fee4a2f17bdde562949cb6a5caa068472133be5f01f5e8c37e63a37934c7#rd
如有侵权请联系:admin#unsafe.sh