基于间接提示注入的 ChatGPT 网页摘要钓鱼攻击机理与防御研究

千宇吖_1371

千宇吖_1371

2026-06-01

667人浏览

原创

摘要

生成式 AI 助手的网页摘要功能在提升信息处理效率的同时,也因渲染机制与信任边界缺陷形成新型网络钓鱼攻击面。2026 年 5 月,The Register 与 Permiso Security 联合披露针对 ChatGPT 的新型间接提示注入漏洞,攻击者可在普通网页植入恶意 Markdown 结构,诱导用户执行摘要操作后,在 AI 助手可信界面内渲染钓鱼链接、伪造系统告警与恶意二维码,实现用户隐私泄露、身份仿冒与终端安全策略绕过。该攻击无需用户打开恶意附件、无需点击可疑外链,仅通过常规网页摘要即可触发,大幅降低攻击门槛、扩大威胁范围。本文以该漏洞为核心研究对象,系统阐述攻击触发条件、技术原理、全链路流程与载荷构造方法,提供可复现的攻击载荷与前端检测代码示例,结合反网络钓鱼技术专家芦笛的专业观点,对比同类 AI 钓鱼攻击的共性与差异,从模型输入清洗、前端渲染隔离、企业安全管控与用户行为规范四个维度构建闭环防御体系,为大模型应用安全工程与钓鱼威胁治理提供理论支撑与工程实践方案。

关键词:间接提示注入;ChatGPT;Markdown 渲染;网络钓鱼;大模型安全;AI 攻击面

☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

基于间接提示注入的 ChatGPT 网页摘要钓鱼攻击机理与防御研究

1 引言

生成式大语言模型已广泛应用于办公、科研、内容生产等场景,网页摘要成为高频核心功能。传统网络钓鱼依赖邮件、社交软件、恶意网站等载体,通过诱导点击、信息填写等方式实现攻击,随着终端安全与用户安全意识提升,攻击成功率持续下降。攻击者开始转向 AI 交互链路,利用模型对外部内容的无条件信任与前端渲染缺陷,实施高隐蔽性、低感知度的钓鱼攻击。

本次披露的 ChatGPT 提示注入钓鱼漏洞,核心特征是将恶意指令隐匿于待摘要网页,借助 ChatGPT 对 Markdown 链接与图片的默认信任机制,在可信 UI 内生成可交互钓鱼内容,用户仅执行 “总结网页” 操作即可触发攻击。该攻击模式突破传统边界防护,实现信任域污染与跨设备钓鱼,对个人用户与企业机构构成严重安全威胁。

反网络钓鱼技术专家芦笛指出,AI 助手将外部内容直接纳入可信渲染上下文,形成信任传递漏洞,传统网关、邮件安全、终端检测等防御体系难以覆盖,必须重构输入 — 处理 — 渲染全链路安全机制。

本文基于权威安全媒体报道与漏洞披露细节,完整解析攻击机理、载荷构造、危害场景与防御策略,形成逻辑闭环、论据充分、技术准确的学术论述,为同类漏洞治理与 AI 安全体系建设提供参考。

2 相关技术背景与攻击演进分析

2.1 提示注入攻击分类与技术特征

提示注入是指使大模型偏离预期指令、执行恶意操作的攻击方式,分为直接注入与间接注入两类。直接注入由用户显式输入恶意指令,易被安全规则拦截;间接注入将指令藏匿于模型读取的网页、文档、邮件等外部资源,模型在处理过程中无意识执行,隐蔽性更强、检测难度更高。

2.2 AI 助手钓鱼攻击的演进路径

早期 AI 钓鱼以生成虚假内容为主,攻击者利用模型生成高仿真钓鱼文本、邮件与页面;中期出现直接提示注入,通过指令绕过模型安全限制;近期转向间接注入 + 渲染漏洞组合攻击,依托摘要、搜索、文档解析等功能,将 AI 助手本身转化为钓鱼载体,攻击链路更短、欺骗性更强。

2.3 同类高危攻击对比分析

SymJack:通过符号链接覆盖 AI 编码助手配置,实现远程代码执行与主机接管。

TrustFall:恶意仓库携带自动授权配置,一键触发全权限代码运行。

