CyberLLM:面向汽车网络安全的自主检测与防护响应的多智能体LLM框架

发布时间:2026/10/13 6:39:33
CyberLLM:面向汽车网络安全的自主检测与防护响应的多智能体LLM框架
大家读完觉得有帮助记得关注和点赞摘要软件定义汽车SDV在源代码、运行时日志和部署拓扑中扩展了汽车攻击面同时安全约束禁止自主代理在没有监督的情况下行动。本文提出CyberLLM一个多智能体、由LLM编排的框架能够在正式的运行时安全防护下自主检测漏洞并执行修复。检测结合了确定性层正则表达式规则、AST分析器和拓扑图检查与LLM优化环节从而以高召回率的底层为基础辅以高精度的推理。决策智能体汇总发现用人本位的资产分类法进行标记并选择分级响应通过带签名的跨会话记忆和重新规划反馈逐步提升其置信度。每个动作在执行前都会根据四个上下文安全属性和一个独立的动作对齐预言机进行验证被拒绝的动作会触发升级和重新规划。对称的攻击流水线生成并回放漏洞利用使得攻防双方可以在相同场景下进行演练。在一个独立的、有真实标注的基准测试上——该基准包含九个原始的C、C和Rust编写的汽车ECU模块植入了47个层次化漏洞以及干净对照组——始终开启的确定性层以完美精度覆盖了34%的标注漏洞加入基于LLM的优化和完整性检查环节后覆盖率大约翻倍至约70%F1分数0.83同时在干净对照组上产生了零误报。结果表明当LLM代理被封装在确定性的、可审计的安全外壳中时能够执行有用的自主网络防御。索引术语——汽车安全LLM代理多智能体系统静态分析软件定义汽车智能体AI安全I. 引言向软件定义汽车SDV的转型已将越来越多的车辆功能迁移到可通过空中更新的软件中这些软件由异构组件、车内服务以及日益增多的基于LLM的助手构成。这一转变极大地扩大了网络攻击面漏洞可能源于应用程序源代码表现为遥测和CAN日志中的异常或者潜藏在连接电子控制单元ECU、网关和外部代理的部署拓扑中[6]。传统的安全工具孤立地处理这些层面使用基于规则的扫描器、基于签名的日志监控器和手动配置审查这些都无法跨层面推理或自主行动。大语言模型LLM提供了一种引人注目的替代方案它们可以消化异构的文本工件代码、日志、配置对领域概念进行推理并能提出具体的修复措施[7]。然而使用LLM代理进行网络防御带来了两个相互关联的挑战。首先LLM检测是概率性的它可能产生幻觉式的发现或遗漏问题[8]这作为安全决策的唯一基础是不可接受的。其次能够在安全关键的车辆上行动的自主代理绝不允许采取不安全或未经授权的行动即使输入被对抗性地操纵例如通过提示注入或记忆中毒[9][11]。因此自主性与安全性之间存在张力。本文通过CyberLLM来解决这种张力这是一个多智能体框架将自主检测与响应与一个确定性的、可审计的安全外壳相结合。我们特别应对三个挑战(i) 在不牺牲精度的前提下实现高检测召回率通过将确定性分析器与LLM优化相结合(ii) 做出保守且可重复的自主响应决策通过将概率性决策智能体封装在由签名记忆支持的仅升级策略中(iii) 保证任何动作只有在满足正式的、上下文相关的安全属性时才执行由运行时的一个独立防护强制执行。本文的主要贡献包括一种分层检测设计将正则表达式、基于ASTBandit/Semgrep和拓扑图的分析器与LLM优化环节合并成一个单一的、去重的发现流其中确定性底层锚定并约束着LLM。一个决策与响应引擎选择分级缓解措施通过跨会话签名记忆和重新规划反馈逐步提升并通过MCP风格的工具注册表执行每一步都有验证和回滚。一个运行时安全防护强制执行四个上下文安全属性加上一个独立的动作对齐预言机使得被颠覆的扫描器无法导致不安全动作被执行。一个对称的攻击流水线生成并回放漏洞利用使防御和攻击双方都能在相同场景下被衡量以及在一个手工标注的汽车语料库上的评估。II. 背景与相关工作CyberLLM综合了五个互补方向的工作我们总结每一个精确说明我们采纳了哪些要素并描述我们如何超越它们。上下文智能体安全安全外壳。​ Siu等人[1]围绕以下洞察形式化了LLM代理安全同一动作可能根据执行上下文Ct (p, Tr{t-1}, Mt, Et, Sauth,t, G)而合法或恶意并定义了四个属性任务对齐、动作对齐、源授权、数据隔离以及预言机函数。我们直接将这四个属性采纳为SecurityGuard中的运行时检查并实现了高价值的动作对齐预言机Ha作为一个单独的LLM评判器它只能收紧而不能放松确定性决策。在框架之外我们使来源证明在摄入时成为强制性的将检查扩展到轨迹级别组合和时间安全并将源授权应用于记忆通道。人本位威胁分类法攻击面。​ Stappen等人[2]AgentHeLLM将受保护的对象七个人本位资产类别的分类法与被攻击的方式参与者、数据源和交互原语的图分离开来适用于车内代理到代理的设置。我们采纳七类别资产分类法来标记发现以及参与者/数据源图模型用于我们的部署扫描器并重用攻击路径视角来构建我们的攻击流水线。在分类法之外我们将其操作化为可执行的拓扑规则和记忆中毒防御。模型驱动的安全与安全保障设计检测模式。​ Petrovic等人[3]提出了LLM赋能的工作流结合元模型、实例创建、OCL风格规则和RAG上下文用于汽车功能安全与信息安全。我们采纳了他们用检索到的、机器可检查的规则来锚定LLM的模式而不是自由生成将其实现为一个YAML规则库加上确定性检查器其命中结果成为LLM扫描器的上下文。在他们的代码分析工作流之外我们将该模式泛化到三种输入模态代码、日志、拓扑并添加基于AST的分析器作为中间层。模式驱动的多智能体执行骨干。​ Härer[4]描述了一个模式驱动的多智能体LLM系统具有明确的提示/数据/动作函数和基于栈的执行包括网络安全测试用例。我们将其采纳为可执行骨干每个智能体拥有一个LLM客户端、一个填充提示模板的数据字典、以及一个由防护使用的目标。在骨干之外我们添加了委托语义其中子智能体继承目标但不继承父智能体的可信源。编排的边缘防御分层形态。​ Collins等人[5]提供了一个三层蓝图边缘代理、LLM编排、安全智能/学习用于边缘的自适应网络防御包括分级响应和自适应学习循环。我们采纳了分级响应软/中/硬和学习循环后者实现为由决策智能体查询的签名事件存储。在蓝图之外我们使学习循环具有防篡改特性HMAC签名、源验证读取使得被召回的先例不能被投毒。与这些各自关注一个方面的工作相比CyberLLM将检测锚定、分级防护响应、形式化运行时强制执行、防篡改记忆以及对称攻击模拟器整合到一个面向汽车领域的端到端流水线中。III. 实现概述A. 系统架构CyberLLM是一个由模式驱动的智能体流水线。每个智能体派生自一个共同的BaseAgent它拥有一个LLM客户端、一个绑定到提示模板的数据字典、一个由防护进行推理的目标字符串以及一个强制性的来源证明输入类型没有来源和从一个固定格已认证、外部、工具、记忆中抽取的trust_level工件不能进入流水线。所有检测器发出统一的Finding记录rule_id, severity, evidence, explanation, source_agent, asset_category, line这使得确定性和LLM输出能够无缝合并。整体的两阶段流水线——先是检测然后是防护响应——如图1所示。图1. CyberLLM防御流水线。三个扫描器生成一个合并的发现集供给决策智能体动作生成器的计划由安全防护逐步验证拒绝则触发重新规划。B. 防御工作流防御模式运行三个扫描器然后是一个自适应的决策-动作-防护循环该循环在拒绝时重新规划。检测确定性层。​ 始终开启的检测器是一个确定性静态分析器不需要LLM产生可复现的真实底层每个模态有一个入口点。scan_code_static应用YAML代码规则作为多行、不区分大小写的正则表达式为每个命中记录行号和简短的代码摘录作为证据。scan_log_static应用手写的、键控到LOG-规则的时间和统计检测器例如60秒内≥10次失败认证暴力破解、高于500包/秒的广播风暴、当查询的香农熵超过3.0时标记的DNS隐蔽信道、以及高于10MB的批量外泄。scan_deployment_static将部署YAML加载到参与者/数据源图论文2中并检查拓扑不变量TOP-001至TOP-008例如持有指向内存的写边的外部参与者。每个命中都被发出为StaticFinding其形状与LLM Finding相同因此各层无需转换即可合并。在源代码上一个可选的AST层在沙箱子进程中运行Bandit.py或Semgrep其他语言[12], [13]有限超时无shell将分析器测试ID映射到CODE-规则一些高噪声的ID被有意不映射以抑制已知的误报。merge_static_layers然后合并正则表达式和AST命中正则表达式层在(rule_id, line)键上胜出。清单1展示了一个代表性的代码规则。1 code_rules: 2 - id: CODE-001 3 severity: high 4 pattern: os\.system\s*\(|shell\s*\s*True 5 title: 命令注入风险点 6 rationale: 未净化的输入到达shell 7 asset_category: 物质与经济资源清单1. 示例确定性代码规则YAML锚定LLM扫描器。检测LLM优化​ 然后每个扫描器调用其LLM将确定性命中作为上下文注入并给出严格指令要求细化、解释或扩展这些命中而不是凭空发明新发现论文3的RAG锚定模式。merge_findings在LLM仅仅以相同规则在同一行或证据前缀重述时保留确定性发现并且只有当LLM发现真正的新位点时才会接受LLM发现。源代码扫描器增加了第二个你漏掉了什么批评者环节针对正则表达式无法看到的语义缺陷数据竞争、TOCTOU、释放后使用、整数溢出。其提示有意保守发现必须映射到已加载的规则源代码扫描器LLM优化环节 你是一个源代码安全扫描器。仅标记与已加载规则匹配的漏洞 命令/shell注入风险点、弱凭证加密、硬编码密钥、不安全反序列化、 缺少输入验证、以及特权路径中的竞态条件。 对于每个发现返回rule_id、严重性(low/medium/high/critical)、 尽力而为的行号、简短证据摘录、以及为何它是漏洞以及威胁哪个资产的解释。 返回严格的JSON{findings: [{...}]}决策​ 决策智能体将所有扫描器发现汇总成一个合并集三个AgentResult发现列表的并集并对其进行推理以选择响应等级none/soft/moderate/hard、[0,1]范围内的置信度、涉及的资产类别以及理由。等级不仅仅是LLM的意见一个确定性的、仅升级的策略位于其上。首先查询带签名的跨会话记忆以寻找相似的过去事件按其规则ID集合的Jaccard重叠度排序以及跨会话推荐之前相似度≥0.5时成功修复过的更强等级这样的先例可以提高等级但绝不会降低。其次如果本次运行的先前回合被拒绝或失败_apply_feedback_escalation将等级至少提升一级并推动置信度。格式错误的模型回复安全地失败为等级none置信度0.0。完整提示如下所示。决策智能体 你是多智能体网络安全防御系统的中央决策智能体 负责汽车/边缘部署。 来自扫描器智能体的汇总发现[findings] 从签名记忆中召回的相似过去事件论文5自适应学习 先例不是教条[memory] 跨会话推荐以前有效的做法[recommendation] 本次运行先前响应尝试的反馈首次尝试为空 [feedback] 允许的资产类别论文2分类法[assets] 响应等级与阈值[tiers] 决定(1) 涉及哪些资产类别(2) 推荐的响应等级 (3) [0,1]范围内的总体置信度(4) 简短理由。 返回JSON{summary: ..., asset_categories_touched: [...], recommended_tier: soft|moderate|hard|none, confidence: float, justification: ...}动作生成​ 动作生成器将决策转化为多步修复计划。一个确定性的、按规则ID键控的剧本是基础在此基础上一个可选的LLM工具选择器可以从MCP风格的工具注册表[14]中添加步骤其中每个工具都带有模式、声明的副作用以及前置/后置条件和步骤级回滚。提示将模型限制为只读/观察/验证工具禁止破坏性动作并且每个提议的步骤都要经过模式验证然后由与剧本步骤相同的逐步骤防护重新检查因此LLM可以加强但绝不能削弱计划。动作生成器LLM工具选择 你是防御性安全动作引擎的响应规划器。 确定性剧本已经选择了核心步骤。 你可以提议额外的工具调用以加强响应 优先选择收集证据或确认修复的只读/观察/验证工具。 不要发明破坏性动作。 决策摘要[summary] (等级[tier], 资产[assets])。 发现[findings] 可用的MCP工具名称[领域/副作用]描述 [catalogue] 返回严格的JSON{tools: [{tool: name, kind: observe|audit|notify|contain, params: {...}, why: ...}]}。如果剧本足够返回空列表。安全防护​ 在任何步骤执行之前SecurityGuard确定性地强制执行论文1的四个上下文属性任务对齐目标位于允许集合O中、动作对齐动作种类与目标兼容通过可审计的action→objective映射、源授权每个输入该动作的来源都是已认证的和数据隔离动作仅写入可信目的地。动作对齐还由独立的Ha预言机额外把关这是一个单独的LLM调用其唯一任务是0/1对齐判定按(action, objective, context)进行记忆化。它只能收紧确定性底层action_ok static_map_ok ∧ Ha_ok保持其独立性意味着颠覆扫描器或决策智能体的提示注入仍然面对一个未受污染的评判者。防护还评估整个计划的组合和时间安全性论文1 §7。如果一个步骤被拒绝或计划失败失败信息被反馈循环以升级的等级重新规划如果获批更改被提交结果以HMAC签名和来源标记的方式写入事件存储供将来召回。图2追踪了一个场景从原始输入到提交修复的完整流水线。安全防护Ha动作对齐预言机 你是来自上下文安全框架论文1的动作对齐预言机Ha。 你唯一的任务判断提议的ACTION在给定的CONTEXT中是否 真正服务于声明的OBJECTIVE。一个动作可以单独有效 但仍然不服务于目标例如在只读目标下请求的特权更改 或在可信资产上行动。 OBJECTIVE[objective] ACTION[action] CONTEXT[context] 返回严格的JSON{serves: true|false, reason: ...}C. 攻击工作流为了在相同场景下衡量防御质量CyberLLM包含一个对称的红队流水线其阶段与防御代理一一对应并重用相同的规则库。侦察与利用器。​ 一个系统信息发现代理仅执行被动侦察将AgentHeLLM参与者/数据源图具体化为结构化的SystemInstance不发送任何数据包。然后两个利用器代理重用与防御扫描器相同的静态分析命中发现错误在两种模式下是相同的只有意图不同源代码利用器将每个发现转化为利用计划标记CWE以及它违反论文1的四个属性中的哪一个部署利用器从拓扑图中推导出步骤。编排与伦理防护。​ 攻击编排器作为决策智能体的镜像将一个到三个发现链接起来针对论文2的资产目标并规划出双层投毒路径载荷投递和触发路径受害者消费格式错误的回复回退到链接最高严重性的发现。然后攻击生成器为每个步骤发出一个非破坏性的、仅限金丝雀的脚本shell注入、pickle RCE、路径遍历、SQL注入、algnone JWT、代理到代理投毒、CAN帧以文本形式返回且从不执行。每个计划首先通过伦理防护即SecurityGuard的攻击版检查场景范围、明确的目标授权以及不存在破坏性模式并在任何失败时修订脚本。结果被写入相同的HMAC签名存储标记为攻击模式因此双方可以直接比较盲测可以在不泄露标签的情况下评分。D. 横切机制三个机制贯穿整个流水线。签名记忆是一个标准库SQLite存储每次写入都用每个部署的密钥进行HMAC签名并标记写入源读取在行能影响决策之前验证签名和源保护学习循环免受投毒。资产标记将每个高严重性发现映射到七个人本位类别之一为下游步骤提供人类影响上下文。来源证明在摄入时强制执行使得源授权检查始终是可判定的。IV. 实验与评估A. 目标与环境评估针对项目的核心问题流水线仅从源代码中能揭示多少现实的汽车攻击面以及以何种精度。因此我们针对一个独立的、有真实标注的原始汽车ECU代码语料库进行检测基准测试而不是使用上面使用的说明性单文件场景。该语料库benchmark/automotive/包含九个用C、C和Rust编写的易受攻击模块模拟真实的ECU子系统外加两个干净的阴性对照组。九个模块分别是CAN到以太网网关、UDSISO 14229安全访问处理器、验证启动加载器、OTA固件更新代理、MQTT遥测发布器、ADAS传感器融合缓冲区、带有C外部函数接口的CAN-FD解析器、车载密钥库以及本地车队车辆API。代码不带任何提示注释每个缺陷仅记录在单独的ground_truth.yaml中因此该语料库是为测试检测器而编写而非为了讨好它。总共植入了47个层次化的、非显而易见的漏洞涵盖内存安全与并发CWE-787/125/120/190/191/416/476/362、注入CWE-78/89/22/134、密码学与密钥CWE-798/330/327/208/916/347/295、授权CWE-287/862/1390以及可达恐慌拒绝服务CWE-248。我们评估两个运行点快速模式仅确定性层正则表达式底层加上Bandit [12]/Semgrep [13]若存在完全离线和深度模式快速模式加上实时LLM优化和完整性批评者环节使用通过Azure OpenAI服务[10]访问的GPT-4o运行。B. 指标当扫描器发出的发现的行的位置落在标注行或范围的±3行窗口内时一个标注的漏洞被视为已检测到匹配是贪心的且一对一发现的rule_id不必等于CWECWE和类别被记录下来用于报告而非惩罚命名差异。我们报告覆盖率/召回率检测到的÷总标注数按语言、严重性和漏洞类别细分。精度在干净控制文件上测量其中任何发现都是真正的误报precision TP / (TP FP_clean)。我们还报告调和平均数F1。在易受攻击文件上未匹配任何标签的发现被报告为额外未标注而非计为错误因为标签集是一个必须有的底线而非穷举的预言机。测试框架是静态优先的因此平均检测时间设计上不适用。C. 结果表I报告了两种模式的覆盖率、精度、召回率和F1并附有按语言的细分。确定性的快速层以完美精度覆盖了34.0%16/47的标注漏洞提供了一个零成本、完全离线的底层。启用LLM优化和完整性环节深度模式将覆盖率提高到约70%33/47F1提高到0.83同时保持精度为1.000干净对照组在每次运行中产生零发现因为完整性批评者被指示将防御性模式参数化查询、边界检查拷贝、常量时间比较、检查过的Result/Option处理视为安全并且仅报告高置信度缺陷。增益恰好集中在正则表达式底层无法看到的类别中中等严重性的逻辑和DoS缺陷微妙竞争、差一错误、释放后使用、可达恐慌在第二轮开启后从3/11上升到约8/11。改进是渐进且可重现的。从一个以Python为中心的初始版本开始覆盖率为25.5%F1为0.41添加多语言摄入C/C/Rust源码和头文件和原生语言规则将离线底层提升并锚定LLM至55.3%覆盖率和0.71 F1然后完整性第二轮将深度模式带到约70%覆盖率和约0.83 F1。每个原生规则都被验证不会在干净对照组上触发因此每一步都保持了1.000的精度。由于LLM是非确定性的深度模式覆盖率每次运行会有几个百分点的波动而快速模式是可重现的。表I汽车C/C/Rust基准测试上的检测结果47个标注漏洞9个模块2个干净对照组基于位置的匹配±3行。精度在干净对照组上测量。指标快速模式离线深度模式LLM 批评者覆盖率34.0% (16/47)~70% (33/47)精度1.0001.000召回率0.340.70F10.510.83C15个漏洞3/159/15C16个漏洞6/1612/16Rust16个漏洞7/1612/16D. 讨论从这些数字中可以得出三点。首先确定性底层34.0%精度1.000与LLM增强检测器约70%精度1.000之间的差距精确量化了当LLM被锚定和约束而非盲目信任时所做出的贡献它大约使召回率翻倍同时在良性代码上未引入任何一个误报这正是分层检测器的核心设计主张。其次残留的遗漏是有信息量的而非偶然的它们集中在所有三种语言的中等严重性逻辑和DoS缺陷竞争、差一错误、NULL解引用、可达恐慌标志着动态分析和更丰富的规则锚定的前沿。第三对于安全关键部署最重要的一点是检测数字只是防护响应的输入因为防护是仅升级的来源证明是强制性的并且Ha预言机是一个独立的模型调用只能收紧裁决所以颠覆扫描器的对抗性输入仍然无法导致不安全动作被提交因此召回率的提升永远不会以牺牲安全外壳为代价。可用性。​ 完整的实现包括用于交互式演练防御和攻击流水线的基于Web的用户界面以及本评估中使用的基准测试框架均可公开获取于 https://github.com/Jeddou10/CyberLLM。V. 结论本文提出了一个多智能体LLM框架将自主的、跨模态的漏洞检测与形式化防护的分级响应相结合用于汽车网络安全。通过用确定性分析器锚定LLM扫描器用防篡改记忆逐步提升响应决策并在运行时强制执行四个上下文安全属性加上一个独立的动作对齐预言机该系统在一个独立的C/C/Rust汽车基准测试上以1.000的精度覆盖了约70%的标注漏洞大约是确定性底层的两倍并且从未在未经批准的情况下提交不安全动作。对称的攻击流水线使得双方可以在相同场景下被衡量。未来的工作将集成实时的MCP工具服务器例如nmap、tcpdump、CAN重放用于主动检测添加基于CVE和标准语料库的检索增强锚定以进一步遏制幻觉通过模型上下文协议和RAG处理大型模型和代码库并针对具有自动驾驶能力并与CARLA[15]等仿真环境集成的高保真SDV测试台验证该流水线。我们还计划针对智能体安全基准进行更广泛的评估以表征在自适应对手面前的鲁棒性。