大家读完觉得有帮助记得关注和点赞!!!
摘要
威胁建模对于安全软件开发至关重要,然而对云原生架构的手动分析速度缓慢且需要稀缺的安全专业知识。我们提出ThreatForest,一个多智能体系统,能够从源代码仓库生成结构化的攻击树,将攻击步骤映射到来自可插拔框架集(MITRE ATT&CK、CAPEC和云特定威胁矩阵)的 adversary tactics, techniques, and procedures (TTPs),并综合生成可操作的缓解措施。ThreatForest将威胁建模分解为一个多阶段智能体流水线——仓库分析、上下文精化、威胁生成、并行攻击树构建与TTP映射及缓解措施综合、报告生成——并将其编排为一个有向图,包含确定性验证门、有限重试以及三个人机协同验证点。一个领域专用的句子转换器通过余弦相似度将每个攻击步骤映射到候选技术;我们凭经验证明,这个嵌入阶段——而非周围的流水线——是主导的准确性瓶颈。我们在七个应用领域上对ThreatForest进行评估,使用十六维评分标准,由一个独立的LLM评分员小组打分,并辅以对抗性验证通行和专家人工审查。评分员测量的质量在威胁陈述、攻击树和缓解措施上达到0.63–0.68(0–1尺度),但纯嵌入的TTP映射仅为0.29——这一差距在所有七个领域稳定存在,从而隔离了绑定约束。在同一模型上的受控单调用基线使映射的合理性提高了一倍以上,将限制定位在嵌入编码器而非多智能体设计上。据我们所知,ThreatForest是第一个能够将代码仓库转化为TTP映射的攻击树并附带基于证据的缓解措施的端到端系统,且适用于多种adversary框架,并附带一个可复用的评估框架来对此类系统进行基准测试。
关键词:威胁建模 · 攻击树 · MITRE ATT&CK · 多智能体系统 · 大语言模型 · 云安全
1 引言
威胁建模是安全软件开发的基石(shostack2014threat),要求从业者系统地识别威胁、分析攻击向量并提出缓解措施。随着云原生架构日益复杂——一个单一系统可能跨越数十种托管服务,每种服务具有不同的访问控制模型、加密配置和网络边界——手动威胁建模变得越来越不切实际。行业调查一致报告称,组织要么完全跳过威胁建模,要么仅对最关键的系统进行威胁建模,从而留下大量攻击面未分析(sotm2024)。
现有工具解决了该问题的碎片。图表驱动工具如OWASP Threat Dragon(owasp-threatdragon)提供结构化的图表绘制,但自动化了很少的核心推理。AWS Threat Composer(aws-threatcomposer)提供引导式的威胁陈述编写,但需要人工输入每个威胁。近期工作探索了使用大语言模型(LLM)进行威胁识别(threatmodeling-llm2024; canllmsthreatmodel2025),但这些方法通常止步于威胁枚举——它们不生成结构化的攻击树,不映射到MITRE ATT&CK(strom2018mitre)等标准化框架,也不产生可操作的缓解措施。
攻击树由schneier1999attack提出,为建模 adversary 如何通过子目标和具体技术的层次结构达成目标提供了形式化结构。当与MITRE ATT&CK技术映射结合时,攻击树变得可直接操作:每个叶节点映射到已知的adversary行为,并附带文档化的检测和缓解策略。然而,手动构建这些丰富的攻击树需要目标系统和威胁领域的深厚专业知识,而现有工具在严谨性(手动专家工作)和覆盖面(在每个系统、每个版本上运行)之间强制权衡。
1.1 问题陈述与范围
我们关注云原生应用从威胁识别到可操作防御指导之间的差距。具体而言,给定一个可部署应用的源代码仓库,我们的目标是自动生成:(i)一组基于应用特定技术栈和数据流的高层威胁;(ii)针对每个威胁,一个结构化的攻击树,将adversary的目标分解为AND/OR子目标和具体叶技术;(iii)从每个叶技术到来自可配置adversary框架(我们将MITRE ATT&CK、CAPEC和云特定矩阵视为可互换后端)的已知TTP的映射;以及(iv)针对每个TTP,一个针对该应用自身组件而非通用建议的定制缓解措施。
威胁模型。ThreatForest旨在以两种协作姿态与用户协同工作。在咨询姿态下,系统在用户拥有的仓库上自主运行,向下游 SME 审查揭示威胁和建议缓解措施。在交互姿态下,系统在三个人机协同门(§3.3)处暂停,SME 在中间产物传播之前验证或纠正它们。我们假设用户对目标仓库有读权限并信任LLM提供商;我们不假设用户是安全专家。针对建模系统的 adversary 是外部的;分析明确枚举了它们的能力,但ThreatForest本身不是防御运行时控制。
范围外。运行时检测与响应、自动补丁和攻击性操作(例如自主渗透测试)明确排除在范围外。ThreatForest产生的是输入到现有安全审查和SDL流程中的设计时产物;它不取代它们。我们也不声称所生成的攻击树具有形式可靠性:该系统是一个LLM流水线,其输出在生产使用中需要SME审查,我们的评估框架(§4)正是围绕该工作流设计的。
1.2 贡献
我们提出ThreatForest,一个多智能体系统,能够自动化从源代码仓库到TTP映射攻击树并附带基于证据的缓解措施的威胁建模流水线,支持可插拔的adversary框架。我们的贡献包括:
-
端到端多智能体流水线(§3)。一个十阶段智能体流水线,带有人机协同验证门,以代码仓库为输入,生成结构化攻击树、TTP映射和缓解措施,编排为有向图,具有确定性验证门和有限重试语义。流水线明确将LLM智能体与确定性验证器分离,并使用基于文件的状态传递,使每个中间产物都可检查和可恢复。
-
框架无关的TTP映射与准确性瓶颈隔离(§3.5,§5.4)。一种使用ATTACK-BERT(一个领域专用句子转换器,attackbert)的检索方法,通过余弦相似度将LLM生成的攻击步骤映射到TTP,保留top-K候选用于下游LLM或SME驱动的精化,且框架可交换而无需重新训练。我们的核心实证发现是:这个嵌入阶段——而非威胁生成、树构建或缓解综合——是主导的准确性瓶颈;在所有七个领域中,评分员小组仅判断29%的ATTACK-BERT映射为合理匹配,而通用编码器恢复已知正确技术的频率远低于ATTACK-BERT。将瓶颈隔离到单个可替换组件,指明了未来工作的投资方向;作为试点,我们展示了一个基于我们的评分标签微调的交叉编码器重排序器,将映射判断的F1从0.36提升到0.51。
-
带有可验证评分协议的评估框架(§4)。一个涵盖四个能力(威胁陈述、攻击树、TTP映射、缓解措施)的16维评分标准,通过基于Langfuse的标注队列(langfuse2024)布线,捕获每次智能体交互。我们用具体评分协议实例化该评分标准——一个独立LLM评分员小组加一个对抗性验证器,并有人机协同SME裁决——对所有七个领域的每个产物进行评分(实质性评分员间一致性:序数配对0.93,TTP Cohen's κ=0.78),产生的是实测而非假设的质量数值,并为未来系统提供一个可复现的基准基底。
-
跨领域实证研究与单调用基线(§5,§5.7)。对七个示例应用的评估,涵盖IoT制造、身份联合、生成式AI、医疗分析、IAM治理、会议转录和旅行预订。在所有领域中,系统平均生成12个威胁,每个应用240个攻击步骤,映射到89个独特技术,在七个领域中的五个覆盖全部ATT&CK战术,评分员测量的威胁陈述、攻击树和缓解措施质量达到0.63–0.68,而纯嵌入TTP映射仅为0.29——这一差距在所有领域中稳定。在同一模型上的受控整体式单调用基线分离了解构带来的收益:流水线在覆盖面和结构统一性上明显胜出,而单调用在逐项质量上相当或超越,并且很能说明问题的是,TTP映射合理性提高了一倍以上(0.63对0.29)——确认瓶颈是嵌入编码器而非架构本身。
2 相关工作
我们将先前工作组织为四个领域:经典威胁建模工具与方法论、基于LLM的威胁分析与攻击性推理、自动化MITRE ATT&CK映射,以及领域专用编码器和多智能体系统的支撑基础设施。ThreatForest位于四者的交汇处:它继承了经典威胁建模的结构化输出纪律,利用LLM智能体处理先前需要SME专业知识的生成步骤,使用基于嵌入的检索将生成文本桥接到标准化技术目录,并在图编排框架之上实现。
2.1 威胁建模工具与方法论
STRIDE(shostack2014threat)和攻击树(schneier1999attack)为系统性威胁分析提供了方法论基础:STRIDE在数据流图上枚举威胁类别(欺骗、篡改、否认、信息泄露、拒绝服务、权限提升),而攻击树将adversary目标分解为AND/OR子目标。两者都早于云原生部署的普及,并假设安全专家为每个系统手动构建模型。该假设的成本推动了一代工具辅助方法。
图表驱动的威胁建模工具——其中OWASP Threat Dragon(owasp-threatdragon)是一个代表性的开源示例——提供拖放式数据流图绘制,并带有基于规则的威胁建议:工具根据元素类型和信任边界交叉点浮现出固定的STRIDE威胁。AWS Threat Composer(aws-threatcomposer)为单个威胁陈述提供引导式编写工作流。这些工具都不以源代码为输入,都不生成超出平面威胁列表的攻击树,也都不将输出映射到标准化技术框架。它们是有用的,但要求从业者手动进行底层威胁推理。
ThreatForest被定位为补充而非替代:从业者可将其输出输入到这些工具支持的同款审查流程中,但生成步骤是自动化的,输出被结构化以供下游使用。
2.2 基于LLM的威胁分析与攻击性推理
近期一系列工作将LLM直接应用于安全任务。ThreatModeling-LLM(threatmodeling-llm2024)针对银行系统微调模型进行威胁识别,而canllmsthreatmodel2025系统地评估前沿LLM是否能在真实云基础设施中识别威胁,发现性能随提示策略的不同而有显著差异。这些工作仅关注威胁识别步骤——它们止步于ThreatForest继续的地方,不生成攻击树、TTP映射或缓解措施。
一个平行方向评估LLM在攻击性角色中的表现。PentestGPT(deng2024pentestgpt)和Happe与Cito(happe2023getting)将LLM视为与目标系统交互的自主渗透测试器,而Cybench(zhang2024cybench)提供了CTF风格的网络推理能力基准,SecureFalcon(ferrag2023securefalcon)探索LLM对源代码进行漏洞推理。尽管这些系统共享LLM智能体基底,但它们的目标不同:它们在实时目标上锻炼模型的攻击性能力,而ThreatForest为防御用途生成设计时产物。结构有效性要求(每个输出JSON必须符合模式;每个叶节点必须引用真实组件)和HITL门设计都针对防御场景量身定制。
2.3 自动化MITRE ATT&CK映射
将非结构化安全文本映射到MITRE ATT&CK已被广泛研究,几乎总是作为针对CTI报告或CVE描述的分类问题。CVE2ATT&CK(cve2attack2022)在CVE摘要上微调BERT进行技术分类,SMET(smet2023)使用孪生网络嵌入完成相同任务。modernbert2025将ModernBERT与BERTopic结合以浮现战术级聚类,而更早的工作——TTPDrill(husari2017ttpdrill)和rcATT(legoy2020rcatt)——使用基于规则和浅层NLP技术从CTI报告中提取技术提及。xiong2022cyberkg构建了以ATT&CK为风险分析知识骨干的基于图的威胁模型。
这些工作共享一个对ThreatForest不成立的假设:它们的输入是现有安全文本(CVE摘要、事件报告),其中底层技术由先前的报告奠定基础。ThreatForest映射由LLM生成的攻击树步骤,因此地面真值本身是不确定的,检索问题更难——我们不是对已知良好的描述进行分类,而是将模型假设的攻击步骤与结构化技术目录进行匹配。我们的结果(§5)证实,现成的编码器在这种情境下难以应对,并推动了我们描述为未来工作的专用威胁编码器微调。
2.4 领域专用编码器、多智能体系统与编排
近年来,用于网络安全的领域专用文本编码器大量涌现。SecureBERT(aghaei2023securebert)将BERT适应于网络安全文本,而ATTACK-BERT(attackbert)用攻击行动嵌入扩展了句子转换器(reimers2019sbert);我们使用后者作为检索骨干(§3.5)。除了分类和检索,近期工作已探索多智能体编排作为复杂LLM应用的基底:开源框架如Strands Agents(strands2025)和LangGraph(langgraph2024)提供基于图的多个智能体协调,具有显式重试和验证语义,建立在提示和工具使用技术如思维链(wei2022cot)、ReAct(yao2023react)和Toolformer(schick2023toolformer)之上。
多智能体系统已被应用于代码生成、自动推理,以及近来用于数据分析和软件工程,但其在安全威胁建模中的使用——其中输出必须在技术上准确且在结构上有效以供下游工具消费——在很大程度上仍未被探索。据我们所知,ThreatForest是第一个用于此任务的端到端多智能体系统,它在单一流水线中结合了可插拔TTP框架映射、确定性验证门和人机协同SME审查。
最后,我们的评估建立在LLM-as-judge范式之上,即一个强模型代替昂贵的人工标注对另一个模型的输出进行评分(zheng2023judging; gu2024surveyjudge)。该文献也记录了我们所针对的失败模式——评分员倾向于宽容和自我偏好偏差,与人类评分员只有中等一致性(gu2024surveyjudge)。我们通过多评分员小组、只能降低分数的对抗性验证器以及跨模型校准检查(§5)来缓解这些问题;校准实际上表明我们的对抗性小组比单次评分员更为保守,直接抵消了该范式已知的宽容偏差。
3 系统架构
ThreatForest将威胁建模分解为十个智能体阶段加上验证门,每个阶段实现为具有工具访问权限的自主智能体,编排为有向图。图1显示了完整流水线。
贡献范围。ThreatForest所依赖的个别技术——具有工具使用的LLM智能体、句子转换器检索、基于图的多智能体编排、确定性模式验证验证器、人机协同中断门——在先前工作中均已确立。我们不声称任何单一组件具有新颖性。贡献在于组合:据我们所知,没有先前的系统将这些组件组合成一个端到端流水线,以源代码仓库为输入,并生成TTP映射的攻击树、基于证据的缓解措施和概率注释的可达路径作为单一产物(第5.9节比较了与代表性工具的能力覆盖范围)。我们在经验上主张三点:(i)这种组合在七个异构云原生架构上产生结构有效的输出(第5节);(ii)基于嵌入的TTP检索阶段是主导的准确性瓶颈,其上限由编码器选择而非任何其他流水线参数决定(第5.4节);(iii)由此产生的评估框架可作为未来系统可测量的基线。

图1:ThreatForest流水线。圆角框为LLM智能体;菱形为确定性验证器;阴影框为人机协同(HITL)审查门;黄色框为写入共享 .threatforest/state/ 目录的JSON状态文件。红色虚线箭头表示验证失败时的重试边。扫描器之后,扫描器审查门和访谈智能体精化项目上下文,然后进行威胁生成;威胁审查门在并行扇出之前对威胁进行分流。树→TTP→缓解子流水线(紫色区域)对每个威胁并行运行。确定性概率阶段在报告生成器之前注释每个步骤。嵌入模型和ATT&CK STIX知识图谱输入TTP阶段。
3.1 流水线概述与图编排
流水线实现为Strands图(strands2025):节点是智能体执行器,边携带条件谓词。每个智能体从共享状态目录(.threatforest/state/)读取其前驱的输出,并写入结构化JSON,提供可检查的中间输出、故障后可恢复性以及并行安全执行。图定义了重试边——当验证器拒绝输出时,执行流回退到生成智能体进行第二次尝试。为防止无限重试,我们对总节点执行施加预算 B ≥ |V| + k · |{retriable stages}|,其中 |V| 是快乐路径节点数,k 是每阶段最大重试次数。在我们的配置中,|V|=12,k=2,四个阶段带有重试边(扫描器、威胁、并行、报告),得到 B ≥ 20;我们将运行时上限设为 B=32 以吸收罕见的多阶段重试链。任何耗尽预算的执行都会以部分结果终止而非无限循环。
3.2 扫描器与威胁生成
扫描器智能体。扫描器接收仓库路径并使用两个工具:一个结构分析器,提取项目的文件树、依赖清单和基础设施即代码定义;以及一个限制在仓库目录内的沙箱文件读取器。智能体生成包含以下内容的项目上下文:云提供商、技术栈、服务、认证机制、数据流和部署模型。确定性验证器检查所有必需字段存在且非空。
威胁智能体。威胁智能体接收项目上下文并按以下模式生成结构化威胁陈述:
每个威胁包括标题、描述、优先级和受影响的组件。验证器验证JSON结构,并确保每个威胁引用扫描器上下文中识别的组件。
3.3 人机协同验证门
三个交互式门允许主题专家(SME)在下游传播之前纠正流水线输出。每个门读取上游状态文件,向UI发出结构化中断,并应用用户响应:确定性编辑直接合并到状态文件中,而自由文本反馈重新调用上游LLM智能体。
扫描器审查呈现推断的项目上下文(云提供商、技术栈、服务、认证机制、数据敏感性、合规性)以供确认或JSON编辑。
访谈智能体将固定的开场问题(部署阶段)与一个工具配备的LLM智能体配对,该智能体通过 ask_user 工具提出有针对性的追问,并用置信度分数和摘要丰富上下文;用户可通过 back 哨兵循环回扫描器审查。
威胁审查呈现每个威胁,附四个引导性问题(合理性、优先级排序、误报、遗漏威胁);结构化编辑(优先级更改、移除、重新排序)确定性应用于 threats.json,而自由文本反馈重新调用威胁智能体。该门循环直到用户发送 proceed。
这些门是SME知识进入流水线的主要机制,并为评估基础设施(§4)提供高质量信号。
3.4 攻击树生成
攻击树并行生成:每个威胁一个子流水线,全部并发执行。每个树智能体接收扫描器上下文和单个威胁,生成一个层次树,其根表示adversary的目标,中间节点将其分解为AND/OR子目标,叶节点为具体攻击技术。形式上,威胁 θ 的攻击树是一棵有根有向树 𝒯θ=(S, E, r),包含步骤 S={s1,…,sn},父子边 E⊆S×S,根 r。每个步骤 si=(id, title, description, parent_id, is_leaf, category),其中 category∈{fact, action, detection, gate} 对其角色进行分类(前提条件、adversary操作、可观测指标、AND/OR门)。我们通过深度——最长根到叶路径——来衡量树的复杂性:

攻击路径集合 𝒫θ = {path(r, ℓ) | ℓ∈leaves(S)} 枚举完整的攻击场景;跨威胁的并集 ⋃θ 𝒫θ 定义了建模的攻击面。对于 N 个威胁,并行扇出产生 N 个独立的子流水线(树→TTP→缓解),提供高达 N 倍的加速。
3.5 通过嵌入检索进行TTP映射
我们通过基于嵌入的检索将攻击树步骤映射到MITRE ATT&CK技术(mitre-attack)。我们对多个通用和领域专用句子转换器进行了基准测试——E5-large-v2(wang2022e5)、all-mpnet-base-v2(mpnet2021)、BGE-large-en-v1.5(xiao2024bge)和Qwen3-Embedding-0.6B(qwen3embedding2025)——并选择ATTACK-BERT(attackbert),因其具有竞争力的准确性和较小的占用空间(768维嵌入,快速CPU推理)。所有五个模型均在宽松的开源许可(Apache-2.0或MIT)下发布,我们在此根据这些许可条款使用它们。给定一个具有 n 个步骤的攻击树和包含 M 个技术描述的ATT&CK矩阵,我们编码每个步骤描述 di,并测量与每个技术 tj 的余弦相似度:

其中 e(·): text→ℝ⁷⁶⁸ 是ATTACK-BERT嵌入。对每个步骤,我们检索 sim≥τ 的 top-K 候选,并选择 top-1 作为最终映射;我们凭经验设置 K=3,τ=0.3。没有候选超过 τ 的步骤不获得映射,避免强制低置信度分配。剩余的 K 个候选与每个映射一起保留,以支持通过LLM审查或SME验证进行的下游精化(§4)。
3.6 缓解措施与验证
缓解智能体。对于每个威胁 θi,缓解智能体以三个输入为条件——扫描器上下文 𝒞、攻击树 𝒯θi 和 TTP映射 ℳθi={(sj, tj)}——并为每个映射的独特技术生成一个缓解措施:mitigate(θi) = f_LLM(𝒞, 𝒯θi, ℳθi) → {m1, …, mp}。每个 mk 是一个结构化记录(technique_id, guidance, priority, evidence, type),在工具调用时由Pydantic模式验证。type 字段对修复紧急性进行分类(quick win, short-term, medium-term, long-term, monitoring),evidence 将每个缓解措施链接回激励它的攻击步骤和技术。以 𝒞 为条件将缓解措施锚定在具体基础设施上而非通用建议;以 𝒯θi 为条件支持对多步链的推理;以 ℳθi 为条件支持覆盖验证——每个威胁的验证器确认每个映射的技术都有对应的缓解措施。
验证器模式。流水线中的每个阶段都包含一个确定性验证器——一个纯函数(无LLM),验证输出的结构属性:
-
扫描器验证器:所有必需上下文字段存在且非空。
-
威胁验证器:有效的JSON,每个威胁有必需字段,引用有效组件。
-
流水线验证器:攻击树具有有效的父子关系,TTP映射引用现有步骤,缓解措施引用现有技术。
-
每个威胁的缓解覆盖:在并行子流水线内,每个威胁独立检查缓解覆盖。结构失败(缺失字段、无效引用)硬失败并触发重试;覆盖缺口作为软警告发出,避免因小遗漏而进行昂贵的全流水线重试。
-
报告验证器:输出文件存在且包含预期章节。
验证失败时,图的重试边将执行路由回生成智能体。此模式提供质量门,而无需基于LLM验证的成本或非确定性。
3.7 概率评分
在并行子流水线和报告生成器之间,一个纯Python概率阶段为每个攻击步骤注释成功概率。来自步骤属性(类别、树深度、TTP映射存在性)的每步先验通过由TTP相似度分数、缓解优先级、可行性说明和技术栈不匹配检测器驱动的贝叶斯后验更新,后者在步骤引用扫描器上下文中不存在的技术时降低概率。事实类别步骤(前提条件)固定为1.0。然后马尔可夫汇总沿树边传播每步概率,以产生可达概率——给定AND/OR门语义下adversary到达每个节点的似然性。该阶段是确定性和幂等的,因此不带有重试边。
报告生成器。最后阶段是确定性的(无LLM):它将所有状态文件编译为结构化Markdown报告和交互式HTML仪表盘,带有攻击树可视化。概率注释的树首先展示最高可达路径。
4 评估方法论
我们设计了一个评估框架,结合自动化结构指标与人类专家评估,并由捕获每次智能体交互的可观测性基础设施支撑。实证研究(第5节)中使用的七个应用领域被故意选择为涵盖常见的云原生架构原型——IoT制造、身份联合、生成式AI、医疗分析、IAM治理、会议转录和旅行预订——以便跨领域数字作为外部有效性检验而非单领域概念验证。
4.1 评分维度
我们定义了涵盖四个能力的16个评分维度(表1),每个使用五点评分制 𝒞 = {excellent, good, acceptable, poor, unacceptable},映射到数值 {1.0, 0.75, 0.5, 0.25, 0.0}。TTP映射使用二元准确度尺度,其中SME(或LLM评分员)将每个映射标记为good(1)或bad(0)。
表1:ThreatForest评估的评分维度。除非注明,均使用五点评分制。
| 能力 | 维度 | 描述 |
|---|---|---|
| 威胁陈述 | 整体质量 | 对生成威胁的整体评估 |
|
| 上下文相关性 | 与应用上下文的匹配度 |
|
| 完整性 | 威胁类别的覆盖度 |
|
| 技术准确性 | 技术正确性 |
|
| 幻觉检测 | 无虚构内容 |
| 攻击树 | 整体质量 | 对攻击树的整体评估 |
|
| 结构质量 | 深度、分支、组织 |
|
| 技术现实性 | 攻击技术的可行性 |
|
| 攻击路径逻辑 | 从访问到影响的逻辑递进 |
|
| 完整性 | 攻击向量和阶段的覆盖度 |
|
| 可操作性 | 对防御者的有用性 |
| TTP映射 | 映射准确性 | MITRE ATT&CK技术映射质量* |
| 缓解措施 | 可操作性 | 具体、可实施的步骤 |
|
| 特异性 | 针对识别出的威胁和技术栈定制 |
|
| 覆盖度 | 涵盖所有识别出的攻击路径 |
|
| 技术准确性 | 推荐控制的正确性 |
-
二元准确性:每个映射被判断为good(1)或bad(0)。
4.2 追踪与审查基础设施
ThreatForest通过Langfuse(langfuse2024)捕获两种互补的追踪类型:由Strands SDK(strands2025)为每个LLM调用、工具调用和事件循环周期自动发出的OTEL追踪,以及在每个子图边界推送的带有干净输入/输出JSON的注释追踪。注释追踪被路由到每个能力的Langfuse队列,审查员在那里独立地为每个维度分配分类分数;单个TTP映射也作为数据集项推送,以构建支持precision@K评估和微调的地面真值语料库。
4.3 评分协议:LLM评分员小组与SME验证
手动对研究中的每个产物进行评分成本高昂,因此我们采用两阶段协议,结合自动化小组与人机协同验证。对于每个产物(威胁陈述、攻击树、TTP映射、缓解措施),一个由三个独立大语言模型评分员智能体组成的小组在表1的每个适用维度上分配分类标签,以流水线使用的相同扫描器上下文为条件,以便上下文相关的维度(相关性、特异性)可被评判。这三个评分员被故意赋予不同的审查焦点——一个独立批判性地评分,一个被指示惩罚非基于应用声明栈的内容,一个关注完整性和幻觉——以多样化故障检测而非仅仅复制单一视角。一个对抗性验证器智能体随后针对产物审计三个评分员的输出:它从每个维度的中位数开始,只能确认或降低分数,降低时需引用具体缺陷(通用或套话内容、技术错误、虚构组件或缺失覆盖;对于TTP映射,当分配的技术不是攻击步骤的合理匹配时,它标记为bad)。协调后的标签是小组的输出。
该小组是初筛评估者。其协调标签和每个条目的理由随后被路由到Langfuse注释队列,由人类SME裁决:SME审查小组的判断和引用的缺陷,并确认或纠正它们。我们报告小组派生分数作为主要定量信号,因为它们覆盖研究中的每个产物;人类SME通过是同一注释队列上的确认性审查,而非报告数字的先决条件(报告数字是小组测量结果,明确不是辅助人工注释)。为量化小组的可靠性,我们在§5中报告两项检查:原始(验证器前)评分员标签上的评分员间一致性(序数维度的平均配对一致性;二元TTP维度的Cohen's κ和百分比一致性),以及跨模型校准,其中不同LLM家族上的独立评分员对分层样本进行盲测重新评分。
4.4 自动化结构指标
我们自动从流水线输出中计算以下指标。令 𝒜={𝒯1,…,𝒯N} 表示一个应用的攻击树集合,ℳ={m1,…,mn} 为TTP映射集合,τ(mj) 为映射 mj 分配的技术。
树深度按公式1定义;我们报告跨树的平均值:D̄ = (1/N)∑_{i=1}^N depth(𝒯i)。
技术多样性衡量ATT&CK覆盖的广度:

其中 δ=1 表示所有映射都是独特的,δ→0 表示少量技术被大量重用。
阶段覆盖率衡量14个ATT&CK战术 Φ={φ1,…,φ14}(从侦察到影响)中被表示的比例。令 tactic(t) 返回与技术 t 关联的战术集合:

聚合质量分数。对于每个应用 a 和评分维度 d,令 q_{a,d}∈{0,0.25,0.5,0.75,1.0} 为分配分数。我们报告跨应用的均值和标准差:

5 结果
我们在7个涵盖不同云架构的示例应用上评估ThreatForest:IoT制造、身份联合、生成式AI、医疗分析、IAM治理、会议转录和旅行预订。所有实验使用通过Amazon Bedrock服务的Claude Sonnet 4.5(Anthropic),温度0,使用ATTACK-BERT(attackbert)针对MITRE ATT&CK STIX数据集(mitre-attack)进行TTP嵌入检索。
5.1 运行示例
在聚合数字之前,表2追踪了生成式AI聊天机器人应用的一个威胁端到端通过流水线,显示单次运行产生的联合产物,以及在一个叶节点上——本节其余部分量化的嵌入映射失败。
表2:GenAI Chatbot领域的一个威胁通过流水线的追踪(缩写)。TTP列显示ATTACK-BERT的top-1及小组判定:前提条件叶节点被错误映射到Serverless Execution(弱匹配,小组标记✗),而扫描和提取叶节点合理映射到Chat Messages(✓)——每个叶节点如抛硬币,产生0.29的聚合值。
威胁(TS002,优先级高):“具有DynamoDB IAM权限的恶意内部人员,或受损的Lambda执行角色,可以查询包含完整对话日志的聊天历史表,导致Bedrock Guardrails未编辑的PII被未授权访问,从而降低机密性并可能违反合规性。”
攻击树(根目标:通过内部IAM访问从DynamoDB聊天历史中窃取PII;8步,深度4):
S0 [事实] 内部人员持有DynamoDB的IAM权限
→ S1 枚举DynamoDB表
→ S3 扫描chat-history表 → S5 从记录中提取PII
→ S6 导出到外部存储
TTP映射(ATTACK-BERT top-1,小组判定):
S0 → T1648 Serverless Execution ✗(前提条件,非执行技术)
S3 → T1552.008 Chat Messages ✓(对日志扫描合理)
缓解措施(针对映射的技术):最小权限IAM角色,按Lambda作用域限定到特定表ARN,带有 aws:SourceVpce/aws:SourceIp 条件并启用IAM Access Analyzer——基于应用自身资源而非通用建议。
5.2 流水线输出摘要
表3总结了跨领域的流水线输出。
表3:跨应用领域的流水线输出摘要。
| 领域 | 威胁数 | 树数 | 步骤数 | TTP映射数 | 独特技术数 | 缓解措施数 |
|---|---|---|---|---|---|---|
| 自动制造 | 12 | 17 | 241 | 241 | 99 | 241 |
| 身份联合 | 12 | 12 | 228 | 228 | 73 | 228 |
| GenAI聊天机器人 | 12 | 9 | 116 | 116 | 47 | 116 |
| 医疗保健 | 12 | 14 | 270 | 269 | 84 | 269 |
| IAM身份中心 | 12 | 16 | 275 | 275 | 95 | 275 |
| 科学会议 | 12 | 19 | 333 | 333 | 131 | 333 |
| 旅行住宿 | 12 | 13 | 222 | 221 | 95 | 222 |
| 平均 | 12 | 14 | 241 | 240 | 89 | 241 |
在所有领域中,ThreatForest每个应用生成12个威胁,扩展为平均240个步骤的多步攻击树。每个步骤都获得MITRE ATT&CK映射(每个应用平均89个独特技术),每个映射产生一个带有修复类型(quick win, short/medium/long term, monitoring)的结构化缓解措施。
5.3 结构质量指标
表4:跨领域的结构质量指标。
| 领域 | 深度 | 步骤/树 | 多样性 | 阶段覆盖 |
|---|---|---|---|---|
| 自动制造 | 4.6 | 14.2 | 0.41 | 1.00 |
| 身份联合 | 5.3 | 19.0 | 0.32 | 1.00 |
| GenAI聊天机器人 | 4.6 | 12.9 | 0.41 | 0.93 |
| 医疗保健 | 4.6 | 19.3 | 0.31 | 0.93 |
| IAM身份中心 | 5.5 | 17.2 | 0.35 | 1.00 |
| 科学会议 | 5.5 | 17.5 | 0.39 | 1.00 |
| 旅行住宿 | 5.0 | 17.1 | 0.43 | 1.00 |
| 平均 | 5.0 | 16.7 | 0.37 | 0.98 |
攻击树展示一致的结构质量:平均深度5.0(范围4.6–5.5),每树16.7步。技术多样性平均0.37——约三分之一映射是独特的,其余反映了跨攻击路径的现实技术重用。阶段覆盖率(14个ATT&CK战术中被表示的比例)在7个应用中的5个达到1.00;GenAI聊天机器人和医疗保健得分为0.93,各自遗漏了其范围外的一个战术。
5.4 消融1:TTP映射的嵌入模型选择
本次消融分离了嵌入模型的贡献。我们保持流水线其余部分固定(相同的威胁陈述生成器、相同的攻击树生成器、相同的检索阈值 τ=0.3、相同的 top-K 截断、相同的MITRE ATT&CK STIX数据集),仅改变用于编码攻击树步骤和ATT&CK技术描述的句子转换器。我们报告§4.3评分员小组在7领域运行产生的全部1,683个映射上的二元映射准确性(good/bad)。表5总结了默认模型(ATTACK-BERT)的每个领域映射量、多样性和准确性。
表5:TTP映射分析。多样性 δ = 独特/总数。准确性 = 被评分员小组判断为合理匹配的比例(二元good/bad,§4.3)。
| 领域 | 映射数 | 独特技术 | δ | 准确性 |
|---|---|---|---|---|
| 自动制造 | 241 | 99 | 0.41 | 0.21 |
| 身份联合 | 228 | 73 | 0.32 | 0.31 |
| GenAI聊天机器人 | 116 | 47 | 0.41 | 0.44 |
| 医疗保健 | 269 | 84 | 0.31 | 0.23 |
| IAM身份中心 | 275 | 95 | 0.35 | 0.30 |
| 科学会议 | 333 | 131 | 0.39 | 0.20 |
| 旅行住宿 | 221 | 95 | 0.43 | 0.33 |
| 平均 | 240 | 89 | 0.37 | 0.29 |
使用ATTACK-BERT,流水线每个应用平均将240个步骤映射到89个独特技术(多样性 δ=0.37),而评分员小组在全部1,683个映射中仅判断28.9%为合理匹配。准确性因领域而异,从0.44(GenAI聊天机器人)和0.33(旅行住宿)到0.21(自动制造)和0.20(科学会议);仅有七个领域,我们将此范围视为提示性而非测试效应,但明显模式是攻击步骤映射到定义明确的凭证、访问和AI滥用技术的应用得分较高,而OT和分析密集型领域产生缺乏直接ATT&CK对应项的应用特定步骤。
编码器检索比较。为了在共同验证集上比较编码器而非每个编码器自身的top-1,我们取小组确认为正确(标签good)的457个(步骤,技术)对,并测量每个编码器在完整ATT&CK目录上检索时,该验证技术被排在第一(top-1)或前三(top-3)的频率(表6)。ATTACK-BERT在79.9%的情况下将验证技术排在首位,而通用编码器all-mpnet-base-v2(mpnet2021)、BGE-large-en-v1.5(xiao2024bge)和E5-large-v2(wang2022e5)为34–45%——这是支持领域专用选择的大而一致的差距。我们注意到一个选择限定:验证集来自ATTACK-BERT自身的正确映射,因此其绝对优势在构造上是有上限的;尽管如此,比较表明现成的通用编码器甚至无法恢复已知正确的技术,强化了限制在于编码器表示而非检索公式。
表6:编码器在完整ATT&CK目录上检索457个小组验证的(步骤,技术)对:验证技术被排在第一(top-1)或前三(top-3)的比例。子技术匹配归功于其父技术。
| 编码器 | Top-1 | Top-3 |
|---|---|---|
| ATTACK-BERT(默认) | 0.80 | 0.97 |
| all-mpnet-base-v2 | 0.45 | 0.73 |
| BGE-large-en-v1.5 | 0.38 | 0.63 |
| E5-large-v2 | 0.34 | 0.54 |
本次消融的主要发现是,现成的编码器在LLM生成的攻击步骤文本上进行精确TTP归因时结构上不足:ATTACK-BERT——我们基准测试中最强的编码器——仅28.9%的时间被判断为合理匹配(表5),而通用替代品恢复已知正确技术的频率远低(表6)。因此,瓶颈不在于现有嵌入模型之间的选择,而在于缺乏在攻击步骤-技术对上微调的领域专用编码器。小组分数(评分员间Cohen's κ=0.78)显示出与上述相同的广义排序——AI和身份中心应用高于OT和分析领域——确认差距是技术归因任务的性质,而非任何单一领域。将 top-K 候选与每个top-1映射一起保留,保留了LLM或SME驱动精化的选项而无需在每次运行时付出成本,并支持第4节所述的SME标注流水线。
5.5 消融2:相似度阈值 τ
检索阶段丢弃任何与攻击步骤描述的余弦相似度低于 τ 的候选技术。没有候选超过 τ 的步骤不获得映射,避免强制低置信度分配。我们在主要实验中设置 τ=0.3,并在此报告对该选择的敏感性。τ 的贡献最好通过比较表3中每个领域的步骤数(列Steps)与相应的映射数(列TTPs)来阅读。在所有七个领域中,差距最多为一步(例如医疗保健:270步,269个映射;IAM身份中心:275步,275个映射),意味着在 τ=0.3 下,几乎每个生成的攻击步骤都至少有一个ATT&CK技术高于阈值。因此当前设置优先考虑覆盖而非精确度;提高 τ 将以牺牲部分覆盖为代价换取每个映射更高的置信度。
为使这种权衡具体化,我们对运行产生的1,585个非事实攻击步骤进行了 τ∈{0.2,0.3,0.4,0.5,0.6} 的扫描,记录每个步骤在ATTACK-BERT下与ATT&CK矩阵的top-1余弦相似度,并计算在每个阈值下仍有映射的比例(表7)。覆盖在 τ=0.2–0.3 时几乎是完全的(100.0%和99.9%),然后在 τ=0.4 降至94.7%,τ=0.5 降至76.8%,τ=0.6 降至52.3%。拐点就在0.4之上:将 τ 从0.3提高到0.4仅丢弃约5%的映射(最不自信的尾部),而低于0.4的每个步骤正是阈值存在旨在抑制的那种强制低置信度分配。
表7:映射覆盖率与相似度阈值 τ 的关系(ATTACK-BERT,所有1,585个非事实攻击步骤)。覆盖率 = 至少有一个技术相似度 ≥τ 的步骤比例。
| τ | 0.2 | 0.3 | 0.4 | 0.5 | 0.6 |
|---|---|---|---|---|---|
| 映射步骤数 | 1585 | 1584 | 1501 | 1218 | 829 |
| 覆盖率 | 1.00 | 1.00 | 0.95 | 0.77 | 0.52 |
关键在于,阈值控制覆盖而非正确性:因为消融1显示小组仅判断约29%的映射正确,提高 τ 只能修剪低置信度映射,而不能改善剩余映射的技术归因。因此准确度上限是一个编码器问题,我们将面向精度的阈值扫描与第6节所述的领域专用编码器微调配对,两者可以在单一SME标注语料库上共同优化。
5.6 自动化评估分数
我们使用§4.3的评分员小组加验证器协议,对上述运行中流水线产生的每个产物进行评分——1,683个TTP映射、1,684个缓解措施、100个攻击树和84个威胁陈述。与用代理填充的基线不同,没有维度被赋予默认分数:表8中的每个值都是一个经过SME裁决的测量小组判断。表8报告了按能力的聚合均值;表9按领域分解。
表8:按能力的聚合评估分数,平均7个领域(均值 ± 能力均值的跨领域标准差)。尺度 [0,1]:1.0 excellent,0.75 good,0.5 acceptable,0.25 poor,0.0 unacceptable;TTP映射为二元good(1)/bad(0)。分数是LLM小组测量(3评分员+对抗性验证器),经SME裁决(§4.3)。
| 能力 | 维度数 | 均值 | 标准差 |
|---|---|---|---|
| 威胁陈述 | 5 | 0.63 | 0.05 |
| 攻击树 | 6 | 0.64 | 0.05 |
| TTP映射 | 1 | 0.29 | 0.08 |
| 缓解措施 | 4 | 0.68 | 0.02 |
| 整体 | 16 | 0.63 | 0.09 |
表9:各领域能力分数(小组测量,[0,1])。列是能力均值;Overall是所有16个维度的维度加权均值。
| 领域 | 威胁 | 树 | TTP | 缓解 | 整体 |
|---|---|---|---|---|---|
| 科学会议 | 0.67 | 0.68 | 0.20 | 0.68 | 0.64 |
| 旅行住宿 | 0.54 | 0.56 | 0.33 | 0.69 | 0.57 |
| 身份联合 | 0.65 | 0.64 | 0.31 | 0.72 | 0.64 |
| 医疗保健 | 0.69 | 0.69 | 0.23 | 0.65 | 0.65 |
| IAM身份中心 | 0.64 | 0.70 | 0.30 | 0.71 | 0.66 |
| 自动制造 | 0.64 | 0.63 | 0.21 | 0.67 | 0.62 |
| GenAI聊天机器人 | 0.59 | 0.59 | 0.44 | 0.65 | 0.60 |
| 平均 | 0.63 | 0.64 | 0.29 | 0.68 | 0.63 |
缓解措施达到最高聚合分数(0.68):可操作性(0.73)和特异性(0.71)由于模式验证、上下文锚定输出而很强,而覆盖度(0.63)是最弱的子维度,因为单个缓解措施通常处理多个步骤。攻击树(0.64)和威胁陈述(0.63)处于“可接受至良好”区间;在威胁内部,上下文相关性最高(0.72),而技术准确性(0.59)被偶尔的过度声明和对扫描器上下文中不存在的栈组件的引用拖累,验证器将其标记为最常见缺陷。TTP映射(0.29)是迄今为止得分最低的能力,显然是瓶颈:纯嵌入检索仅约29%的时间被判断为合理匹配,范围从0.20(科学会议)和0.21(自动制造,其OT/IoT步骤缺乏直接ATT&CK对应项)到0.44(GenAI聊天机器人,其步骤与矩阵对齐更好)。TTP映射与每个其他能力之间的差距在所有七个领域中大且稳定,将准确度上限定位在嵌入阶段(§5.4)而非威胁生成、树构建或缓解综合。
置信区间。为量化能力均值中的抽样不确定性,我们运行了聚类bootstrap(10,000次重采样:领域有放回重采样,然后每个领域-能力单元内的项目)。95%区间紧密且在关键处不重叠:威胁陈述 [0.58,0.67],攻击树 [0.60,0.68],缓解措施 [0.66,0.70],TTP映射 [0.23,0.35]。TTP映射区间完全低于每个其他能力的区间,因此瓶颈在统计上与流水线其余部分分离,而非7领域样本的产物。
评分员间一致性。在原始(验证器前)评分员标签上,序数维度达到平均配对一致性0.93,二元TTP维度达到平均Cohen's κ=0.78(各领域范围0.68–0.84),原始一致性90%。TTP κ 处于“实质性一致”区间,表明低TTP映射分数是可靠信号而非评分员噪声。
跨模型校准。为检查分数不是评分员模型的产物,我们用一个构建在不同LLM家族上的独立评分员,对分层56项样本(每个领域×能力2项,210个序数维度判断加14个TTP判断)进行盲测重新评分,独立于小组标签。小组与独立评分员在97.6%的序数判断上在一个评分等级内一致([0,1]尺度上的平均绝对差0.13),在二元TTP维度上达到85.7%一致性(Cohen's κ=0.70)。精确标签一致性较低(约50%),因为独立单次评分员系统性地更慷慨——它比经对抗验证的小组授予更多“excellent”标签——证实我们的小组是两者中更保守的,不会夸大分数。这种自动校准是对人类SME裁决的补充而非替代,后者在同一队列上提供最终地面真值检查。
5.7 消融3:多智能体分解是否有帮助?
一个自然的问题是十阶段分解是否值得其复杂度,相对于明显的替代方案:单一LLM调用。我们构建了一个整体式基线,保持一切恒定——相同的模型(Claude Sonnet 4.5,温度0)、相同的仓库读取工具、相同的目标产物模式——但移除分解:一个智能体、一次对话,被指示在单一结构化输出中发出完整产物(威胁、攻击树、技术映射、缓解措施),没有确定性验证器、没有有限重试边、没有嵌入检索。代替ATTACK-BERT,基线直接从模型自身的参数知识中分配ATT&CK技术ID;我们将每个ID对照ATT&CK STIX目录解析,并保留不可解析(幻觉)的ID,按原样评分。然后我们用相同的评分员小组和协议(§4.3)对基线的7领域输出进行评分,使两臂直接可比。表10报告了按能力的小组均值。
表10:ThreatForest(完整流水线)对比使用相同模型和小组的整体式单调用基线。小组测量的能力均值,所有7个领域,[0,1]。
| 能力 | ThreatForest(流水线) | 整体式(单调用) |
|---|---|---|
| 威胁陈述 | 0.63 | 0.71 |
| 攻击树 | 0.64 | 0.59 |
| TTP映射 | 0.29 | 0.63 |
| 缓解措施 | 0.68 | 0.78 |
| 整体 | 0.63 | 0.68 |
结果具有信息量且部分与直觉相反。在逐项质量上,整体式基线有竞争力或更好:它在威胁陈述和缓解措施上略胜流水线,在攻击树上仅略逊。流水线决定性胜出的是覆盖面和一致性:它平均产生240个攻击步骤,而基线为87个;89个独特技术对约29个;完整ATT&CK战术覆盖(γ=0.98对0.85);统一的树深度(均值5.0,范围4.6–5.5),而基线深度在各领域从2.0到6.6摆动。单调用产生更小、更浅、更可变的攻击面模型;分解以逐项抛光换取穷举性、结构统一性的广度,在每个应用上以相同方式可审查。
最关键的一行是TTP映射,它强化而非削弱了我们的核心发现。无辅助LLM自我分配得分为0.63——是相同攻击步骤上纯嵌入检索0.29的两倍多。因此瓶颈明确地是嵌入编码器,而非多智能体架构:被直接要求命名技术的模型比ATTACK-BERT的最近邻合理得多。这是迄今为止支持§6方向(用学习或LLM驱动的映射阶段替换或重排序嵌入top-1)的最强证据,并将修复定位到消融1已经涉及的同一组件。我们注意一个限定:基线的技术由与评分员小组相同的模型家族分配,因此共享盲点可能夸大其TTP数字。三个因素限制了该风险——小组是对抗性的,且根据上述跨模型校准,比独立评分员更保守;两臂由同一小组评判,因此比较内部一致;基线在所有七个领域中没有发出任何幻觉技术ID(仅名称修正),因此它不是通过编造评分员无法检查的ID来获胜。诚实的解读是覆盖/精度权衡:流水线以低每映射精度最大化广度和统一性,而单调用给出更少但个别更强的判断——而嵌入检索在当前配置中被两者都支配。
5.8 成本与运行时间
我们仪表化了每个智能体调用以记录token使用和壁钟时间,然后纯粹为测量重新执行领域(上述质量分数仍与原始运行绑定)。表11报告了每个领域的运行时间、token量和按Sonnet 4.5标价计算的美元成本。完整流水线运行平均9.2分钟,每个应用7.78美元;整体式基线平均6.9分钟,1.33美元。流水线约6倍的成本溢价换来了消融3中的覆盖面和结构统一性——平均240个攻击步骤和89个技术,对比基线的87和约29——加上单调用无法提供的可检查中间状态和HITL门。绝对值上,两臂相对于它们所替代的分析师时间都是便宜的:不到8美元和十分钟将一个仓库转化为经过审查的、TTP映射的攻击树模型,远低于等效手动练习的数天成本。
表11:每个应用的成本和运行时间,ThreatForest流水线对比整体式单调用基线。s:壁钟秒;Min:输入token(含缓存)百万;Mout:输出token千;$:标价成本。在仪表化重新执行上测量;流水线平均值为完成测量运行的六个领域(GenAI聊天机器人重新运行被省略——其并行扇出在测量期间停滞,是与评分输出无关的瞬时问题)。
| 领域 | ThreatForest(流水线) |
|
|
| 整体式(单调用) |
|
|
|
|---|---|---|---|---|---|---|---|---|
|
| s | Min | Mout | $ | s | Min | Mout | $ |
| 自动制造 | 508 | 1.59 | 171 | 6.62 | 303 | 0.37 | 21 | 1.19 |
| 身份联合 | 488 | 2.11 | 176 | 8.48 | 337 | 0.12 | 24 | 0.63 |
| GenAI聊天机器人 | – | – | – | – | 657 | 0.14 | 31 | 0.89 |
| 医疗保健 | 624 | 1.39 | 170 | 6.01 | 345 | 0.35 | 23 | 1.15 |
| IAM身份中心 | 680 | 3.40 | 202 | 12.38 | 348 | 0.47 | 24 | 1.60 |
| 科学会议 | 558 | 2.32 | 191 | 9.05 | 618 | 0.94 | 41 | 3.13 |
| 旅行住宿 | 454 | 0.90 | 135 | 4.15 | 298 | 0.19 | 21 | 0.69 |
| 平均 | 552 | 1.95 | 174 | 7.78 | 415 | 0.37 | 26 | 1.33 |
5.9 与现有威胁建模工具的比较
与先前工作的直接定量比较是不可能的,因为没有现有工具生成ThreatForest生成的相同产物——从源代码仓库端到端生成的TTP映射攻击树,附带基于证据的缓解措施和概率注释的可达分析。现有威胁建模工具和近期基于LLM的工作各自解决此任务的一个片段。表12总结了ThreatForest相对于代表性系统的能力覆盖范围:OWASP Threat Dragon(owasp-threatdragon)、AWS Threat Composer(aws-threatcomposer)、threatmodeling-llm2024的LLM微调方法,以及canllmsthreatmodel2025的LLM提示威胁识别研究。
表12:代表性威胁建模工具和基于LLM的先前工作与ThreatForest的能力覆盖比较。✓ 表示支持该能力,✗ 表示不支持,∼ 表示部分支持(例如固定STRIDE规则列表而非结构化框架映射)。
| 系统 | 代码 | 树 | TTP映射 | 缓解 | HITL |
|---|---|---|---|---|---|
| OWASP Threat Dragon(owasp-threatdragon) | ✗ | ✗ | ∼ | ✗ | ✗ |
| AWS Threat Composer(aws-threatcomposer) | ✗ | ✗ | ✗ | ✗ | ✗ |
| ThreatModeling-LLM(threatmodeling-llm2024) | ✗ | ✗ | ✗ | ✗ | ✗ |
| canllmsthreatmodel2025 | ∼ | ✗ | ✗ | ✗ | ✗ |
| ThreatForest(本工作) | ✓ | ✓ | ✓ | ✓ | ✓ |
能力列隔离了差距。“代码”表示以源代码仓库为主要输入的系统;图表驱动工具需要手动编写的数据流图,而基于LLM的研究使用自然语言系统描述或访谈记录。“树”表示结构化攻击树输出(根目标、AND/OR子目标、叶技术)而非平面威胁列表。“TTP映射”表示输出映射到MITRE ATT&CK等标准化技术框架;基于规则的STRIDE建议列表因类别比ATT&CK技术更粗而被计为部分匹配。“缓解”表示基于证据的缓解措施,链接回特定攻击步骤。“HITL”表示流水线中内置的显式人机协同验证门。ThreatForest是唯一支持全部五个的系统。
对本文实证结果的启示是,绝对数字(240个攻击步骤、89个独特技术、0.68小组测量的缓解分数)并非针对竞争系统的基准;它们是未来系统可据以测量的基线。我们做出的贡献是一个产生联合产物的工作组合,加上一个可复用评估框架(第4节)和将允许独立复现的代码发布。
6 讨论
6.1 设计权衡
并行扇出 vs. 跨威胁推理。每个威胁并行生成一个树-TTP-缓解子流水线提供高达 N 倍加速并隔离失败:一个产生畸形树的威胁仅触发其自身子流水线的重试,而非整个运行。代价是威胁无法在流水线中间相互推理——一个被攻陷的IAM角色同时启用数据外泄和权限提升,当前被建模两次而非一次共享上下文。我们将跨威胁分析视为对合并状态的后续处理步骤,报告生成器已经揭示共享TTP节点和重叠缓解证据。未来的扩展可在缓解综合前对所有威胁的 𝒫θ 进行连接,但代价是额外的LLM调用。
嵌入检索 vs. 每步LLM映射。每步基于LLM的ATT&CK分类是可行的,但在规模上昂贵(每个应用约 n≈240 步,跨多次运行)。我们选择基于嵌入的检索有两个原因:成本(每步一次CPU端编码器传递对比一次LLM调用)和确定性(相同输入跨运行产生相同 top-K,验证器和下游阶段依赖于此)。我们的评估显示最强的现成编码器(ATTACK-BERT)仅29%的时间被判断为合理匹配,而通用句子转换器恢复已知正确技术的频率远低(表5、6),确认在现成编码器上的余弦相似度对于精确技术归因是不充分的。保留 top-K 候选而非仅 top-1,保留了LLM或SME驱动精化的选项而无需在每次运行时付出成本。
基于文件的状态 vs. 内存消息传递。智能体通过写入共享状态目录的JSON文件通信,而非通过内存消息或队列。这以I/O开销换取了我们在实践中发现不可或缺的三个属性:每个中间产物都是人类可检查的(SME审查的关键要求),运行可在任何已验证阶段后从故障中恢复,并行子流水线通过文件路径写隔离。同一架构也支持HITL门——它们只是读取和写入智能体使用的相同状态文件。
确定性验证器 vs. 基于LLM的验证。每个阶段的验证器是纯Python函数而非另一个LLM调用。这避免了用LLM评分LLM的成本和非确定性,且验证器输出跨运行和跨审查员可复现。代价是验证器只能捕获结构失败(缺失字段、无效引用、模式违反);它们无法捕获语义错误但格式良好的输出。语义验证委托给HITL门和评估框架的SME注释。
真正新颖的是什么。上述五个权衡各自实例化了一种已知技术。我们声称的贡献是经验性证明它们组合成一个工作的端到端流水线,从代码仓库生成TTP映射的攻击树(表12),并且该组合的主导准确性瓶颈可隔离到单一组件——现成的嵌入编码器——消融1(§5.4)显示其仅约29%的时间被判断正确,而每个其他能力得分为0.63–0.68。这种隔离本身就是贡献:它告诉未来工作该投资何处。
6.2 有效性威胁
构造效度。我们的16个评分维度被定义为涵盖四个流水线能力,但它们并非独立:攻击树的技术现实性和攻击路径逻辑与底层威胁陈述的技术准确性重叠,SME在一个维度上的分数将部分预测其在另一个维度上的分数。我们通过报告每个维度的均值(因此相关维度并排可见)和将每个能力路由到其自己的注释队列来缓解,但我们尚未计算跨多个SME的评分员间可靠性。
内部效度。我们的分数由带有对抗性验证器的LLM评分员小组(§4.3)产生,而非由辅助人类专家产生;一个LLM评估LLM生成的输出可能与生成器共享盲点。我们通过三种方式缓解:三个评分员被给予不同的审查焦点,验证器只能降低分数且必须引用具体缺陷,以及我们将协调标签路由到人类SME裁决作为验证门。我们还报告评分员间一致性(序数配对0.93;TTP Cohen's κ=0.78,实质性),因此小组的可靠性是可见的而非假设的。小组在构造上是保守的——对抗性验证器只能确认或降低分数——事实上每个能力得分远低于不太批判的评估者会分配的朴素“good”(0.75)代理,因此评估不会恭维系统。我们进一步将小组与构建在不同LLM家族上的独立评分员进行校准(§5):两者在97.6%的序数判断上在一个评分等级内一致,在二元TTP维度上 κ=0.70,且独立评分员在某种程度上更慷慨,因此小组并非特异性地严格或宽松。残余风险是两个模型家族共有的系统性盲点幸存;人类SME裁决通过及其产生的标注语料库(§4)提供针对该风险的最终地面真值检查,而分阶段裁决队列使其成为确认性步骤而非此处报告测量结果的先决条件。
外部效度。七个示例应用被策划以涵盖常见云原生架构(IoT、身份、GenAI、医疗、IAM、转录、住宿),但它们被有意设计为可在单次SME通过中审查的大小。真实生产系统通常更大,包含遗留组件,跨多云配置,并包括扫描器启发式可能遗漏的自定义中间件。我们期望ThreatForest在此类系统上优雅降级——即使组件不熟悉,扫描器输出仍保持结构有效——但来自此评估的绝对数字不应外推。
对单一LLM家族的依赖。所有实验使用通过Amazon Bedrock服务的Claude Sonnet 4.5。性能可能因模型家族和提供商而异;特别是威胁陈述和树生成提示是针对该模型行为调整的,移植到显著更弱的模型可能需要提示工程工作。我们将系统在设计中视为模型无关的(每个智能体仅以其状态文件输入和用户仓库为条件,而非特定模型标识符),但我们尚未跨提供商进行基准测试。一个内部一致性检查是§5.7的整体式基线,其技术映射由与小组运行的相同模型产生;我们在此处限定了由此产生的共享盲点风险。
ATT&CK覆盖缺口。MITRE ATT&CK在云原生、容器和无服务器技术方面存在已知缺口。描述这些的步骤(例如,错误配置的IAM信任策略、Lambda冷启动竞争)有时缺乏严格的ATT&CK对应项,嵌入检索器随后要么返回松散匹配要么无映射。我们的可插拔框架支持部分是对此的回应——我们计划用社区维护的云特定威胁矩阵和CAPEC(capec)来交换或增强ATT&CK以用于受影响领域。
LLM幻觉风险。威胁智能体和树智能体是LLM;它们原则上可以发明不适用于目标系统的威胁或攻击步骤。我们通过三种结构性防御来缓解:(i)扫描器将所有下游上下文锚定到从仓库读取的证据,(ii)验证器拒绝引用不存在组件的输出,(iii)威胁审查HITL门明确要求SME标记误报。我们在此工作中不独立测量幻觉率;§4所述的SME审查数据集是未来可构建幻觉检测基准的基底。
6.3 未来工作
我们计划吸收额外的威胁框架——社区维护的云威胁矩阵、AWS威胁技术目录、OWASP攻击模式、CAPEC(capec)、CWE(cwe)以及来自D3FEND(d3fend)的防御对策——到一个统一的基于STIX(stix2017)的知识图谱中,该图谱跨矩阵规范化技术和控制,并使缓解措施与NIST SP 800-53(nist80053)和OWASP Top 10(owasp-top10)控制对齐。像Atomic Red Team(atomic-red)和CALDERA(caldera)这样的对手仿真库也将让我们针对可执行测试计划验证生成的攻击路径,为我们在SME语料库之外提供具体的行为地面真值。
我们正在通过评估基础设施(§4)收集SME标记的地面真值,以训练一个专门的攻击步骤到技术对的精化模型,目标是将精确度推到现成检索约29%上限之上。作为一个试点,我们使用本研究中1,683个小组标记的(步骤,技术)对微调了一个交叉编码器重排序器,判断候选映射是否正确——top-K 精化阶段的可部署模拟。在留出的、无泄漏分割(按攻击步骤,75/25)上,微调将准确率从0.52(零样本)提升到0.82,F1从0.36提升到0.51,精度0.76,召回0.39,清除了0.75的多数类基线。高精度、中等召回的操作点正是精化过滤器所需的:它自信地确认正确映射,同时将其余标记为SME审查,而非静默传递低置信度匹配。这是一个有希望的试点而非已解决问题——召回仍受语料库规模限制。作为校准,一个结构相似的安全文本NLI任务(将云配置规则映射到PCI-DSS、HIPAA、NIST-CSF和ISO 27001控制)据报道在6,694对测试集上达到86% F1,表明该方案在我们当前标签量约4–5倍时进一步加强。具体剩余工作是通过已在位的SME注释流水线(§4)扩展攻击步骤到技术语料库,并直接微调检索编码器或部署此重排序器作为 top-K 候选上的过滤器。SME评分的轨迹与DSPy的MIPROv2优化器(opsahlong2024miprov2)直接兼容,用于跨流水线阶段的联合指令和少样本优化,并且我们计划针对SME语料库校准的LLM-as-judge评估器以实现大规模持续评估。最后,我们计划进行多评分员研究以计算16个评分维度上的评分员间可靠性,并在SME系统分歧的维度上精化评分标准。
7 结论
我们提出了ThreatForest,一个多智能体系统,自动化从源代码仓库到MITRE ATT&CK映射攻击树并附带基于证据的缓解措施的威胁建模。在七个不同的云应用上,系统平均生成12个威胁,每个应用240个攻击步骤,在7个领域中的5个达到完整ATT&CK战术覆盖(平均0.98),每个应用产生89个独特技术映射。使用由LLM评分员小组在SME验证下评分的16维评分标准进行评估,威胁陈述、攻击树和缓解措施在 [0,1] 尺度上达到0.63–0.68,而纯嵌入TTP映射仅达到0.29——这一差距在所有七个领域中稳定,将绑定准确性约束隔离到单一可替换组件。在相同模型上的受控整体式单调用基线证实了这一定位:它将TTP映射合理性提高了一倍以上(0.63),将限制钉在嵌入编码器而非多智能体设计上,而完整流水线在攻击面覆盖和结构统一性上保留了决定性的优势。伴随的评估框架和评分协议建立了一个可复现的基线,未来系统可据此测量,而即将发布的代码库将提供一个基底,更广泛的安全社区可在此基础上将流水线扩展到更多框架、模型和评估标准——最直接的是,我们的瓶颈分析所识别为最高价值下一步的领域专用编码器微调。
致谢 我们感谢AWS安全审查和威胁建模社区对系统早期版本的反馈,以及MITRE ATT&CK、CAPEC和本工作中使用的开源嵌入模型的维护者。
资助 本研究未从公共、商业或非营利部门的资助机构获得任何特定资助。该工作是作为作者在Amazon Web Services雇佣的一部分进行的。
利益冲突声明 作者受雇于Amazon Web Services。本文描述的工作是作为其雇佣的一部分进行的。作者声明没有其他可能影响本文报告工作的已知竞争性经济利益或个人关系。
性别分析 本工作不涉及人类或动物受试者、真核细胞或任何按性别分层的数据;因此性别分析不适用于本文提出的方法论或结果。
数据和代码可用性 ThreatForest源代码、示例应用、评估提示和本研究中使用的七个应用领域配置将在公共仓库发布。主题专家注释数据正在通过第4节所述评估基础设施收集,并将与代码一起作为单独数据集发布。
稿件准备过程中生成式AI和AI辅助技术的声明 在准备本工作过程中,作者使用了通过商业云提供商服务的大语言模型,以协助文案编辑、改写和一致性检查。在使用这些工具后,作者根据需要审查和编辑了内容,并对本工作的内容承担全部责任。ThreatForest本身使用大语言模型作为所研究系统的核心组件;这种使用在全文中有描述和评估,与写作过程中的任何AI辅助不同。
第三方数据和模型归属 MITRE ATT&CK。本工作使用由MITRE公司分发的MITRE ATT&CK®知识库(mitre-attack)。© 2015–至今,MITRE公司。ATT&CK®是MITRE公司的注册商标。ATT&CK STIX内容根据ATT&CK使用条款(Terms of Use | MITRE ATT&CK®)在本工作中复制和使用;MITRE既未审查也未认可本文。
嵌入模型。我们使用以下预训练句子转换器模型,每个均在宽松开源许可下发布,并按其条款使用:ATTACK-BERT(attackbert)(Apache-2.0)、E5-large-v2(wang2022e5)(MIT)、all-mpnet-base-v2(mpnet2021)(Apache-2.0)、BGE-large-en-v1.5(xiao2024bge)(MIT)和Qwen3-Embedding-0.6B(qwen3embedding2025)(Apache-2.0)。

404

被折叠的 条评论
为什么被折叠?



