Abstract
网络恶意活动的数量和危害持续增长,对社会构成严重威胁。具有远程控制功能的恶意软件被认为是最具威胁性的恶意活动之一,因为它可以实现任意类型的网络攻击。作为一种对策,基于流量特征的恶意软件检测方法被提出。然而,新兴的加密和规避技术对网络信息的充分利用构成了巨大的障碍。这大大削弱了现有恶意软件检测方法的有效性,依赖于单一类型的特征。在本文中,我们提出了st图来解决这个问题。除了传统的流属性,ST-Graph基于图表示学习算法探索网络行为的时空特征,并整合所有可用信息,以提高检测决策。为了说明ST-Graph的有效性,我们在两个数据集上对其进行了评估。实验结果表明,ST-Graph在效率、可泛化性和鲁棒性方面都优于目前最先进的恶意软件检测系统。具体来说,它达到了99%以上的精度和召回率,其假阳性率甚至比基线模型(近0.02倍)低两个数量级。同时,ST-Graph在两个真实网络场景中部署了一年左右的时间,在1.7 Gbps的带宽下,5分钟的流量只花费了160秒的时间,效率非常高。
Keywords
Traffic-based malware detection(基于流量的恶意软件检测), encryption traffic(加密流量), ST-Graph
Introduction
1、恶意软件是指网络犯罪分子开发的具有恶意意图的侵入性软件程序,如窃取数据、破坏计算机、破坏服务器和渗透网络。最具破坏性的恶意软件是那些具有远程控制功能的恶意软件,它使攻击者能够对受害者的计算机进行管理控制,从而发起任意类型的网络攻击。
2、我们提出了一种加密场景下的实时恶意流量检测框架ST-Graph。ST-Graph通过探索和整合多种特征,有效地揭示了加密网络中的恶意行为,实现了低警示率的检测。
3、设计了一种针对加密流数据的异构属性图,提出了一种新的嵌入方法,即interval-inclined random walk,用于挖掘和融合交通数据的时空特征。
4、具有远程控制能力的恶意软件的攻击方式
Background
1、从TLS握手信息中提取用来检测恶意加密流量的重要信息;
2、基于graph embedding方法,从由复杂的现实网络流量数据构造的优先级图拓扑中学习边缘表示。在这个过程中,我们要使用word2vec(文本嵌入方法)、skip-gram network以及极大似然估计。
Problem Statement
1、ST-Graph可以监听内部主机访问网关处的外部服务器时产生的加密网络流量,实时检测到存在可疑通信的受感染主机。
在这个工作中我们只考虑TLS协议加密流量并且需要注意的是,我们的检测系统只是捕获流量,而没有对流量进行操作,因此不会影响良性转发流量。
2、加密和逃避行为促使我们探索更多可用的信息,以进行有效的检测。
3、我们需要设计新的检测技术,能够在可容忍的计算复杂度的综合网络交互中探索和处理更多的网络特征。
System Overview
Key Observations
- Spatial Feature指主机和目标服务器之间的集中属性,尤其是在家庭中。在同一个family中的恶意软件会倾向于控制同一个目标服务器。
- Temporal Feature of the connection,由于一般的恶意软件会把TLS协议设置为固定的参数,所以受感染的主机和控制服务器之间的通信是有规律的,特别是包长度和包间隔时间。
System Design
为了达到更高的效率,我们改进了图表示算法,只通过迭代更新优化边缘表示,而最优节点表示来自于封闭解。closed-form solutions
Workflow
detection system
-
Traffic Preprocessor.
原始包–(提取)–>5元组<源IP,源端口,目的IP,目的端口,协议>–(与相关联的包集成)–>流
最后我们在每个保留的TLS流中提取TLS握手的内容,包括TLS版本和支持的加密套件,并计算一些统计信息,如流中的包数和字节数。
-
Graph Representor.
node embedding algorithm、host representations
-
Detector.
we finally employ the random forest (RF) regression algorithm as our detector
ST-GRAPH: SPATIO-TEMPORAL GRAPH
Graph Construction
- Stream Attributes.
- heartbeat packets:心跳包就是用来及时检测是否断线的一种机制,通过每间隔一定时间发送心跳数据,来检测对方是否连接。是属于应用程序协议的一部分。
Edge Embedding
-
word2vec:把词映射为实数域向量的技术,又称为word embedding即词嵌套。
-
one-hot向量:
就是有多少个不同的词,我就会创建多少维的向量,例如一个词典中有N个不同词,那么就会开创N维的向量,其中单词出现的位置为以1,该位置设为i,那么对应的向量就生成了。举个例子:[我,喜,欢,学,习],其中的“我”就可以编码为:[1,0,0,0,0],后面的“喜”就可以编码为:[0,1,0,0,0],依次类推。
-
Skip-gram模型:输入是一个中心词,输出是以中心词为中心的上下文窗口的其他词的概率,对应的是CBOW模型,其是根据上下文来预测中心词。
-
Random Walk算法:顾名思义就是随机游走,在原始的图上像走路一样随机选择路径去行走遍历,然后得到对应的节点序列。
- DeepWalk算法:DeepWalk是将图表示学习的任务与NLP中的Skip-Gram模型结合起来,将节点建模为词语,并学习到每一个节点的低维向量表示,其中同样可以蕴含节点的语义信息。
相关链接:一次搞定Skip-gram和DeepWalk - 知乎 (zhihu.com)、(44条消息) softmax算法详解_bugmaker.的博客-CSDN博客、(44条消息) NLP之—word2vec算法skip-gram原理详解_小小的天和蜗牛的博客-CSDN博客
Host Representation
Experimental Evaluation
我们的任务:恶意软件的检测以及恶意软件的分类
Experimental Setup
-
Baselines 包括 ETA 以及 FS-Net
-
TPR以及FPR:TPR可以理解为所有正类中,有多少被预测成正类(正类预测正确),即召回率;FPR可以理解为所有反类中,有多少被预测成正类(正类预测错误)
T P R = T P T P + F N ; F P R = F P F P + T N TPR = \frac{TP}{TP + FN};FPR = \frac{FP}{FP + TN} TPR=TP+FNTP;FPR=FP+TNFP
Dataset
AndMal2019(public) and EncMal2021(collected by us)
Detection Performance
- Confusion Matrix(混淆矩阵)
Generalization of ST-Graph
- SNI(Serial Network Interface):串行网络接口
Robustness of ST-Graph
REAL-WORLD Evaluation
Real-word Result
- threat intelligence: 威胁情报就是为了还原已发生的攻击和预测未发生的攻击所需要的一切线索。所谓的威胁情报就是帮助我们发现威胁,并进行处置的相应知识。这种知识就是我们所说的威胁情报”。
Case Studies
- EWind :EWind是一种复杂的、由来已久的广告软件,通过在受害者的设备上显示广告来获利。更严重的是,EWind还包括收集设备数据和向攻击者转发短信等功能,这构成了严重的安全风险。
- Miner: 通过未经授权地使用受害者的设备进行加密挖掘,Miner可以消耗有价值的计算资源,这对互联网构成了新的威胁
Discussion
Defence Ability against Attacks
Disguising Attack、Obfuscation Attack
Limitations
- Scale of network:因为网格规模越大,图的结构越复杂。
Related Work
- Single-stream-based detection
- Context-based detection
Conclusion
在本文中,我们提出了 ST-Graph,这是一种加密的恶意流量检测系统,配备设计良好、新颖的图表示学习算法。通过探索额外的、信息丰富的网络属性并有效地集成多个特征,ST-Graph 以显着降低的误报率和可容忍的计算复杂度实现了高检测精度。与最先进的恶意软件流量检测系统相比,自收集的数据集和基准数据集的实验结果证明了 ST-Graph 的有效性和效率。此外,ST-Graph 在泛化和鲁棒性方面表现出良好的性能,并通过实际部署揭示了出色的效率
征,ST-Graph 以显着降低的误报率和可容忍的计算复杂度实现了高检测精度。与最先进的恶意软件流量检测系统相比,自收集的数据集和基准数据集的实验结果证明了 ST-Graph 的有效性和效率。此外,ST-Graph 在泛化和鲁棒性方面表现出良好的性能,并通过实际部署揭示了出色的效率