ICASSP 2025

APTSniffer

Detecting APT Attack Traffic Using Retrieval-Augmented Large Language Models

基于检索增强大语言模型的APT攻击流量检测

项目介绍

Introduction & Abstract

高级持续性威胁(Advanced Persistent Threats, APT)与传统的DDoS攻击或webshell不同。它们采用更复杂和隐蔽的渗透策略,对目标系统进行长期攻击,对组织和国家安全构成严重威胁。在不依赖已知威胁情报(IOC)线索的情况下识别复杂的APT活动已被证明极具挑战性。

核心挑战
由于APT流量数据短缺和加密流量混淆等问题,现有方法无法仅凭少量攻击流量样本准确识别APT流量。

为了克服上述限制,我们提出了一种新颖的加密APT流量检测模型APTSniffer,该模型结合了大语言模型(LLM)检索增强技术(RAG)

我们的模型首先从预测的流量样本中提取特征,然后使用检索增强技术在历史流量样本中识别具有相似行为模式和攻击习惯的少样本流量信息。最后,将检索到的样本信息和具有训练集先验知识的辅助微调权重矩阵输入大型生成语言模型进行自适应推理决策。

性能表现
F1 Score > 97%
实验结果表明,与其他基线模型相比,APTSniffer表现出SOTA性能。它在三个APT数据集上实现了97%以上的F1分数,使其在APT流量检测任务中具有实际应用价值。

技术架构

Technical Architecture

🎯

精确序列匹配

Exact Sequence Matching

通过载荷包长度序列的精确匹配,有效捕获APT组织攻击过程中的相似模式。

🔍

模糊相似度匹配

Fuzzy Similarity Matching

即使APT组织改变数据包长度,新的包长度序列仍与原始序列保持高度相似性。

🕸️

流量关联图匹配

Traffic Correlation Graph

通过图连接关联多跳流量样本属性信息,而不仅仅是相同属性的样本。

工作流程

How APTSniffer Works

1

特征提取

从PCAP文件中,基于流(由IP、端口和协议的五元组定义)提取不同流的载荷包长度序列和JA4指纹等特征。

2

知识转换

通过精确和模糊匹配载荷长度序列,以及图关联技术,将流量特征数据转换为可理解的知识信息。

3

LLM推理决策

将转换后的样本信息输入大语言模型,利用其少样本推理和泛化能力获得最终预测结果。

示例演示

Interactive Example

📊 标签分布与权重矩阵

经过上述转换后,流量特征数据将被转换为如下所示的样本信息:

Exact Match:
Benign: 20, APT: 50
Recommended Weights: 0.2, 0.8

Fuzzy Match:
Benign: 50, APT: 52
Recommended Weights: 0.4, 0.6

Associated Attribute Match:
Benign: 13, APT: 24
Recommended Weights: 0.2, 0.8

说明:"Recommended Weights"表示通过模拟微调机制训练的辅助权重矩阵数据。

🤖 LLM查询示例

查询大语言模型的输入示例:

You are an experienced APT traffic analysis expert. Please classify the following traffic support data into one of the categories below based on the reference information provided.

Categories: Label0 Benign Traffic, Label1 APT Traffic

Exact Match:
Benign: 20, APT: 50
Recommended Weights: 0.2, 0.8

Fuzzy Match:
Benign: 50, APT: 52
Recommended Weights: 0.4, 0.6

Associated Attribute Match:
Benign: 13, APT: 24
Recommended Weights: 0.2, 0.8

💻 脚本说明

  • a1_sam3_ok_label_distribution_pro2.py
    精确序列匹配模块
  • a2_rag2_sim.py
    模糊序列相似度匹配模块
  • a3_Corrs_2_ok.py
    流量关联图匹配模块
  • main.py
    主调度函数,负责生成标签分布和微调权重矩阵
  • main2_2_predict.py
    生成标签分布后,调用大语言模型进行决策

ZAPT数据集

Dataset Information (Anyrun2024)

2,044
PCAP文件
2019-2024
时间跨度
多组织
APT组织
真实
攻击流量

数据集特点

  • 大规模APT流量数据集,包含来自多个APT组织的真实攻击流量样本
  • APT流量数据通过Any.run沙箱手动筛选,过滤带有APT标签的样本
  • 使用Suricata检测数据集,并过滤攻击IP生成的流量以确保标签准确性
  • 使用Tshark提取攻击IP生成的流量,确保为APT攻击流量
  • 覆盖多个年份,包含丰富的攻击场景和技战术

PCAP文件命名规则

数据集文件中的PCAP名称包含了详细信息,结构如下:

格式:APT组织名_日期_样本哈希_五元组信息_Suricata规则ID_ATT&CK战术_ATT&CK技术

APT_APT10-20230130-684888079aaf7ed25e725b55a3695062-5_192.168.100.23_58521_37.48.65.148_80_sid-2826183_ttp-T1041_ta-TA0011.pcap

上述示例展示了包含APT10组织、时间戳、样本哈希、网络五元组、Suricata检测规则、MITRE ATT&CK战术和技术等完整信息的PCAP文件名。

引用信息

Citation

如果您使用本论文中的数据集,请务必包含适当的引用。

@inproceedings{aptsniffer2025,
  title={APTSniffer: Detecting APT Attack Traffic Using Retrieval-Augmented Large Language Models},
  author={Your Name and Co-authors},
  booktitle={IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP)},
  year={2025},
  organization={IEEE}
}