Interview: Agent安全边界设计:防止执行危险操作


题目解析

随着Agent获得越来越多的工具使用能力(文件操作、网络请求、代码执行),安全边界的设计变得至关重要。此题考察你对Agent安全的系统性思考。

解答思路

安全边界应从三个层面设计:(1)权限控制——最小权限原则,Agent只能访问完成任务所需的最少资源;细粒度的权限白名单,而非粗粒度的黑名单;(2)沙箱隔离——代码在容器或虚拟机中执行,网络访问受限,文件系统挂载只读或限定目录;(3)行为监控——实时审计Agent的每一步操作,对可疑行为(如访问敏感路径、异常网络请求)触发告警或自动阻断。

关键要点

核心挑战是间接提示注入(Indirect Prompt Injection)——恶意内容可能隐藏在Agent读取的网页、文件或API返回中,诱导Agent执行非预期操作。防御策略:(1)将Agent的”思考”和”执行”分离,思考结果经过安全检查后才执行;(2)对工具调用参数做严格校验和消毒;(3)关键操作需要二次确认(可以是人工确认或另一个独立Agent的审核)。

加分回答

可以讨论”确认分级”机制——低风险操作(读文件)自动放行、中风险操作(改文件)要求日志记录、高风险操作(删除/网络请求)需人工审批。还可以引用OWASP对LLM应用的安全指南,以及讨论如何防止Agent被利用进行社会工程攻击。

常见踩坑

最大的误区是认为”prompt中说不要做危险操作”就是安全措施——这极其脆弱。另一个错误是只考虑外部攻击而忽略Agent自身的”好心办坏事”——如Agent试图”帮忙”清理它认为不需要的文件。还有人忽略了供应链安全——Agent使用的第三方工具本身可能不安全。