image.png

原文标题:Encrypted Malware Traffic Detection via Graph-based Network Analysis
原文作者:Zhuoqun Fu, Mingxuan Liu, Yue Qin, Jia Zhang, Yuan Zou, Qilei Yin, Qi Li and Haixin Duan
原文链接:https://dl.acm.org/doi/abs/10.1145/3545948.3545983
发表平台:RAID, 2022

1、引言

本文针对加密与规避技术日益复杂所带来的恶意流量检测难题,提出了一种基于图结构的网络行为建模方法——ST-Graph。该方法在融合传统流量属性的基础上,引入图表示学习算法,从空间与时间两个维度对网络行为特征进行建模,实现多维度特征的融合,从而有效提升检测性能。实验结果表明,ST-Graph在两个真实数据集上均显著优于现有主流检测方法,实现了超过99%的检测精度与召回率。

2、方案设计

本方案由3个部分组成,即流量预处理器图表示器检测器

image.png

  • 流量预处理器: 为解决原始Pcap格式流量数据碎片化、不利于检测的问题,作者设计了一个预处理模块,首先通过提取每个数据包的五元组(源IP、源端口、目的IP、目的端口、协议)进行流重组,还原端到端通信过程。随后,筛选出具有完整TLS握手的TLS流,提取关键信息,如TLS版本、支持的加密套件,以及流的统计特征(如数据包数量与字节数)。这些信息不仅提高了数据的可用性,还作为后续图表示学习的重要输入,用于辅助恶意流量检测。
  • 图表示器: 该模块构建了一个异构图,用于表达主机与服务器之间的端到端通信关系,结合了时间特征和空间特征。其中,时间特征通过流量统计信息嵌入到节点表示中,空间特征则通过图的结构体现。基于此,作者设计了一个节点嵌入算法,将这些时空特征转化为主机的低维向量表示,从而捕捉主机访问行为之间的相似性。
  • 检测器: 在获得每个主机的嵌入向量后,系统采用机器学习方法评估其被感染的可能性。作者最终选择随机森林(Random Forest, RF)回归算法作为检测器,因其在抗过拟合能力和实验性能方面表现优越。该方法通过多个决策树的集成预测主机的感染概率,输出一组可疑主机及其访问行为信息。

3、ST-Graph构图算法

ST-Graph通过构建异构图关联主机与服务器之间的所有网络连接,并利用Random Walk[1]算法为每条流生成连接序列,结合概率模型优化边表示,将每条流以其边嵌入与流量特征建模;进一步,系统将每个主机的所有访问按顺序整合,生成综合其网络结构与行为特征的主机表示。与传统的图神经网络(GNN)或知识图谱嵌入(KGE)方法相比,ST-Graph避免了大规模参数训练,采用少量迭代和闭式解优化方式,有效降低了计算复杂度,满足了实时检测的需求。

3.1 特征定义

  1. 空间特征(Spatial Feature): 指主机与目标服务器之间的连接集中性,尤其在同一恶意软件家族中较为明显,由于框架复用,同族恶意样本往往尝试连接相同的控制服务器,呈现出高相似性。
  2. 时间特征(Temporal Feature): 指主机在一定时间内的连接顺序与行为模式,可帮助重建恶意软件的感染过程;此外,受固定通信参数影响,感染主机与控制服务器之间的通信在数据包长度和发送间隔方面表现出规律性。

3.2 图构建

ST-Graph构建了一个主机-服务器二分图G = (H, D, E, S, I),其中节点集 H 和 D 分别表示内部主机和外部服务器节点,边集 E 表示基于TLS握手的通信连接边;每条边附带时间顺序信息 I 及流特征属性 S。

image.png

为了全面捕获加密流量中的恶意行为,作者设计了三类流属性:1)基于域名的域名生成算法(Domain Generation Algorithms,DGA)识别特征(如字符比例、域名长度等);2)来自TLS握手的加密特征(如TLS版本、密码套件顺序等),揭示潜在的弱加密行为;3)基于侧信道的统计特征(如包长、间隔时间等),辅助推断流量行为模式。这些特征共同用于加强对主机行为的建模,提升加密流量中恶意通信的检测能力。具体属性如上表所示。

3.3 边嵌入

边嵌入(edge embedding)用于将网络流表示成数值向量。作者结合两类特征:一是流的属性特征S,保留原始流量信息;二是时空嵌入(spatio-temporal embeddings),反映网络交互的空间拓扑和访问的时间顺序。

为融合时空嵌入的时间和空间特征,作者提出了一种“区间倾向随机游走”(Interval-inclined Random Walk)策略,基于图中边的连接关系和访问顺序进行游走,倾向选择时间上相近的边,以捕捉流生成的时序特性。具体游走时,从当前边的邻边中,按照连接顺序差(即两个边被同一主机访问的顺序差)以逆距离加权概率选择下一步,且考虑上两步游走的状态,通过超参数p和q控制游走偏向(返回起点或访问新节点),兼顾广度优先和深度优先搜索。通过多次随机游走收集邻边集,再利用点积相似度最大化邻边与目标边的相似性,构建时空嵌入向量。采用负采样和随机梯度上升优化嵌入向量。最终将流特征和时空嵌入拼接并归一化,得到完整的边嵌入表示。该方法高效且兼顾了流的内容和行为时序特征,适用于实时检测场景。

3.4 主机表示

本文提出了一种基于流的时空特征和访问重要性加权的信息传播方法,用于生成主机的向量表示,以辅助检测感染主机。具体来说,首先通过流的时空嵌入捕捉网络交互的空间特征和访问顺序的时间特征,形成流的向量表示。然后,针对每个主机,将其相关联的流信息进行聚合。在聚合过程中,考虑到主机访问的服务器中存在大量公共服务,部分服务信息对表征主机行为贡献有限,因此通过访问频率和访问顺序两方面对服务器重要性进行排序和加权,强调那些既常被访问又较早访问的服务器流。接着,将流的重要性与主机向量和流嵌入之间的相似度结合,计算主机与流之间的相关性得分。通过最大化所有相关流的联合相关性得分,利用向量归一化约束优化主机的表示向量,使其能够更准确地反映主机的访问行为特征。

最终,将主机向量输入到检测器,以判断主机是否被感染。

4、实验设计与评估

实验涵盖两个任务:恶意软件检测和恶意软件家族分类。第一个任务用于区分恶意网络行为主机和良性主机,第二个任务则进一步识别恶意软件所属的具体家族。恶意软件家族指的是一组具有相似攻击手法且代码存在较大重叠的相关程序,将恶意软件归类为家族有助于覆盖其随时间变化的变种,同时保留家族的特征。

4.1 数据集

本文使用了公开的AndMal2019数据集和自建的EncMal2021数据集,前者包含数千个安卓应用产生的恶意与良性流量,后者基于校园网络和沙箱环境采集了超过十万主机的流量数据,其中4.5%为恶意流量。恶意样本来源于多个知名恶意软件家族,良性流量通过Alexa排名过滤和沙箱良性样本缓解采集偏差。数据集在训练和测试时进行了合理划分,确保部分测试数据包含新的恶意家族以验证模型泛化能力。

4.2 实验结果

任务一:检测主机是否被感染

image.png

任务二:主机被哪种家族感染

image.png

References

[1] Fouss, Francois, et al. "Random-walk computation of similarities between nodes of a graph with application to collaborative recommendation." IEEE Transactions on knowledge and data engineering 19.3 (2007): 355-369.

标签: Malware

添加新评论

  • 上一篇: 没有了
  • 下一篇: 没有了