致命的耳语 - 提示词注入

引言

在 OWASP 发布的 2025 版 LLM 应用十大安全风险清单中,提示词注入(Prompt Injection)位列第一,是公认的最大安全风险。

定义

提示词注入是指攻击者通过特定输入,改变大模型的预定行为或操纵其输出的漏洞。

其本质是模型无法区分指令与数据,导致恶意内容被误当作指令执行。

越狱

提示词注入是操纵模型行为的广义概念。

越狱是其特定形式,指诱导模型完全无视安全协议。

防御上,注入攻击可通过系统提示词和输入过滤缓解。

越狱则需要持续更新模型的底层训练和安全机制来预防。

类型

分为直接注入和间接注入两种类型。

  • 直接注入: 用户直接操作提示词,如直接命令 LLM 忽略规则。

  • 间接注入: 攻击者在 LLM 引用的网页或文件中隐藏指令,如多模态图片中隐藏的指令。

后果

提示词注入攻击成功会引发一系列后果。

其严重程度取决于业务上下文以及模型被赋予的代理权限。

9个典型攻击场景和6个案例如下:

防御方案

由于生成式 AI 随机性的特质,目前尚未存在能够完美预防提示词注入的绝对方案。

微调与 RAG 也无法根除此漏洞。

防御必须抛弃单点依赖,转向系统级的纵深架构。

其本质是构建一套即使大模型完全被操控,也无法对业务产生实质破坏的坚韧架构。

具体防御策略

  • 策略1:限制模型行为

    在系统提示词中明确模型角色、能力边界,强制要求忽略任何试图修改核心指令的尝试。

  • 策略2:输出格式验证

    定义明确的输出格式,如 JSON,并使用确定性代码验证其合规性。

  • 策略3:输入输出过滤

    应用语义过滤器和字符串检查。引入 RAG 三元组评估,通过检查上下文相关性、地面性(Groundedness)和问题回答相关性来识别恶意输出。

  • 策略4:执行最小权限原则

    为模型提供独立的 API 令牌,将敏感功能封装在确定性代码中执行,而非直接交给模型。

  • 策略5:高风险操作的人为审批

    针对特权操作实施人工干预,确保关键决策须经人工核准方可执行。

  • 策略6:隔离外部内容

    将不可信的外部内容,如网页、文件,与用户提示词进行物理或逻辑上的分离并清晰标记,以减少其对模型指令的干扰。

  • 策略7:对抗性测试

    定期进行红蓝对抗模拟,将模型视为不受信任的攻击者来测试安全边界。

相关推荐
一点一木2 小时前
🚀 2026 年 8 月 GitHub 十大热门项目排行榜 🔥
人工智能·github
ssshooter2 小时前
现在网页都能提供 MCP 了?!
前端·人工智能·程序员
京东云开发者2 小时前
Claude Code vs Codex 记忆体系深度对比
人工智能
不加辣椒3 小时前
第 4 章 什么是 Harness Engineering
人工智能
桃西西呀3 小时前
上下文窗口都卷到 100 万了,大模型为什么还在为"位置"发愁?
人工智能·llm·ai编程
阿拉斯攀登3 小时前
SpringBoot整合MQTT:后端订阅设备数据、解析传感器报文
人工智能
然我4 小时前
模型不是 Agent:从零实现一个最小 Agent Loop
前端·人工智能·agent
黄油面包4 小时前
Codex 额度三天见底后,我重新做了一周预算
前端·人工智能
AI效率君4 小时前
Deer‑Flow 2.0 + Go‑MCP‑Server(add加法工具)保姆级完整教程
人工智能·agent
阿拉斯攀登4 小时前
SpringCloud微服务MQTT架构:设备消息统一接入、业务分发设计
人工智能