Agentic恶意软件持久化与C2

· 2026-10-08 22:00 · 26 阅读

原创 pandazhengzheng 2026-10-08 22:00 广东

目录

  1. 引言:从静态恶意软件到 Agentic 恶意软件

  2. Agentic 恶意软件形式化威胁模型

  3. LLM 决策核心架构设计

  4. 自主持久化策略选择

  5. LLM 驱动的 Polymorphic C2 通信

  6. 环境感知与防御适配

  7. 基于行为异常的检测框架

  8. 侧信道检测:LLM 推理特征

  9. Agentic 恶意软件 vs 传统恶意软件:检测难度量化

  10. 防御架构:纵深防御与 Agentic 威胁

  11. 评估框架与基准设计

  12. 前沿挑战与开放问题

  13. 关键参考文献


1. 引言:从静态恶意软件到 Agentic 恶意软件

1.1 恶意软件演化谱系

恶意软件的演化经历了多个阶段,每个阶段都在"自主性"和"适应性"维度上递增:

阶段 0: 硬编码恶意代码 (1980s)
  └─ 行为完全确定,签名检测有效
阶段 1: 多态/变形恶意软件 (1990s-2000s)
  └─ 代码加密+变异引擎,但行为逻辑固定
  └─ 签名检测失效,行为检测兴起
阶段 2: 模块化恶意软件 (2010s)
  └─ 动态加载功能模块,C2 下发指令
  └─ 行为依赖 C2 指令,沙箱检测困难
阶段 3: AI 增强恶意软件 (2020s 初)
  └─ ML 用于逃避检测(对抗样本)
  └─ ML 用于目标选择/钓鱼生成
  └─ 决策逻辑仍为硬编码
阶段 4: Agentic 恶意软件 (2025+)
  └─ LLM 作为决策核心
  └─ 行为逻辑由 LLM 动态生成
  └─ 持久化/C2/横向移动策略自主选择
  └─ 防御适配实时进行

1.2 Agentic 恶意软件的定义

定义 1.1(Agentic 恶意软件):Agentic 恶意软件  是一个由 LLM 决策核心驱动的恶意软件实例,其行为策略不是预编程的静态逻辑,而是由 LLM 根据环境感知 、历史交互  和目标  动态生成的:

$$\pi_t = \text{LLM}(\mathcal{E}_t, \mathcal{H}_{<t}, \mathcal{g})="" $$="" 其中  是时刻  的行为策略,可能包括持久化动作、C2 通信模式、横向移动路径等。

关键区别:传统恶意软件的行为空间  是有限且预定义的,而 Agentic 恶意软件的行为空间  是 LLM 输出空间的一个子集,理论上可以覆盖自然语言和代码生成的全部空间。

1.3 威胁范式的根本转变

Agentic 恶意软件带来了三个根本性的威胁范式转变:

转变 1:从签名空间到语义空间

传统恶意软件的检测依赖二进制签名或行为签名——特定的 API 调用序列、注册表修改模式、网络流量特征。这些签名是确定性的:同一恶意软件实例在不同主机上产生相同的可检测特征。

Agentic 恶意软件的"签名"是 LLM 的输出,而 LLM 的输出具有语义等价性——无数不同的文本表达可以对应相同的恶意行为。这使得基于签名的检测从"寻找已知模式"变为"在无限语义空间中搜索恶意意图"。

转变 2:从静态环境假设到动态适配

传统恶意软件通常假设目标环境具有某些属性(特定 OS 版本、特定安全软件),并在这些假设失效时失败。Agentic 恶意软件通过 LLM 的环境感知能力,可以实时适配目标环境的防御措施,选择当前环境下最有效的攻击路径。

转变 3:从固定 C2 协议到生成式 C2

传统 C2 通信使用固定协议(如 HTTP POST 到固定域名),可以被流量分析检测。Agentic 恶意软件的 C2 通信协议、流量特征、加密方式由 LLM 动态生成,每次通信都可以采用不同的伪装策略,使流量检测面临根本性挑战。

1.4 本文的研究范围

本文聚焦于 Agentic 恶意软件的三个核心技术维度:

  1. 自主持久化策略选择(第 4 节):LLM 如何根据目标环境动态选择最优持久化技术

  2. LLM 驱动的 Polymorphic C2(第 5 节):通信协议、流量特征、加密方式由 LLM 动态生成

  3. 检测框架(第 7-8 节):基于行为异常和侧信道的检测方法

同时讨论形式化威胁模型(第 2 节)、防御架构(第 10 节)和评估方法(第 11 节)。


2. Agentic 恶意软件形式化威胁模型

2.1 系统模型

Agentic 恶意软件可以被形式化为一个增强的马尔可夫决策过程(MDP),其中 LLM 充当策略函数:

各组件定义如下:

  • **状态空间 **:目标系统的完整状态,包括 OS 状态、安全软件配置、网络拓扑、用户行为模式、已建立的持久化机制等

  • **动作空间 **:恶意软件可执行的所有动作,包括文件操作、注册表修改、进程注入、网络通信、权限提升等

  • **状态转移 **:执行动作后系统状态的概率分布

  • **奖励函数 **:LLM 内部的目标评估,如"维持持久化"得分、"避免检测"得分、"完成 C2 指令"得分

  • **观测函数 **:恶意软件对系统状态的部分观测(不完全信息)

  • LLM 策略:,根据观测和历史决定下一步动作

  • **折扣因子 **:长期目标与短期目标的权衡