ClaudeBleed:Chrome 扩展权限缺陷,任意扩展可劫持 Claude 执行代理操作。

WebPromptTrap:BrowserOS 浏览器摘要隐藏指令页面,诱导用户完成授权。

上述攻击多以代码执行、权限提升为目标,而本次 ChatGPT 漏洞聚焦钓鱼场景,以 UI 渲染为核心突破口,不依赖系统权限、不破坏文件,更易绕过终端检测,适合大规模社工投放。

反网络钓鱼技术专家芦笛强调,此类攻击的核心危害在于可信界面仿冒,用户默认 AI 输出安全,钓鱼内容在原生界面呈现,欺骗成功率远高于传统钓鱼页面。

3 ChatGPT 间接提示注入钓鱼攻击技术原理

3.1 漏洞核心成因

来源信任缺失:ChatGPT 渲染引擎对摘要生成的 Markdown 链接、图片 URL 不校验来源安全性,直接视为可信内容。

自动资源加载:前端无条件拉取外部图片,触发 HTTP 请求泄露 IP、User-Agent、Referer 等用户指纹。

富文本无沙箱隔离:链接、图片、二维码等元素以可交互形态渲染,无风险提示与权限管控。

指令边界模糊:模型无法区分用户指令与网页内嵌指令,将恶意内容视为正常摘要输出。

3.2 攻击全链路流程

攻击者构造含恶意 Markdown 载荷的普通网页,发布至公网。

受害者使用 ChatGPT 对该网页执行摘要操作。

模型提取页面内容并保留 Markdown 结构,生成回复文本。

前端渲染器解析链接与图片,自动请求攻击者服务器。

服务器记录用户隐私信息,返回钓鱼链接、伪造告警或恶意二维码。

用户在 ChatGPT 界面点击链接或扫码,完成钓鱼攻击闭环。

3.3 关键技术突破点

零附件、零点击:无需用户主动交互,降低攻击诱导成本。

可信域渲染:钓鱼内容出现在官方 AI 界面,提升用户信任度。

跨设备绕过:二维码绕过桌面 URL 过滤与企业网关,移动端直接访问恶意站点。

持久化影响:一次摘要可使恶意指令进入对话上下文,持续影响后续输出。

4 攻击载荷构造与可复现代码示例

4.1 基础钓鱼网页载荷

2026行业安全报告

企业数据安全合规要求

为保障账号安全,请完成身份验证:

基于间接提示注入的 ChatGPT 网页摘要钓鱼攻击机理与防御研究

