Progent:LLM代理的可编程权限控制
Tianneng Shi, Jingxuan He, Zhun Wang, Linyu Wu, Hongwei Li, Wenbo Guo, Dawn Song
发布日期: 4/23/2025

摘要
LLM代理是一种新兴的AI系统形式,其中大型语言模型(LLMs)作为核心组件,利用一系列多样化的工具来完成用户分配的任务。尽管它们具有巨大的潜力,但LLM代理也带来了显著的安全风险。在与外部世界交互时,它们可能会遇到攻击者发出的恶意指令,从而执行危险的操作。解决这一问题的一个有前景的方法是实施最小权限原则:仅允许完成任务所必需的操作,同时阻止不必要的操作。然而,实现这一点颇具挑战性,因为它需要覆盖各种各样的代理场景,并同时保持安全性和实用性。 我们引入了Progent,这是首个针对LLM代理的权限控制机制。其核心是一个特定领域的语言,用于灵活地表达在代理执行过程中应用的权限控制策略。这些策略对工具调用提供了细粒度的约束,决定何时允许工具调用,并规定如果不允许则应采取何种替代措施。这使得代理开发者和用户能够为他们的特定使用案例制定合适的策略,并确定性地执行这些策略以保证安全性。得益于其模块化设计,集成Progent不会改变代理内部结构,并且只需要对代理实现进行最小的改动,从而增强了其实用性和广泛采用的可能性。为了自动化策略编写过程,我们利用LLMs根据用户查询生成策略,并动态更新以提高安全性和实用性。我们的广泛评估表明,在三个不同的场景或基准测试中(AgentDojo、ASB和AgentPoison),它能够提供强大的安全性并保持高实用性。此外,我们进行了深入分析,展示了其核心组件的有效性及其自动化策略生成机制在面对自适应攻击时的韧性。