![]()
182次攻击,同一个模型,同一个攻击者——拿着完全合法的管理员权限。传统安全防线在这种场景下几乎裸奔,AgentLock的v1.2版本却把拦截率从30%提到了接近满格。
这不是什么模型升级的故事。模型没变,变的是授权层怎么思考"信任"这件事。
最棘手的攻击:合法身份,恶意意图
想象一个场景:攻击者没有破解任何密码,没有绕过任何认证。他坐在一个完全合法的管理员会话里,只是往对话里塞了点"调料"——注入指令、毒化上下文、社会工程学话术。
AI代理(AI Agent,即具备自主决策能力的智能程序)照做了。不是因为它被入侵了,是因为它太信任这个会话。
这就是"困惑副手问题"(Confused Deputy Problem):代理的权限是真实的,决策逻辑却被劫持。传统的二进制允许/拒绝机制在这里彻底失效——凭证检查全绿,角色验证通过,但代理正在被操纵着滥用自己已有的权力。
AgentLock团队用182个对抗样本测试了这个场景。结果触目惊心:没有v1.2防护时,认证层挡住了55次攻击,剩下的127次里,深度防御(注入检测、信任降级、PII拦截)只抓到30%。
工具滥用、工具链攻击、多代理混淆、角色劫持、供应链攻击——这些类别的得分是0%。代理对每个请求都说"好的",因为请求来自一个"合法"的管理员。
![]()
v1.2的三张牌:不是拒绝,而是"等等"
AgentLock的解法很产品经理思维:当二进制答案不够用时,引入第三种状态。
核心洞察来自一个反直觉的事实——有时候正确的响应不是"允许"或"拒绝",而是"暂停,问人"或"允许但脱敏"。v1.2为此设计了三个互锁机制:
DEFER(延迟执行):遇到模糊上下文就挂起。如果会话首次调用就指向高风险工具,且没有任何历史记录,DEFER选择暂停而非猜测。如果提示扫描器在同一回合发出警报同时有工具调用尝试,DEFER同样挂起。超时自动拒绝。
代码层面的配置很直白——给工具注册时声明风险等级和延迟策略,系统就会在这些节点自动刹车。
STEP_UP(人工升级):当硬化引擎检测到风险升高且工具为高/关键风险时,强制引入人工确认。这专门用来捕捉多工具升级模式和"被拒后重试"的绕过行为。
比如邮件发送工具,虽然admin和support角色都能用,但一旦检测到会话中已涉及多个PII(个人身份信息)处理工具,就会触发二次确认。
MODIFY(参数变形):工具被授权运行,但输出包含敏感信息时,在流入大语言模型(LLM,即底层驱动AI的神经网络模型)之前自动脱敏。数据用了,但代理"看不见"原始内容。
![]()
从30%到接近满格:数字背后的设计选择
三个机制叠加的效果是质变。182次攻击中,原本漏掉的127次里,大部分现在被DEFER的上下文敏感暂停和STEP_UP的人工拦截点捕获。
关键改进在于攻击面的重新定义。传统安全把边界画在"谁可以进",AgentLock把防线推进到"这个具体请求在这个具体时刻是否可信"。同一个管理员,凌晨3点首次调用删除数据库工具,和下午2点在常规工作流中调用,得到的待遇完全不同。
这种"渐进式信任"的设计,本质上是在模仿人类组织的操作常识——新员工和老员工权限相同,但关键操作通常需要双重确认。AgentLock把它自动化了。
团队没有公布最终拦截的具体数字,但从架构描述推断,剩余漏网之鱼应该集中在那些完美模拟正常行为模式的长期潜伏攻击——这属于任何自动化系统都难解的范畴。
一个值得玩味的细节
看代码示例会发现一个产品取舍:超时动作统一设为"deny"(拒绝)。这意味着系统宁可误伤也不放行——典型的安全优先于可用性设计。
但在实际部署中,这会引发多少"为什么我的合法操作被卡住了"的工单?AgentLock的文档没有提。也许下一版会加入更精细的降级策略,或者企业客户愿意为安全支付这个摩擦成本。
当AI代理被赋予越来越多真实世界的操作权限,我们或许需要接受一个事实:完美的自动化是个陷阱。AgentLock的实验暗示,更聪明的做法是在关键节点故意制造"摩擦"——不是系统变慢,而是给人类留出介入的窗口。
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.