SuperAPI AI 工具集

semantic-aware-advanced-persistent-threat

安全与审计

查看项目

更新于 10-16 01:34

技能介绍

用途:把系统日志(auditd、syslog、溯源 CDM 记录、系统调用)转换成自然语言句子,用句子向量模型编码为语义嵌入,再用自编码器的重构误差做无监督异常打分,从而发现高级持续性威胁(APT)中的低慢速隐蔽行为。

主要能力:

  1. 日志解析与自然语言模板化,把进程 ID、父进程、二进制路径、系统调用、文件路径、网络连接等字段合成描述句;
  2. 用 all-mpnet-base-v2 生成 768 维向量;
  3. 自编码器结构 768→512→128→512→768,ReLU,MSE 损失,Adam 优化器 lr=0.001,批大小 128,训练 15 轮,仅用良性数据;
  4. 以输入与重构嵌入的 MSE 作为异常分,按验证集调阈值;
  5. 用 AUC-ROC 评估,并与 IForest、OC-SVM、PCA 基线对比;
  6. 可封装为流式检测服务,按微批处理日志并输出告警。

必要用法:安装依赖 pip install sentence-transformers;加载模型与编码方式为: from sentence_transformers import SentenceTransformer model = SentenceTransformer('all-mpnet-base-v2') embeddings = model.encode(log_sentences, batch_size=256, show_progress_bar=True)。 注意训练集只能包含已验证的良性数据,验证集需含少量带标签的恶意样本用于定阈值。

适用场景:在 DARPA TC 溯源数据集(THEIA、TRACE、CADETS、CLEARSCOPE、5DIR)上做检测实验;在已有 SIEM/Kafka 管道中增加语义异常评分环节;将溯源记录或系统调用日志转为嵌入以做下游机器学习。资料给出五种溯源上下文(ProcessEvent、ProcessExec、ProcessParent、ProcessNetflow、ProcessAll),并称在 23 个实验条件中有 11 个 AUC 大于 0.95,ProcessAll 通常最优。

限制:需要干净的良性基线期数据,训练集若含未检出的攻击会削弱检测;每条日志经约 1.1 亿参数模型编码有推理延迟(GPU 上约每条约 5–15 毫秒),高吞吐环境需批处理与 GPU;嵌入模型基于通用英文语料,与安全日志存在领域差距;只做异常检测,不做攻击归因或类型分类;依赖单一阈值,建议分级告警;逐条打分,不建模跨条目的时序或因果链,可能漏过多步攻击。

其他实现细节(如具体部署配置、性能优化参数)暂未提供。