ATLAS:把Agent黑盒轨迹转为状态机,让14B小模型攻防成功率达50%
ATLAS: Discovering Agent Strategies through LLM-Guided Abstraction and Automata Learning

在以大语言模型(LLM)为核心的自主智能体(Agent)研究中,一个长期困扰学术界和工程界的矛盾正变得愈发尖锐:Agent 处理复杂长流程任务的能力突飞猛进,但人类对它们行为机理的理解却几乎停滞不前。无论是自主渗透测试、复杂的软件工程修 Bug,还是复杂的网页操作,目前的评估体系大多只关注最终任务有没有成功,以及记录下动辄几十乃至上百轮由工具调用、终端命令、模型自言自语交织而成的原始轨迹(Execution Traces)。
ArXiv URL:https://arxiv.org/abs/2608.14352v1
这些原始日志虽然保留了全部细节,却带来了严重的认知过载。开发者面对一份长达几十页的终端交互记录,很难回答几个基础却致命的问题:Agent 在解决这一类问题时,真正的宏观策略是什么?它在哪个环节犹豫不决、陷入死循环?它的决策分支是如何根据环境反馈进行调整的?更关键的是,我们能否把顶尖模型探索出的高价值策略,无损且清晰地传授给成本极低的端侧小模型?
来自维也纳工业大学与格拉茨工业大学的研究团队在模型驱动工程领域的顶级会议 MODELS 2026 上发表了一项极具启发性的工作。他们提出了名为 ATLAS(Automata Learning for Agent Trajectory Analysis and Strategy Discovery)的全新框架,首次将大语言模型的语义抽象能力与形式化方法中的“自动机学习”(Automata Learning)结合起来,直接从 Agent 与环境交互的原始轨迹中反向推导并还原出可解释的概率状态机——带标签马尔可夫链(Labelled Markov Chains)。这项研究不仅让 Agent 内部混乱的试错逻辑无所遁形,还开辟出一条全新的技术路径:利用形式化状态机提炼高阶策略,让原本能力羸弱的 14B 紧凑模型在缺乏外部微调的情况下,在 Linux 漏洞渗透测试中跑出了 50% 的任务成功率。
从被动日志到行为模型:Agent 可解释性的范式转换
目前业界为了提高 Agent 的透明度,主要依赖思维链(Chain-of-Thought)、ReAct 范式、自我反思(Self-Reflection)或任务分解。这些机制确实让大模型在做单步决策时吐出了思考过程,但这类解释本质上是“局部的、单次的”。换句话说,阅读 ReAct 轨迹就像是在窥探 Agent 在某一个具体时间步上的瞬时念头,人类仍然无法把握系统全局的行为拓扑结构。
更深层的问题在于,人工为 Agent 建立行为规范模型几乎是一件不可能完成的任务。大模型驱动的决策高度随机且具有语境敏感性,环境返回的一个微小报错信息就可能引发 Agent 完全不同的行为分支。想要靠工程师手写状态转移图来约束或评估 Agent,面对现代复杂软件环境注定力不从心。
ATLAS 的核心立意正在于此:不把运行轨迹当成事后审计的被动日志文件,而是将其视作一阶建模输入资产(First-class Modeling Inputs)。如果把 Agent 在真实环境中的多次试错轨迹看作一个随机生成过程的采样,那么只要采集足够多的交互序列,就可以借助经典形式化方法中的自动机学习,逆向推导出一个显式的、紧凑的状态转换系统。
在 ATLAS 的表征体系中,研究团队选用了带标签马尔可夫链。马尔可夫链天然适合刻画包含不确定性和序列依赖的随机决策过程,不仅能直观展现行为的高频循环、决策分叉与终止路径,还能完美兼容概率模型检验(Probabilistic Model Checking)等成熟的形式化验证工具,为后续的安全监控、死循环阻断和策略对比铺平了道路。
语义降维与自动机学习:ATLAS 的两阶段管线
直接用原始交互文本训练状态机是不切实际的。Agent 在终端执行的 Bash 脚本千变万化,系统返回的标准输出和错误堆栈更是充斥着动态路径、内存地址和随机哈希值。如果直接把这些原始字符串作为状态转移的触发条件,状态空间瞬间就会爆炸,学习算法根本无法收敛出有价值的结构。
为了攻克这一瓶颈,ATLAS 设计了一套高度解耦的两阶段管线,由前端的“LLM 引导抽象”(LLM-Guided Abstraction)与后端的“概率自动机学习”(Automata Learning)串联而成。
在第一阶段,ATLAS 引入大语言模型作为语义降维器。当 Agent 与外部环境发生一次动作交互时,系统会截获具体的命令输入和环境返回的原始观察。随后,降维 LLM 根据上下文语境,将高维的物理操作投射到一个紧凑的离散符号字母表(Symbolic Alphabet)中。例如,Agent 输入命令 cat /etc/passwd,并得到了一串包含系统用户配置的文本,LLM 抽象层会将其转化为格式规范的元组:动作标签为 file read (/etc/passwd),而观测标签则被抽象为 INFO_FILE;如果 Agent 执行了 sudo -l 并发现了无密码执行特权,对应的标签则会沉淀为 cmd.exec (sudo -l) 与 EXPLOITABLE_SUDO。
值得注意的是,在完成轨迹抽象的同时,ATLAS 还会伴随维护一张“具体化映射表”(Concretization Mappings),记录每一个抽象动作分类下最常见的高频具体命令。这样既保证了状态机符号层的高度精炼,又保留了未来重新将抽象策略下发落地为具体命令的锚定能力。在整条轨迹结束时,环境的最终结果会被打上成功或失败的终止标签。
进入第二阶段后,这些经过标准化符号清洗的行为序列被送入自动机学习引擎。ATLAS 采用了主动/被动自动机学习框架 AALpy 中经典的 Alergia 算法。Alergia 算法能够从离散的事件序列前缀树(Prefix Tree Acceptor)出发,利用统计假设检验判定不同节点之间的行为分布是否在概率上等价。如果两个状态在后续发射转移概率上没有显著统计差异,算法就会执行状态合并操作。
最终,混乱庞杂的多轮执行轨迹被压缩坍缩为一个仅包含个位数或数十个状态的显式马尔可夫链。在这个模型中,每一个状态 $q_i$ 代表一个潜在的行为情境(Latent Behavioral State),有向边则清晰标明了动作跳转概率以及伴随的观察结果。这使得原本隐匿在神经网络权重内部的策略,变成了一张连形式化验证工具和普通软件工程师都能看懂的有向概率图。
黑盒现形:渗透测试中的非理性行为与死循环
为了检验这套管线的实战威力,研究人员构建了一个以自动化网络渗透测试为核心的真实案例研究。渗透测试具有强序列性、强非对称探索性以及高度局部可观测的特征,是检验 Agent 复杂决策水平的终极试验场之一。
实验基于开源渗透框架 HackingBuddyGPT,选取了包含 12 个真实易受攻击环境的 Linux 靶机集合,并让参数规模达 284B 的 DeepSeek V4 Flash 充当攻击 Agent,在 20 轮步数限制内独立尝试获取 Root 权限。
当 ATLAS 将 Agent 在这些靶机上跑出的多轮轨迹压缩成马尔可夫链后,很多仅凭单次交互肉眼难以察觉的系统级现象立刻浮出水面。
在一个典型的提权场景中,状态机暴露了 Agent 一系列让人啼笑皆非但极为真实的“低效策略”。从初始状态 $q_0$ 出发,Agent 有 60% 的概率会执行 id 命令发现当前用户身份(状态 $q_1$),随后它会尝试去探测系统的 sudo -l 特权列表。一旦观察到系统存在可被利用的 Sudo 免密配置(状态 $q_2$),理性的攻击者理应立刻通过特权命令提升至 Root 用户。
然而状态机的概率转移清楚地记录到:Agent 此时竟有高达 70% 的概率会莫名其妙地执行一次多余的 sudo id 操作,转移到状态 $q_7$;只有 30% 的概率会直接执行利用脚本 sudo -i 完成权限飞跃。这表明,哪怕是顶尖的开源基座模型,在面对已经暴露的漏洞事实时,依然存在严重的过度确认偏置与低效行为惯性。
更重要的是,状态机精准捕获了失败循环(Failure Loops)。当 Agent 在探索过程中读到某些不符合预期的用户配置信息时,有相当比例的路径会转移到一个发射非法畸形命令(Malformed Commands)的陷阱状态,并在该状态与常规重试之间形成概率死循环。如果没有显式状态机的全局统计,人工巡检很容易将这种偶发故障归咎于单次提示词扰动,而无法意识到这是模型在特定观测反馈下形成的系统性策略盲区。
符号化蒸馏:从 284B 旗舰到 14B 端侧模型的策略平移
如果 ATLAS 仅仅能画出状态图,那它充其量是一个高级的可视化调试工具。这项工作最令人振奋的突破在于,作者证明了这些从前沿大模型轨迹中逆向出来的状态机,能够作为一种高密度、纯符号化的认知先验,无缝迁移并指导轻量化小模型完成复杂任务。
当前端侧部署的一大痛点,是参数量较小的模型(如 8B、14B)缺乏长程自主规划能力。在没有任何先验线索的黑盒渗透测试中,让一个小模型单打独斗去破解一台配置复杂的 Linux 靶机,几乎毫无胜算。传统解决方式是收集几十万条专家轨迹进行监督微调(SFT)或强化学习(RL),成本高昂且泛化脆弱。
ATLAS 提供了一种截然不同的“符号化知识迁移”(Symbolic Knowledge Transfer)思路。研究团队让 284B 的前沿模型充当“知识提炼者”,先在靶机上运行并由 ATLAS 生成对应的马尔可夫链;接着,系统将这个马尔可夫链转化为紧凑的“策略摘要”(Strategy Summary),作为动态系统提示注入到体积极小、可以在消费级显卡上低成本运行的轻量执行模型中(如 ministral-14b 和 ministral-8b)。
实验设计对比了四种不同的迁移模式,从完全静态的高频动作提示,到基于马尔可夫链动态判断当前所处状态并分步给予微型提示。实验结果展现出了惊人的效能反差:
在完全没有状态机指导的基线条件下,紧凑型模型在面对复杂的系统提权任务时几乎全军覆没,陷入漫无目的的命令乱试中。然而,一旦引入了从强模型状态机中提炼的策略指引,ministral-14b 模型的整体任务攻克成功率直接跃升至 50%。
这个数据的含金量极高。14B 参数的模型并未在底层权重上吸收强模型的任何 Token 级概率分布,它仅仅是拿到了一份来自马尔可夫链的高阶导航图:知道在当前观测下应该优先做哪些抽象动作,并结合 ATLAS 伴随记录的具体化命令字典,精准避开了前期海量的盲目试错。这种“强模型生成轨迹 $\to$ 形式化提取状态机 $\to$ 符号化指引弱模型”的范式,向行业展示了一种摆脱暴力堆算力微调、实现极低成本策略蒸馏的可行方案。
过滤无关探索:模型切片与状态精炼
面对更具挑战性的渗透场景,原始状态机往往会面临探索噪声的干扰。渗透测试天然包含庞大的前置侦察阶段(Reconnaissance),例如遍历主目录、读取各种无关配置文件、探测网络接口等。这些操作耗费了大量交互轮数,使得自动机合并出来的马尔可夫链动辄膨胀到数十个状态,淹没了真正导致任务成功的核心线索。
为了让行为模型真正服务于人类审查与策略总结,ATLAS 借鉴了程序分析中的“切片”(Program Slicing)思想,提出了面向特定观测目标的模型精简方案。
研究团队主要展示了两种精简手段:其一是回溯反向切片,只保留所有能够以非零概率到达最终 success 标记节点的转移路径,强行剪枝所有不可达或纯属失败死胡同的分支;其二是基于强连通分量(Strongly Connected Components, SCC)的状态坍缩。在状态图中,那些由各种发散性扫描、目录枚举构成的复杂跳转环,往往属于信息搜集阶段的内部振荡,可以直接被聚类浓缩为一个复合宏状态节点。
在针对一个编号为 Scenario 13 的典型漏洞靶机分析中,原始学习出的马尔可夫链拥有多达 41 个交错纵横的状态,肉眼审查极其费力。研究团队通过强连通分量精简技术,将大量处于侦察循环中的状态整合成两个核心 SCC 模块(一个包含 2 个状态,另一个包含 11 个探索状态),整张图瞬间缩减为一个仅包含 7 个高层状态的极简链条。
精简后的模型将破局的核心骨架赤裸裸地呈现出来:初始化之后进入常规信息搜集,随后直奔高危 SUID 二进制文件扫描(状态 $q_9$),在越过系统探索环后,关键动作锁定在精准读取管理员留下的便签文件 admin_on_vac.txt(状态 $q_{33}$),进而获取泄露凭证并完成提权(状态 $q_{30}$)。借助模型切片,安全审计员在数秒钟之内便能确诊 Agent 是否掌握了该环境的漏洞精髓,彻底终结了在几千行命令行日志里“大海捞针”的时代。
从经验主义黑盒到可信工程制品
长期以来,围绕大模型 Agent 的构建与优化充斥着浓重的试错主义色彩。系统改版或者提示词调整后,开发者往往只能靠运行几次 Benchmark、对比一下成功率数字的涨落来碰运气。至于 Agent 的内在策略是变得更加稳健,还是在某些隐蔽情境下衍生出了更致命的死循环,完全处于未知状态。
ATLAS 最大的理论与工程价值,正在于它在混乱不可控的神经网络黑盒与严谨可信的经典软件工程之间,架起了一座形式化桥梁。正如论文作者所总结的,当 Agent 的运行轨迹可以被确定性地反向推导为显式有限状态机时,这些自动机就变成了可版本化、可追踪、可比对的标准“软件工程制品”。
未来,工程团队完全可以像对待传统代码分支一样对待 Agent 策略:在发布新的 Agent 版本时,对比前后两个状态机在同一测试集下的拓扑差异;在运行时利用状态机作为安全看门狗(Runtime Monitor),一旦检测到 Agent 转移到了未定义的未知状态或高危状态,立即触发熔断机制。
从最初的自动化测试、网络攻防,到未来的自主代码编写与自动化科研,当 AI Agent 的步子迈得越来越大、行动越来越具自主性时,人类对“可解释”与“可控制”的渴望必将压倒一切盲目的能力狂欢。ATLAS 表明,形式化方法不仅没有在大模型时代过时,反而是驯服这个充满不确定性的智能体黑盒不可或缺的解药。