资讯

提示词注入是什么?藏在内容里的指令劫持了 AI

2026-11-053 分钟阅读百科
TL;DR提示词注入(Prompt Injection)是针对大语言模型应用的一类安全攻击,攻击者把恶意指令混入用户输入或模型读取的网页、文档、邮件中,使模型把它当作指令执行,从而偏离原任务、泄露数据或进行未授权操作,被 OWASP 列为大模型应用的首要安全风险。

提示词注入(Prompt Injection)是一种针对大语言模型应用的安全攻击:攻击者把精心设计的指令混进模型要处理的内容中,让模型误把这些内容当成指令来执行,从而偏离开发者或用户原本的意图。这个名称由安全研究者 Simon Willison 在 2022 年提出,借鉴了传统网络安全中的“SQL 注入”攻击。

它是怎么发生的

大模型应用通常会把开发者写的系统指令、用户的问题,以及从外部获取的内容,比如网页、文档、邮件、搜索结果,拼接在一起交给模型处理。问题在于,对模型来说,这些全都是文字,它没有一种绝对可靠的办法来区分“哪些是应该遵守的指令”和“哪些只是需要处理的数据”。如果外部的内容中混入了一段指令,模型就可能照做。

两种类型

直接注入:用户在输入中直接写入试图覆盖系统设定的指令,比如要求模型忽略之前的规则。这和越狱有一定的重叠。间接注入:危害更大,也更隐蔽。攻击者并不直接与模型对话,而是把恶意的指令藏在模型将来会读取的内容里,比如一个网页、一份共享文档、一封邮件,甚至是用白色的小字或图片中的文字隐藏起来,人眼看不出来。当用户让 AI 助手去总结这个网页、处理这封邮件时,模型就会读到并可能执行这些隐藏的指令。用户自己完全不知情。

为什么在智能体时代风险更大

如果模型只是用来聊天,提示词注入最多让它说一些不该说的话。但如今,大模型越来越多地被做成能够行动的 AI 智能体:可以浏览网页、读写文件、收发邮件、调用各种接口、操作用户的账户。一旦被注入的指令劫持,后果可能非常严重:比如把用户的隐私数据发送给攻击者、以用户的名义发送消息、修改或删除文件。安全研究者 Simon Willison 总结了一个特别危险的组合:当一个 AI 系统同时具备访问私密数据的能力、会接触不可信的外部内容、又能够向外部发送信息时,就存在数据被窃取的严重风险。开放式 Web 应用程序安全项目(OWASP)在大模型应用的十大安全风险中,把提示词注入列为第一位。

如何防范

目前业界普遍认为,提示词注入还没有能够彻底解决的办法,需要多层防护:训练模型区分指令的来源和优先级,让外部内容中的指令不被当作命令;把外部内容明确地标记为“不可信的数据”;对输入和输出进行检测,识别可疑的指令和异常的数据外传;遵循最小权限原则,只给 AI 完成任务所必需的权限;对敏感的、不可逆的操作,比如付款、发送邮件、删除数据,必须由用户确认;把处理不可信内容的模型和拥有高权限的模型隔离开;以及持续的安全测试和监控。

相关话题与公司