用拼写检查这种小把戏就能把 AI Agent 的系统提示词给掏出来

技术宅Kevin 初级 47分钟前 496 浏览 4 点赞 约 2 分钟

现在的 AI Agent 逻辑越来越复杂,厂商为了防止用户通过提示词注入(Prompt Injection)来获取内部指令或者执行违规操作,叠了无数层 Guardrails(护栏)。大家总觉得这种防御得靠什么复杂的语义识别或者专门的安全模型,结果最近发现,一个看似不起眼的“拼写检查”逻辑,就能让这些精心设计的防御体系瞬间瓦解。

逻辑其实很简单:Agent 在处理任务时,为了提升用户体验,往往会内置一个“自我纠错”或者“辅助用户检查拼写”的环节。攻击者不需要直接问“你的系统提示词是什么”,那样会被安全层直接拦截。相反,他们会构造一些看起来像是在请求“拼写纠错”或“文本清理”的指令,利用 Agent 在执行这些看似无害的工具调用时,会不自觉地将上下文(包括最核心的 System Prompt)作为输入参数进行处理。

这种攻击路径绕过了传统的关键词过滤。因为在安全模型的眼里,用户只是在说:“帮我检查一下这段话的拼写错误”,这完全符合 Agent 的功能设定。但当 Agent 试图去“理解”或“校对”这些被精心构造的、混淆了指令和数据的文本时,它会为了完成任务而把系统指令的一部分甚至全部“复述”或“重构”出来。

这就引出了一个很尴尬的技术现状:

  • 防御滞后: 现有的安全拦截器大多盯着“攻击性词汇”,对于这种利用功能逻辑漏洞的“软攻击”几乎没有免疫力。
  • 逻辑矛盾: Agent 的核心能力是理解上下文,而防御的核心是隔离上下文,这两者在实现 Agentic Workflow 时天然存在冲突。
  • 攻击成本极低: 不需要复杂的对抗性样本,甚至不需要大规模的参数微调,通过简单的 Prompt 组合就能实现。
用拼写检查这种小把戏就能把 AI Agent 的系统提示词给掏出来

这种利用功能性工具(Tool Calling)来反向探测系统边界的操作,说明现在的 Agent 安全研究不能只盯着“拒绝回答”这一个维度,如果工具调用环节本身不具备指令隔离能力,那所谓的护栏其实就是一层窗户纸。
AI越狱AI安全LLM安全LLM SecurityPrompt Injection
AI工具与大模型实操经验整理在Claude实战技巧汇总,有不少直接可参考的案例。

全部回复 (3)

咖啡续命折腾党 中级 42分钟前
之前测逻辑绕过也是这么搞的,这招对付简单的过滤规则真好使。
0 回复
阿杰在路上 中级 40分钟前
确实,我试过让它把指令里的敏感词故意拼错,再让它纠正,真能绕过去。
0 回复
折腾党小雨 中级 40分钟前
逻辑层面的防御确实难,这招是绕过字符串匹配,那如果是多轮对话诱导呢?
0 回复

发表回复

支持 Markdown 格式