
前沿资讯
1742974071更新
1
谷歌DeepMind的研究团队发表一篇“从设计层面抵御提示注入攻击(Defeating Prompt Injections by Design)”的论文,提出了一种名为CaMeL(CApabilities for MachinE Learning)的全新防御机制,以解决语言模型在处理不可信数据时面临的提示注入攻击问题。
随着语言模型越来越多地被应用于与外部环境交互的智能系统中,它们面临着提示注入攻击的威胁。攻击者可以在模型的上下文插入恶意指令,从而窃取数据或执行有害操作。当前的防御方法大多依赖于训练或提示模型遵守安全策略,但由于缺乏强大的方法来正式定义和执行针对不同数据的模型功能安全策略,这些方法的效果有限。
CaMeL的设计灵感来自传统软件安全概念,如控制流完整性、访问控制和信息流控制。它通过在模型周围创建一个保护系统层,有效地减轻了提示注入攻击的危险后果。具体来说,CaMeL会从可信查询中提取控制和数据流,确保不受信任的数据不会影响程序流。同时,CaMeL利用“能力”这一概念,通过为每个值分配元数据来限制数据和控制流,从而防止未经授权的数据泄露。
在实验评估中,研究团队使用了AgentDojo这一最新的智能系统安全基准。结果显示,CaMeL在解决AgentDojo中的安全任务方面表现出色,能够在保证一定实用性的同时,有效抵御提示注入攻击。在一些任务中,CaMeL甚至提高了某些模型的成功率。例如,Gemini Pro 2.0在启用CaMeL的情况下,在银行任务套件上的成功率高于使用官方工具调用API时的成功率。
此外,CaMeL在安全评估中也表现优异。在没有任何安全策略的情况下,CaMeL显著降低了所有模型的攻击成功率,在许多情况下甚至完全消除了攻击。当引入安全策略后,CaMeL进一步提高了系统的安全性,虽然仍存在一些无法完全阻止的攻击,但这些攻击大多不属于CaMeL的防御目标范围。与其他防御方法相比,CaMeL在安全性方面具有显著优势,同时对模型实用性的影响较小。
然而,CaMeL也并非完美无缺。它存在一些局限性,例如难以防御不影响控制流和数据流的攻击,并且在处理某些复杂情况时可能需要用户干预,这可能会导致用户疲劳。此外,CaMeL还面临着一些潜在的攻击风险,如侧信道攻击。研究团队认为,CaMeL仍然是一个重要的进展,为模型的安全应用提供了更强大的保障。
未来,研究团队计划进一步改进CaMeL。他们考虑使用不同的编程语言来提高系统的安全性和效率,进行形式验证以确保CaMeL的安全性,以及结合上下文完整性工具来提升安全决策的准确性。
参考资料:https://arxiv.org/abs/2503.18813