漏洞概述 该提交修复了一个与执行审批(exec-approvals)相关的安全漏洞,具体涉及绑定批准的脚本操作数(bind approved script operands)。核心问题是:在系统运行审批流程中,可变文件操作数(mutable file operands) 缺乏适当的验证和绑定机制,可能导致审批后的脚本内容被篡改执行。 影响范围 组件: 模块的系统运行计划(system-run-plan)和网关审批转发(gateway approval forwarding) 文件涉及: - - 网关审批转发逻辑 - - 节点主机执行计划 - - 执行审批类型定义 - - 审批绑定逻辑(新增) 修复方案 核心机制:审批计划绑定(Approval Plan Binding) 1. 新增审批文件操作数类型 ( ): - : 参数索引 - : 文件路径 - : 文件内容哈希校验 2. 新增可变文件操作数 ( ): - 在审批请求中携带预设的审批计划 - 通过网关转发并绑定解释器风格的脚本操作数 3. 关键安全校验: - 审批时计算脚本的 哈希值 - 执行时验证脚本哈希与审批时是否一致 - 若绑定脚本在审批后发生变化,执行被拒绝(防止执行漂移内容) 代码实现 类型定义 ( ): 哈希校验函数 ( ): 脚本操作数解包 ( ): 审批绑定规范化 ( ): 安全行为 > "Approved node-host runs also bind canonical execution context: canonical cwd, pinned executable path when applicable, and interpreter-style script operands. If a bound script changes after approval but before execution, the run is denied instead of executing drifted content." (经批准的 node-host 运行还会绑定规范执行上下文:规范的工作目录、固定的可执行文件路径(如适用)以及解释器风格的脚本操作数。如果绑定脚本在审批后、执行前发生变化,则拒绝运行,而不是执行漂移的内容。)