2.2 威胁参与者能力模型

定义 2.1(攻击者能力):Agentic 恶意软件的攻击者  具有以下能力元组:

  • ****:攻击者可访问的 LLM 能力等级,包括模型规模、是否本地部署、是否经过恶意微调

  • ****:初始立足点类型(钓鱼、漏洞利用、供应链植入等)

  • ****:隐蔽性预算——攻击者愿意容忍的最大检测概率

  • ****:计算预算——LLM 推理的算力限制

2.3 持久化形式化

定义 2.2(持久化机制):持久化机制  是一个在系统重启后仍能恢复恶意软件执行的配置,形式化为:

  • trigger:触发条件(开机、用户登录、定时、特定事件)

  • payload:执行的载荷(恶意软件路径或内联代码)

  • location:持久化位置(注册表、计划任务、服务、启动文件夹等)

  • privilege_req:所需权限级别

定义 2.3(持久化策略选择):Agentic 恶意软件的持久化策略选择是一个优化问题:

其中  是所有可行持久化机制的集合, 函数由 LLM 根据环境  评估每个机制的:

  • 隐蔽性(是否被安全软件检测)

  • 持久性(是否被清理工具移除)

  • 权限要求(是否需要提权)

  • 可靠性(触发成功率)

2.4 C2 通信形式化

定义 2.4(C2 通信通道):C2 通道  是恶意软件与攻击者之间的通信链路,形式化为:

传统恶意软件的  是固定的,而 Agentic 恶意软件的  是由 LLM 动态生成的:

$$\mathcal{C}_t = \text{LLM}_{C2}(\mathcal{E}_t, \mathcal{H}_{C2,<t}, \text{msg}_t)="" $$="" 其中  是要发送的消息,LLM 根据当前环境和历史通信记录选择最佳的伪装方式。

2.5 检测难度形式化

定义 2.5(检测难度):给定检测器  和恶意软件 ,检测难度定义为:

定理 2.1(Agentic 检测难度下界):对于任何基于签名的检测器 ,Agentic 恶意软件  的检测难度满足:

证明直觉:签名检测器只能检测已知签名集合  中的模式。Agentic 恶意软件的行为是 LLM 的输出,其可能的行为表达空间远大于任何有限签名集合。LLM 可以生成语义等价但表达不同的行为,使每个实例的"签名"都不同。

2.6 与 MITRE ATLAS 的映射

Agentic 恶意软件的攻击行为可以映射到 MITRE ATLAS(Adversarial Threat Landscape for AI Systems)框架:

ATLAS 战术

Agentic 恶意软件实现

LLM 决策角色

Reconnaissance

环境感知、网络枚举

LLM 选择侦察目标和方式

Initial Access

钓鱼/漏洞利用载荷生成

LLM 根据目标定制载荷

Persistence

自主选择持久化机制

LLM 评估环境选择最优机制

Defense Evasion

动态逃避检测

LLM 实时适配防御措施

Command & Control

Polymorphic C2

LLM 生成通信伪装策略

Lateral Movement

自主横向移动路径规划

LLM 分析拓扑选择路径

Impact

目标达成动作

LLM 根据目标选择影响方式


3. LLM 决策核心架构设计

3.1 整体架构

Agentic 恶意软件的 LLM 决策核心架构包含以下组件:

┌─────────────────────────────────────────────────────────┐
│                   Agentic 恶意软件架构                     │
├─────────────────────────────────────────────────────────┤
│                                                         │
│  ┌──────────────┐    ┌──────────────────┐              │
│  │  环境感知模块  │───▶│  状态构建与编码    │              │
│  │  (Sensors)    │    │  (State Builder)  │              │
│  └──────────────┘    └────────┬─────────┘              │
│                                │                        │
│                                ▼                        │
│  ┌──────────────┐    ┌──────────────────┐              │
│  │  指令接收模块  │───▶│   LLM 决策核心    │              │
│  │  (C2 Receiver)│    │  (Decision Core)  │              │
│  └──────────────┘    └────────┬─────────┘              │
│                                │                        │
│                                ▼                        │
│  ┌──────────────┐    ┌──────────────────┐              │
│  │  动作执行模块  │◀───│  动作规划与解码    │              │
│  │  (Executor)   │    │  (Action Planner) │              │
│  └──────────────┘    └──────────────────┘              │
│         │                                               │
│         ▼                                               │
│  ┌──────────────┐    ┌──────────────────┐              │
│  │  反馈收集模块  │───▶│  经验存储与学习    │              │
│  │  (Feedback)   │    │  (Memory)         │              │
│  └──────────────┘    └──────────────────┘              │
│                                                         │
└─────────────────────────────────────────────────────────┘

3.2 环境感知模块

跳转微信打开

本文转载自微信公众号「安全分析与研究」,查看原文。版权归原作者所有,如有侵权请联系删除。