Havenlon | 杂谈:AI时代,最后一层不应该太聪明
在今天的软件行业里“灵活”几乎天然是一种褒义词。平台需要可配置系统需要可扩展规则需要动态调整接口需要随时接入新的业务算法需要根据上下文作出更聪明的判断。一个产品如果不能快速变化往往会被认为架构落后、适应性不足甚至缺乏商业竞争力。但当软件开始连接资金账户、工业设备、企业权限、数字资产和现实基础设施之后一个容易被忽略的问题正在出现一个系统的每一层都应该追求同样程度的灵活吗答案可能恰恰相反。越靠近业务上层系统越需要理解复杂世界越靠近最终执行系统越应该减少自由度。上层可以理解复杂世界最后一层只需要守住不能发生的事。这并不是一种保守的技术观念而是一种长期存在于安全关键行业中的工程常识。只是过去软件主要负责处理信息最终执行仍然掌握在人手里今天AI Agent、自动化系统和智能设备开始直接推动现实动作这条常识正在重新变得重要。一、软件行业为什么如此迷恋灵活过去二十年企业软件的发展方向几乎都是一致的把写死的东西做成配置把固定流程做成工作流把本地逻辑做成远程服务把人工判断交给算法。这种变化有充分的商业理由。业务持续变化客户需求不同企业规模不同监管环境也不同。如果每改变一项规则都要重新修改代码、升级固件甚至更换设备成本显然难以接受。于是越来越多的能力被交给配置中心、策略引擎、管理员后台和远程控制接口。原本只能由工程师修改的规则逐渐变成了管理员可以点击的选项原本固定在设备中的行为逐渐变成了云端可以下发的策略原本只能执行少数动作的系统也开始支持脚本、插件、自动化编排和自然语言指令。从业务角度看这是能力的扩张。但从安全角度看每增加一种灵活性也意味着系统增加了一种“改变原有行为”的可能。配置可以被错误修改权限可以被滥用管理员账号可以被接管策略可以被污染远程接口可以遭到攻击AI 也可能在错误上下文中生成一套表面合理、实际危险的执行方案。问题不在于灵活本身错误而在于行业往往默认灵活性可以无边界地向下延伸。在普通软件里灵活是一种能力在最终安全边界里灵活本身可能就是风险。二、最后一层为什么不能像上层一样聪明一个智能系统越聪明通常意味着它能够理解更多信息、处理更多情况并根据上下文做出不同决定。这对于客服、搜索、内容生成、业务分析甚至流程编排都很有价值。但是当它来到最终执行层聪明就会产生另一种含义系统开始拥有解释规则的空间。一条固定规则只能回答“允许”或者“拒绝”一个聪明系统却会进一步判断当前情况是否特殊、是否值得例外、是否可以暂时绕过某项限制。这也是智能带来的危险之处。因为上下文可以是不完整的可以被精心构造也可以被恶意污染。攻击者不一定需要直接突破系统只需要让系统在错误上下文中得出一个“合理”的结论。今天的提示词攻击、上下文注入和代理欺骗本质上都在说明同一个问题只要一个系统会根据语言和环境调整判断它就存在被说服的可能。人会被说服AI 会被说服管理员也会被说服。而一道最终边界一旦可以被说服它就不再是一道真正的边界。最后一层越聪明就越可能被上下文说服越灵活就越可能被重新配置越通用就越难证明它在所有情况下都会拒绝危险动作。所以最后一道安全边界不应该追求理解所有情况。它更应该明确知道哪些事情无论在什么情况下都不能发生。它不需要理解一笔转账为什么紧急只需要知道这笔转账超过了硬限制。它不需要理解管理员为什么希望跳过检查只需要知道关键证据尚未形成。它不需要理解 AI 为什么认为当前操作风险可控只需要知道设备状态、目标参数或授权组合不满足执行条件。它甚至不需要判断谁更有道理。它只需要守住规则。三、真正的边界往往来自“不允许配置”在互联网产品中“写死”通常意味着坏设计。一个被写死的参数无法适配客户差异一个固定流程无法跟随业务变化一个不能远程更新的功能也很难维护。但在安全关键系统中有些东西恰恰需要被写死。芯片中的 Boot ROM、硬件熔丝位、安全启动根、公钥信任锚、密钥用途限制、机械联锁和物理急停本质上都是不同形式的 hard-coded 边界。它们并不聪明也不灵活。它们的价值就在于不会因为一条云端指令、一名管理员的要求或者一次软件升级而轻易改变。这类设计看起来笨重却更容易回答一个重要问题当上层全部出现问题时它还会不会拒绝如果一条安全规则可以被远程关闭那么攻击者的目标就会从突破安全规则转变为获得关闭规则的权限。如果一个硬限制可以被管理员调整那么攻击者不一定需要绕过限制只需要接管管理员。如果最终边界依赖云端策略那么当云端遭到入侵、服务异常或策略引擎出错时边界本身也会随之失效。一项规则只要能够被随时修改它就更像配置而不是边界。真正的边界通常具有一种让产品经理不舒服的特征它会拒绝便利。它可能让某些紧急操作无法快速完成让管理员不能处理所有特殊情况让客户无法完全按照自己的意愿配置系统。但安全从来不是无限自由的附属品。安全本身就是对自由度的主动收缩。密码限制了谁可以进入权限限制了谁可以操作审批限制了谁可以单独决定硬件边界则进一步限制了即使所有软件层都表示同意哪些事情仍然不能发生。四、Hard-coded 不等于把整个系统写死强调硬编码并不意味着把所有业务逻辑都固化在硬件里。一个完全无法升级、无法适配业务、无法修复缺陷的系统同样不是好的安全系统。真正合理的设计不是“全部写死”而是区分哪些东西可以变化哪些东西不能被轻易改变。业务流程可以变化风险模型可以升级AI 可以持续学习组织成员可以调整审批规则可以根据场景重新配置。但是最终执行层需要保留一组更稳定的安全不变量。例如某些额度永远不能被单一主体突破某些高风险动作必须同时满足多个独立条件关键参数发生变化后必须重新确认证据链不完整时不得执行设备进入异常状态后必须默认拒绝安全模式不能被普通远程接口关闭任何单一管理员都不能拥有修改全部边界的能力。这些规则未必都要永久不可更新但它们的修改过程必须比普通配置更加困难。可能需要物理在场、多个独立主体共同授权、设备重新初始化甚至更换硬件模块。这不是为了制造麻烦而是为了让攻击者无法通过拿到一个账号、控制一台服务器或欺骗一个 AI就重写整个系统的底线。安全关键系统不是拒绝变化而是要求不同层级的变化付出不同成本。普通文案可以随时改业务策略可以审批后改安全边界则必须通过更高成本、更强证据和更严格治理才能改。系统越接近最终执行改变它的门槛就应该越高。五、AI 时代聪明与可信必须被分开过去软件系统即使判断错误很多时候仍然需要人来点击最后一个按钮。但 AI Agent 正在改变这件事。AI 不再只是生成文字而是开始调用工具、访问数据库、修改配置、提交交易、触发采购、控制设备并执行跨系统任务。当 AI 进入执行链之后行业很容易形成一种误解既然模型越来越聪明那么最后的控制系统也应该更聪明。于是越来越多的安全判断也被交给模型。让模型识别用户真实意图让模型判断交易是否异常让模型决定是否需要额外审批让模型根据上下文判断能否放行。这些能力都可以有价值但它们不能成为最终权威。因为模型的优势是处理模糊问题而最终边界面对的恰恰应该是明确问题。金额是否超过限制是明确问题。设备是否处于允许状态是明确问题。目标地址是否与确认对象一致是明确问题。独立授权是否全部到齐也是明确问题。不应该让一个擅长概率判断的模型去替代一组可以确定验证的执行条件。AI 可以负责理解“用户想做什么”但不能单独决定“现实最终允许发生什么”。聪明系统适合提出建议边界系统适合执行否决。聪明系统可以说“根据当前上下文这项操作看起来合理”边界系统则必须回答“它是否满足不可绕过的执行条件”。这是两个不同的问题。前者追求理解能力后者追求行为确定性。当企业把这两个角色混在一起时AI 的错误、偏差和被操纵风险就会直接进入现实执行。而当它们被分开AI 即使判断错误也不必然导致危险结果。六、一个可靠系统必须允许上层失败很多系统设计默认云端是正常的、管理员是可信的、策略是正确的、模型是理性的、通信是完整的。在这种假设下最后执行层只需要忠实地完成上层命令。但真正的安全设计必须反过来问如果 SaaS 被入侵呢如果管理员账号被接管呢如果模型被提示词注入呢如果审批人看到的是被包装后的摘要呢如果执行参数在确认后被重新绑定呢如果云端策略错误地允许了一项危险操作呢最后一层是否仍然拥有说“不”的能力如果答案是否定的那么系统只是把安全建立在上层永远正确的假设上。而任何需要上层永远正确才能安全的系统都无法应对真正的对抗环境。安全边界的价值不是上层正常时帮助系统执行而是上层失效时阻止错误落地。这也是为什么最终边界必须与上层保持一定程度的独立。它不能把 SaaS 的允许直接视为最终允许不能把管理员身份视为无限权限不能把审批记录视为执行结果一定正确也不能把 AI 的高置信度当作现实世界的通行证。它需要重新验证最终执行对象、参数、状态和约束。哪怕这样显得重复甚至显得笨。因为在安全系统里很多看似多余的检查恰恰是为了防止同一条错误链路一路畅通。七、Havenlon 为什么选择一条“不够灵活”的路Havenlon 的核心判断之一是灵活性必须停止在最终执行边界之前。上层 SaaS 可以负责组织、成员、策略、审批、风险信息和业务协同AI 可以理解意图、分析上下文并提出风险建议。但到了硬件执行层系统不应该继续无限追求通用和智能。这一层需要更加固执。它需要坚持某些规则不因云端变化而变化不因管理员身份而失效不因 AI 的解释而例外也不因为业务紧急就放弃最终验证。这意味着它可能不会成为最灵活的系统。它不会允许任何客户随意改写全部底层规则也不会把所有安全限制都做成后台开关。因为 Havenlon 并不认为 Owner 应该成为系统中的神也不认为一条软件策略应该拥有最终执行权。业务系统通过配置获得能力安全系统通过不可配置获得可信。这不是说系统永远不能升级而是说升级不能成为攻击者最容易利用的入口不是说所有客户必须使用完全相同的规则而是说每一套规则都必须存在无法被单点绕过的底线。在这样的架构里聪明被保留在需要聪明的地方固执则被保留在必须固执的地方。这可能正是 AI 时代更重要的系统分工。八、最后一层真正需要的是可证明今天的技术行业习惯用功能数量衡量系统能力。它支持多少场景可以接入多少平台能够处理多少种异常是否可以通过 AI 自动适配新的业务。但对于最终安全边界更重要的问题不是它能做多少事情而是我们是否能够证明它不会做某些事情。一个越通用的系统状态空间越庞大。它支持的脚本越多、接口越多、配置越多、动态逻辑越多就越难穷尽所有可能路径。而安全要求的不只是平均情况下表现良好而是在最坏情况下仍然守住边界。所以最终边界往往需要主动限制自身能力。更少的接口更少的状态更少的动态依赖更明确的输入输出更有限的执行范围。这不是能力不足而是为了让系统更容易被理解、测试、审计和验证。最后一道安全边界不应该追求聪明而应该追求固执、有限和可证明。未来AI 会越来越聪明上层软件也会越来越自动化。但这并不意味着所有系统都应该朝同一个方向演化。也许越是智能的时代越需要一些不够智能的东西。它们不试图理解所有理由不接受临时说服不擅长权衡复杂上下文也不会因为某个拥有最高权限的人提出要求就放弃原有约束。它们只是安静地守在那里确保某些事情不能发生。真正可靠的最后一层从来不是因为它知道得最多。而是因为它在最重要的事情上永远不愿意妥协。