你正在错误地进行AI渗透测试:为何提示工程远远不够

本文深入探讨了大语言模型(LLM)安全测试的局限性,指出静态提示检查无法应对对话上下文和对抗性操纵带来的深层风险,提出了基于真实攻击场景的测试方法和分层防御策略。

TL;DR

当前大多数LLM安全测试依赖于静态提示检查,但这会错过对话上下文和对抗性操纵带来的更深层风险。本文重点讨论真正的渗透测试需要采用场景驱动的方法,考虑这些模型如何解释人类意图,以及为什么传统防护措施往往失效。

如果您正在探索如何保护大语言模型(LLM),请不要错过我们的网络研讨会:Breaking AI: Inside the Art of LLM Pen Testing。该研讨会将更深入地探讨本文涵盖的技术、思维模式和实战经验。

正文

随着越来越多的组织将LLM集成到其产品和系统中,安全团队面临一个棘手的问题:如何以有意义的方式测试这些系统?

在Bishop Fox,我们的顾问一直在深入研究这一领域。我们一直在测试实际部署,从失败中学习并调整我们的方法。最近,我们召集团队讨论了哪些方法有效、哪些无效,以及安全测试需要如何演进。本文分享了该讨论的一些见解。

提示工程不等于安全测试

许多团队从提示工程开始。他们尝试通过硬编码提示或在开发过程中添加令牌过滤器来测试LLM。这对于捕捉明显问题很有帮助,但并不能真正告诉你系统是否安全。

然而,LLM不同于传统软件。它们基于上下文而非仅仅是代码进行响应。它们是在人类对话上训练的,这意味着它们继承了随之而来的所有不可预测性。语气或措辞的微小变化可能导致完全不同的输出。

要正确测试它们,你需要像攻击者一样思考。你需要理解人们如何扭曲语言、转变意图,并利用上下文绕过规则。

例如,我们的一位顾问遇到了一个安全策略,内容是"儿童不应玩火"。他要求模型为成年人重写这条规则,逻辑是成年人不应有相同的限制。模型翻转了含义并建议"你应该玩火"。这是一个小变化,但却是一个明显的失败。

这类攻击之所以有效,是因为LLM试图提供帮助。它们不仅仅是遵循规则;它们会解释意图。这正是真正的风险所在。

我们必须将LLM视为对话系统,而不是命令行工具。因此,测试必须专注于模拟真实用户或攻击者可能如何滥用模型的现实场景。

真正的AI防御是什么样子

过滤输出或添加速率限制是不够的。如果你想要围绕LLM构建安全系统,你需要将其视为任何其他高风险组件。

我们团队的建议如下:

  • 尽可能在沙盒环境中运行AI模块 将LLM与核心系统和敏感数据隔离,以控制任何意外或对抗性输出。默认将这些模型视为不可信,并在严格边界后部署,限制对更广泛环境的访问。

  • 将模型与任何敏感内容(如数据访问或特权操作)分开 不要让LLM直接触发敏感操作,如数据库查询、文件访问或配置操作。相反,通过具有明确验证、批准步骤或人工审查的中间逻辑路由这些请求。

  • 实时监控异常行为或违规迹象 设置专门针对LLM行为的日志记录和监控:意外完成、策略违规或语气或输出模式的突然变化。使用这些信号在潜在滥用或提示注入尝试升级之前检测它们。

  • 手动审查任何触发提升访问或决策的内容 任何影响用户、权限或关键工作流程的AI生成操作都应经过人工批准。这并不意味着审查每个响应——但确实意味着在允许模型以更高信任度操作的任何地方插入摩擦。

  • 构建深度防御 结合分层控制、主动防护栏,甚至使用辅助AI系统在允许操作之前审查或验证主模型的输出。

这与我们在安全其他领域使用的分层方法相同,只是应用于生成系统。

当攻击不再重复时

这是一个挑战:某些攻击不会以相同的方式发生两次。

这不一定是测试的失败。这是这些模型工作方式的副产品。相同的输入可能产生不同的结果,具体取决于时间、先前的消息,甚至措辞的微小变化。

当这种情况发生时,我们会记录一切。我们提供完整的记录、周围环境以及我们如何避免类似问题的建议。我们专注于为什么它有效——而不仅仅是发生了什么。

当前有效的测试方法

这个领域变化很快。今天有效的方法可能下周就失效了。但以下是我们目前看到成功的方法:

  • 针对已知风险(如提示注入)的自动化测试
  • 手动探索以发现不可预测的行为
  • 模拟现实世界使用和滥用的场景驱动测试

这不是关于完美。而是关于灵活性、意识和对实际影响的关注。

领导者需要知道什么

如果你负责交付或保护AI系统,请记住以下几点:

  • CI/CD提示测试不足以声称某物安全
  • 攻击者利用上下文,而不仅仅是内容
  • LLM创建了传统软件中不存在的新型攻击面
  • 安全架构始于理解这些模型的行为方式
  • 越早投资于真实测试,你在未来就越有信心

联系我们

我们正在积极测试和学习。如果你也在类似的路径上,我们很乐意交流经验。

有故事要分享?遇到了奇怪的边缘情况?我们很乐意让你与我们团队中深入从事这项工作的人联系。


关于作者 Brian D.
安全顾问 III
Brian D.是一位安全顾问,在进攻性安全、全栈开发和网络防御方面拥有深厚专业知识。他之前曾担任高级分析师和开发人员,并领导过一个融合技术和故事叙述的游戏工作室。Brian持有OSCP、PNPT和eJPT等认证,并拥有专注于安全和密码学的信息技术学士学位。

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计