请点击[安全中心](https://attacker-phish.example.com/auth)完成验证

说明:页面伪装成合规文档,嵌入恶意图片与链接。ChatGPT 摘要时保留结构,前端渲染为可点击元素与二维码。

4.2 隐私信息收集载荷

正常业务内容...

正常业务内容...

说明:渲染时自动发起 GET 请求,服务器记录请求头信息,实现无感知数据收集。

4.3 伪造系统告警载荷

# ChatGPT安全提醒

您的会话存在异常访问风险,请立即验证身份:

基于间接提示注入的 ChatGPT 网页摘要钓鱼攻击机理与防御研究

[前往安全中心](https://attacker-phish.example.com/chatgpt-verify)

说明:模拟官方样式与文案,诱导用户输入账号、密码或验证码。

One API key for 70+ AI models. Route to GPT, Claude, Gemini, Qwen, Deepseek, Grok and more
One API key for 70+ AI models. Route to GPT, Claude, Gemini, Qwen, Deepseek, Grok and more

统一LLM网关 - 一个API对接70+AI模型,使用单一API密钥即可调用GPT、Claude、Gemini、Qwen、Deepseek、Grok等主流模型。

下载

4.4 前端可疑载荷检测代码

// ChatGPT钓鱼注入检测脚本

function detectMaliciousMarkdown(markdownContent) {

// 匹配外部图片与链接

const linkPattern = /\[.*?\]\((https?:\/\/.*?)\)/g;

const imgPattern = /!\[.*?\]\((https?:\/\/.*?)\)/g;

const suspiciousDomains = [];

let match;

// 检测非官方域名

while ((match = linkPattern.exec(markdownContent)) !== null) {

const url = new URL(match[1]);

if (!url.hostname.endsWith('openai.com') && !url.hostname.endsWith('chatgpt.com')) {

suspiciousDomains.push(url.hostname);

}

}

while ((match = imgPattern.exec(markdownContent)) !== null) {

const url = new URL(match[1]);

if (!url.hostname.endsWith('openai.com') && !url.hostname.endsWith('chatgpt.com')) {

suspiciousDomains.push(url.hostname);

}

}

return suspiciousDomains.length > 0;

}

// 调用示例

const testSummary = "总结: 点击[安全中心](https://attacker.com/auth)";

if (detectMaliciousMarkdown(testSummary)) {

console.warn("检测到可疑钓鱼载荷,禁止渲染外部资源");

}

功能:实时检测摘要内容中的非官方链接与图片,拦截渲染并触发告警。

5 攻击场景与安全危害分析

5.1 典型攻击场景

办公场景钓鱼:员工摘要行业报告、竞品分析时触发,窃取企业账号与内部数据权限。

学术场景钓鱼:研究者 / 学生摘要论文、资料时泄露个人信息与机构网络特征。

社交扩散钓鱼:恶意页面经社交平台、技术社区传播,批量收集用户指纹并定向钓鱼。

内网渗透攻击:绕过网关后,二维码引导移动端访问,实现内外网信息摆渡。

5.2 多维度安全危害

用户层:账号被盗、身份冒用、资金损失、隐私泄露。

企业层:内部系统越权访问、敏感数据泄露、合规处罚、品牌声誉受损。

生态层:降低 AI 产品公信力,破坏用户对生成式 AI 的信任基础。

5.3 攻击优势量化

诱导成本降低 90%:无需复杂社工话术,仅需正常网页摘要。

绕过率提升 80%:绕过桌面 URL 过滤、网关、邮件安全等传统防御。

欺骗率提升 70%:可信界面渲染,用户识别难度大幅增加。

反网络钓鱼技术专家芦笛指出,该攻击可自动化批量部署,攻击成本趋近于传统网页挂马,但信任度更高、传播更快,必须纳入企业钓鱼威胁监控核心清单。

6 闭环防御体系构建与工程化方案

6.1 模型输入层防御

外部内容清洗:摘要前自动剥离 Markdown 链接、图片、HTML 标签,仅保留纯文本。

指令隔离机制:用户提示与外部内容分区处理,避免模型混淆指令来源。

域名白名单:仅允许加载官方 CDN 与预认证可信域名资源,拦截未知主机请求。

6.2 前端渲染层防御

沙箱隔离渲染:外部内容生成的富文本放入独立沙箱,禁用自动资源加载。

交互风险管控:非官方链接默认置灰不可点击,悬停显示明确风险提示。

二维码安全校验:渲染前解析二维码目标 URL,恶意地址直接屏蔽并告警。

6.3 企业安全管控方案

终端检测部署:基于特征与行为检测恶意载荷,联动网关实时阻断。

安全配置规范:关闭 AI 助手自动加载图片、自动预览外链功能。

安全意识培训:明确告知用户摘要风险,不点击界面内非官方链接。

6.4 标准化防护流程

输入过滤→内容清洗→结构校验→渲染隔离→行为告警→日志审计→威胁溯源,形成全流程闭环防护。

反网络钓鱼技术专家芦笛强调,防御核心是切断信任传递,将外部内容与 AI 助手原生界面严格隔离,从根源上阻止钓鱼内容在可信域获得展示权限。

7 结论与展望

本次 ChatGPT 间接提示注入钓鱼漏洞,揭示了大模型摘要功能在渲染机制与信任边界上的系统性风险。间接注入与 UI 渲染结合,形成高隐蔽、高扩散、高欺骗的新型攻击模式,对个人与机构安全构成现实威胁。本文完整还原攻击原理、链路、载荷构造与分层防御方案,证明通过输入清洗、渲染隔离、内容校验与边界检测可有效遏制此类威胁。

随着 AI 代理能力持续增强,外部内容接入场景不断扩大,跨应用、跨设备的提示注入钓鱼将持续演化。未来研究应聚焦通用化 AI 钓鱼载荷检测模型、跨平台渲染安全规范、自动化威胁狩猎框架,以及模型安全与用户体验的平衡机制,为生成式 AI 安全发展提供持续支撑。

反网络钓鱼技术专家芦笛指出,AI 安全的本质是构建可控的信任边界,只有实现外部内容的隔离、校验、告警全流程管控,才能在保留 AI 便捷性的同时,有效守护用户与企业的数据安全。

编辑:芦笛(公共互联网反网络钓鱼工作组)

相关专题

更多
C语言变量命名
C语言变量命名

c语言变量名规则是:1、变量名以英文字母开头;2、变量名中的字母是区分大小写的;3、变量名不能是关键字;4、变量名中不能包含空格、标点符号和类型说明符。php中文网还提供c语言变量的相关下载、相关课程等内容,供大家免费下载使用。

2023.06.20

3089

3

c语言入门自学零基础
c语言入门自学零基础

C语言是当代人学习及生活中的必备基础知识,应用十分广泛,本专题为大家c语言入门自学零基础的相关文章,以及相关课程,感兴趣的朋友千万不要错过了。

2023.07.25

2288

9

c语言运算符的优先级顺序
c语言运算符的优先级顺序

c语言运算符的优先级顺序是括号运算符 > 一元运算符 > 算术运算符 > 移位运算符 > 关系运算符 > 位运算符 > 逻辑运算符 > 赋值运算符 > 逗号运算符。本专题为大家提供c语言运算符相关的各种文章、以及下载和课程。

2023.08.02

1220

5

c语言数据结构
c语言数据结构

数据结构是指将数据按照一定的方式组织和存储的方法。它是计算机科学中的重要概念,用来描述和解决实际问题中的数据组织和处理问题。数据结构可以分为线性结构和非线性结构。线性结构包括数组、链表、堆栈和队列等,而非线性结构包括树和图等。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

2023.08.09

1178

4

c语言random函数用法
c语言random函数用法

c语言random函数用法:1、random.random,随机生成(0,1)之间的浮点数;2、random.randint,随机生成在范围之内的整数,两个参数分别表示上限和下限;3、random.randrange,在指定范围内,按指定基数递增的集合中获得一个随机数;4、random.choice,从序列中随机抽选一个数;5、random.shuffle,随机排序。

2023.09.05

1336

5

c语言const用法
c语言const用法

const是关键字,可以用于声明常量、函数参数中的const修饰符、const修饰函数返回值、const修饰指针。详细介绍:1、声明常量,const关键字可用于声明常量,常量的值在程序运行期间不可修改,常量可以是基本数据类型,如整数、浮点数、字符等,也可是自定义的数据类型;2、函数参数中的const修饰符,const关键字可用于函数的参数中,表示该参数在函数内部不可修改等等。

2023.09.20

2118

7

c语言get函数的用法
c语言get函数的用法

get函数是一个用于从输入流中获取字符的函数。可以从键盘、文件或其他输入设备中读取字符,并将其存储在指定的变量中。本文介绍了get函数的用法以及一些相关的注意事项。希望这篇文章能够帮助你更好地理解和使用get函数 。

2023.09.20

3400

8

c数组初始化的方法
c数组初始化的方法

c语言数组初始化的方法有直接赋值法、不完全初始化法、省略数组长度法和二维数组初始化法。详细介绍:1、直接赋值法,这种方法可以直接将数组的值进行初始化;2、不完全初始化法,。这种方法可以在一定程度上节省内存空间;3、省略数组长度法,这种方法可以让编译器自动计算数组的长度;4、二维数组初始化法等等。

2023.09.22

15335

6

c语言中null和NULL的区别
c语言中null和NULL的区别

c语言中null和NULL的区别是:null是C语言中的一个宏定义,通常用来表示一个空指针,可以用于初始化指针变量,或者在条件语句中判断指针是否为空;NULL是C语言中的一个预定义常量,通常用来表示一个空值,用于表示一个空的指针、空的指针数组或者空的结构体指针。

2023.09.22

549

3

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
ChatGPT入门手册
ChatGPT入门手册

共0课时 | 0人学习

ChatGPT使用教学
ChatGPT使用教学

共2课时 | 209人学习