Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Translations/zh cn #490

Closed
wants to merge 17 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
45 changes: 45 additions & 0 deletions 2_0_vulns/translations/zh-CN/LLM00_Preface.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
## 项目负责人序言

OWASP大语言模型应用程序(LLM)十大风险始于2023年,是一项社区驱动的努力,旨在突出并解决 AI 应用特有的安全问题。从那时起,这项技术持续在各个行业和应用领域中传播,与之相关的风险也在不断增加。随着LLM更加深入地嵌入从客户交互到内部运营的方方面面,开发人员和安全专业人士正在发现新的漏洞及应对方法。

2023年的风险表在知识普及和LLM的安全使用基础奠定方面取得了巨大成功,但自那以后我们学到了更多。在这份全新的 2025 年版本中,我们与来自全球的更大范围、更具多样性的贡献者团队合作,他们帮助共同塑造了这份清单。整个过程包括头脑风暴、投票,以及来自 LLM 应用安全一线专业人士的实际反馈,无论是通过贡献条目还是通过反馈改进条目。每一位贡献者的声音都对使这次发布尽可能全面且实用起到了关键作用。

### 2025 年十大风险的更新内容

2025 年的风险列表反映了对现有风险的更深入理解,并引入了有关 LLM 在当前实际应用中使用的关键更新。例如,**无限制消耗** 扩展了之前的“服务拒绝”内容,涵盖了资源管理和意外成本方面的风险,这在大规模 LLM 部署中是一个紧迫问题。

**向量与嵌入** 条目响应了社区对保护检索增强生成(RAG)和其他基于嵌入方法的指导需求。这些方法现已成为巩固模型输出的核心实践。

我们还新增了 **系统提示泄漏**,以应对社区高度关注的真实世界漏洞问题。许多应用程序假设提示是安全隔离的,但最近的事件表明,开发人员不能安全地假设提示中的信息会保持机密。

**过度代理权限** 也进行了扩展,鉴于代理型架构的使用增加,这些架构赋予了 LLM 更大的自主性。在 LLM 作为代理或插件使用的情况下,未经检查的权限可能导致意想不到或高风险的行为,这使得这一条目比以往更加重要。

### 展望未来

与技术本身一样,这份清单也是开源社区洞察与经验的产物。它由来自各行业的开发人员、数据科学家和安全专家的贡献共同塑造,他们都致力于构建更安全的 AI 应用程序。我们很自豪能够与您分享这份 2025 年版本,希望它能为您提供有效保护 LLM 的工具和知识。

感谢所有参与完成这份清单的人,以及那些继续使用和改进它的人。我们很高兴能与您共同参与这一工作。


### @Steve Wilson
项目负责人
OWASP 大语言模型应用程序十大风险列表
[LinkedIn](https://www.linkedin.com/in/wilsonsd/)

### @Ads Dawson
技术负责人 & 漏洞条目负责人
OWASP 大语言模型应用程序十大风险列表
[LinkedIn](https://www.linkedin.com/in/adamdawson0/)


### Traditional Chinese Translation Team
### @Ken Huang 黄连金翻译
[LinkedIn](https://www.linkedin.com/in/kenhuang8/)

### About this translation
Recognizing the technical and critical nature of the OWASP Top 10 for Large Language Model Applications, we consciously chose to employ only human translators in the creation of this translation. The translators listed above not only have a deep technical knowledge of the original content, but also the fluency required to make this translation a success.

###@ Talesh Seeparsan
Translation Lead, OWASP Top 10 for AI Applications LLM
LinkedIn: https://www.linkedin.com/in/talesh/

145 changes: 145 additions & 0 deletions 2_0_vulns/translations/zh-CN/LLM01_PromptInjection.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,145 @@
## LLM01:2025 提示词注入

### 描述

提示词注入漏洞发生在用户以未预期的方式改变大型语言模型(LLM)的行为或输出时。这些输入甚至可能对人类来说是不明显的,但模型能够解析它们并据此改变行为。因此,提示词注入不需要是人类可见或可读的,只要内容被模型解析即可。

提示词注入漏洞存在于模型处理提示词的方式中,以及输入如何迫使模型错误地将提示词数据传递到模型的其他部分,可能使其违反指南、生成有害内容、启用未经授权的访问或影响关键决策。虽然诸如检索增强生成(RAG)和微调等技术旨在使LLM输出更相关和准确,但研究显示它们并不能完全缓解提示词注入漏洞。

尽管提示词注入和越狱在LLM安全领域中是相关的概念,但它们常常被互换使用。提示词注入涉及通过特定输入操纵模型响应以改变其行为,这可能包括绕过安全措施。越狱是一种提示词注入的形式,攻击者提供的输入导致模型完全忽视其安全协议。开发者可以构建防护措施到系统提示词和输入处理中,以帮助缓解提示词注入攻击,但有效预防越狱需要对模型的训练和安全机制进行持续更新。

### 提示词注入漏洞类型

#### 直接提示词注入

直接提示词注入发生在用户提示词输入直接改变模型行为在未预期或意外的方式时。输入可以是故意的(即恶意行为者精心制作提示词以利用模型)或非故意的(即用户无意中提供触发意外行为的输入)。

#### 间接提示词注入

间接提示词注入发生在LLM接受来自外部来源(如网站或文件)的输入时。这些内容可能包含当被模型解析时,会改变模型行为在未预期或意外方式的数据。与直接注入一样,间接注入可以是故意的或非故意的。

成功提示词注入攻击的影响严重性和性质很大程度上取决于模型运作的业务环境以及模型的设计自主性。一般来说,提示词注入可能导致不受期望的结果,包括但不限于:

- 敏感信息泄露

- 揭露关于AI系统基础设施或系统提示词的敏感信息

- 内容操纵导致不正确或有偏见的输出

- 为LLM提供未经授权的功能访问

- 执行连接系统的任意命令

- 操纵关键决策过程

多模态AI的兴起,即同时处理多种数据类型的系统,引入了独特的提示词注入风险。恶意行为者可能利用模态之间的交互,例如在伴随良性文本的图像中隐藏指令。这些系统的复杂性扩大了攻击面。多模态模型也可能容易受到难以检测和缓解的新型跨模态攻击。开发针对多模态特定防御是进一步研究和发展的重要领域。

### 预防和缓解策略

提示词注入漏洞是由于生成式AI的本质而可能出现的。鉴于模型工作方式中的随机影响,目前尚不清楚是否存在预防提示词注入的绝对方法。然而,可以采取以下措施来减轻提示词注入的影响:

1. **约束模型行为**

在系统提示词中提供关于模型角色、能力和限制的具体指示。强制严格执行上下文依从性,限制响应特定任务或主题,并指示模型忽略修改核心指令的尝试。

2. **定义和验证预期输出格式**

明确规定输出格式,要求详细推理和引用来源,并使用确定性代码验证对这些格式的遵守。

3. **实施输入和输出过滤**

定义敏感类别并构建规则以识别和处理此类内容。应用语义过滤器,并使用字符串检查扫描不允许的内容。通过RAG三角评估上下文相关性、基于事实性和问题/答案相关性,以识别潜在恶意输出。

4. **执行特权控制和最小权限访问**

为应用程序提供自己的API令牌以实现可扩展功能,并在代码中处理这些功能而不是提供给模型。限制模型的访问权限至其操作所需的最低必要级别。

5. **要求对高风险行动进行人工审批**

对特权操作实施人机协作控制,以防未经授权的操作。

6. **隔离和识别外部内容**

将不受信任的内容分开并明确标记,以限制其对用户提示词的影响。

7. **进行对抗性测试和攻击模拟**

定期进行渗透测试和漏洞模拟,将模型视为不受信任的用户,以测试信任边界和访问控制的有效性。

### 示例攻击场景

#### 场景 #1:直接注入

攻击者向客户支持聊天机器人注入提示词,指示其忽略先前指南、查询私人数据存储并发送电子邮件,导致未经授权的访问和特权升级。

#### 场景 #2:间接注入

用户使用LLM总结包含隐藏指令的网页内容,这些指令导致LLM插入链接到URL的图像,从而导致私人对话的外泄。

#### 场景 #3:非故意注入

公司在求职描述中包含识别AI生成申请的指示。申请人不知情地使用LLM优化简历,无意中触发了AI检测。

#### 场景 #4:有意模型影响

攻击者修改仓库中的文档,该仓库被检索增强生成(RAG)应用程序使用。当用户查询返回修改后的内容时,恶意指令会改变LLM的输出,产生误导性结果。

#### 场景 #5:代码注入

攻击者利用漏洞(如CVE-2024-5184)在LLM驱动的电子邮件助手中注入恶意提示词,允许访问敏感信息并操纵电子邮件内容。

#### 场景 #6:负载分割

攻击者上传包含分割恶意指令的简历。当LLM用于评估候选人时,组合指令会操纵模型的响应,导致尽管实际简历内容不符,但仍产生积极推荐。

#### 场景 #7:多模态注入

攻击者将恶意提示词嵌入到伴随良性文本的图像中。当多模态AI同时处理图像和文本时,隐藏的提示词会改变模型行为,可能導致未经授权的操作或敏感信息泄露。

#### 场景 #8:对抗性后缀

攻击者在提示词末尾附加看似无意义的字符串,影响LLM输出,绕过安全措施。

#### 场景 #9:多语言/混淆攻击

攻击者使用多种语言或编码恶意指令(如Base64或表情符号)以规避过滤器并操纵LLM行为。

### 参考链接

1. [ChatGPT插件漏洞 - 与代码聊天](https://embracethered.com/blog/posts/2023/chatgpt-plugin-vulns-chat-with-code/) **Embrace the Red**

2. [ChatGPT跨插件请求伪造和提示词注入](https://embracethered.com/blog/posts/2023/chatgpt-cross-plugin-request-forgery-and-prompt-injection./) **Embrace the Red**

3. [并非你所签署的:利用间接提示词注入破坏现实世界中的LLM集成应用](https://arxiv.org/pdf/2302.12173.pdf) **Arxiv**

4. [通过自我提醒防御ChatGPT越狱攻击](https://www.researchsquare.com/article/rs-2873090/v1) **Research Square**

5. [针对LLM集成应用的提示词注入攻击](https://arxiv.org/abs/2306.05499) **Cornell University**

6. [注入我的PDF:简历中的提示词注入](https://kai-greshake.de/posts/inject-my-pdf) **Kai Greshake**

8. [并非你所签署的:利用间接提示词注入破坏现实世界中的LLM集成应用](https://arxiv.org/pdf/2302.12173.pdf) **Cornell University**

9. [威胁建模LLM应用程序](https://aivillage.org/large%20language%20models/threat-modeling-llm/) **AI Village**

10. [通过设计减少提示词注入攻击的影响](https://research.kudelskisecurity.com/2023/05/25/reducing-the-impact-of-prompt-injection-attacks-through-design/) **Kudelski Security**

11. [对抗性机器学习:攻击和缓解措施的分类与术语](https://nvlpubs.nist.gov/nistpubs/ai/NIST.AI.100-2e2023.pdf)

12. [针对大型视觉语言模型的攻击:资源、进展及未来趋势调查](https://arxiv.org/abs/2407.07403)

13. [利用标准安全攻击探索LLMs的程序化行为:双重用途](https://ieeexplore.ieee.org/document/10579515)

14. [对齐语言模型上的通用和可转移对抗性攻击](https://arxiv.org/abs/2307.15043)

15. [从ChatGPT到威胁GPT:生成式AI在网络安全与隐私领域的影响力](https://arxiv.org/abs/2307.00691)

### 相关框架和分类法

参考此部分以获取全面的信息、场景策略以及关于基础设施部署、环境控制和其他最佳实践。

- [AML.T0051.000 - LLM提示词注入:直接](https://atlas.mitre.org/techniques/AML.T0051.000) **MITRE ATLAS**

- [AML.T0051.001 - LLM提示词注入:间接](https://atlas.mitre.org/techniques/AML.T0051.001) **MITRE ATLAS**

- [AML.T0054 - LLM越狱注入:直接](https://atlas.mitre.org/techniques/AML.T0054) **MITRE ATLAS**
Original file line number Diff line number Diff line change
@@ -0,0 +1,95 @@
### LLM02:2025 敏感信息泄露

#### 描述

敏感信息可能涉及LLM本身及其应用场景,包括个人身份信息(PII)、财务细节、健康记录、商业机密数据、安全凭证以及法律文件。在专有模型中,独特的训练方法和源代码通常被视为敏感信息,尤其是在封闭或基础模型中。

LLM特别是在嵌入应用程序时,可能通过输出暴露敏感数据、专有算法或机密信息。这种情况可能导致未经授权的数据访问、隐私侵犯和知识产权泄漏。用户需要了解如何与LLM安全交互,并认识到无意间提供的敏感数据可能在模型输出中被披露的风险。

为了降低此类风险,LLM应用应执行充分的数据清理,防止用户数据进入训练模型。此外,应用所有者应提供清晰的使用条款政策,允许用户选择退出其数据被纳入训练模型。通过在系统提示中对LLM返回的数据类型设置限制,可以减少敏感信息泄露的可能性。然而,这种限制可能并非总是有效,可能会被提示注入或其他方法绕过。

#### 常见漏洞示例

##### 1. 个人身份信息(PII)泄露
与LLM交互时可能泄露个人身份信息(PII)。

##### 2. 专有算法暴露
配置不当的模型输出可能揭示专有算法或数据。例如,在“Proof Pudding”攻击(CVE-2019-20634)中,训练数据泄漏被用于模型提取与逆向,攻击者得以绕过机器学习算法的安全控制。

##### 3. 商业机密数据泄露
生成的响应可能无意中包含机密的商业信息。

#### 防范与缓解策略

### 数据清理

##### 1. 集成数据清理技术
执行数据清理技术以防止用户数据进入训练模型,包括在使用数据训练前对敏感内容进行清理或掩码处理。

##### 2. 严格的输入验证
采用严格的输入验证方法,检测和过滤潜在的有害或敏感数据输入,确保其不会影响模型的安全性。

### 访问控制

##### 1. 执行严格的访问控制
基于最低权限原则限制对敏感数据的访问,仅允许特定用户或进程访问所需数据。

##### 2. 限制数据源
限制模型对外部数据源的访问,确保运行时数据编排的安全管理以避免意外的数据泄漏。

### 联邦学习与隐私技术

##### 1. 使用联邦学习
使用分布式服务器或设备存储的数据进行模型训练,这种去中心化方法减少了集中式数据收集的风险。

##### 2. 差分隐私技术
通过添加噪声保护数据或输出,使攻击者难以逆向还原单个数据点。

### 用户教育与透明度

##### 1. 教育用户安全使用LLM
为用户提供避免输入敏感信息的指导,并培训安全交互的最佳实践。

##### 2. 确保数据使用透明度
维护清晰的政策,说明数据的保留、使用和删除方式,并允许用户选择退出其数据被纳入训练过程。

### 系统安全配置

##### 1. 隐藏系统前缀
限制用户覆盖或访问系统初始设置的能力,减少暴露内部配置的风险。

##### 2. 遵循安全配置最佳实践
遵循如“OWASP API8:2023安全配置错误”中的指南,避免通过错误信息或配置细节泄露敏感信息。

### 高级技术

##### 1. 同态加密
采用同态加密技术,实现安全的数据分析和隐私保护的机器学习,确保数据在模型处理中保持机密。

##### 2. 令牌化与数据遮掩
通过令牌化技术对敏感信息进行预处理和清理,利用模式匹配检测并遮掩处理前的机密内容。

#### 示例攻击场景

##### 场景1:无意数据泄露
由于数据清理不足,用户在接收响应时获取了另一个用户的个人数据。

##### 场景2:目标提示注入
攻击者绕过输入过滤器,提取敏感信息。

##### 场景3:训练数据导致的数据泄漏
因训练数据包含不当信息而导致敏感数据泄露。

#### 参考链接

1. [ChatGPT的三星数据泄漏教训](https://cybernews.com/security/chatgpt-samsung-leak-explained-lessons/) **Cybernews**
2. [防止公司机密被ChatGPT泄露的新工具](https://www.foxbusiness.com/politics/ai-data-leak-crisis-prevent-company-secrets-chatgpt) **Fox Business**
3. [通过“永远的诗”重复输出泄露敏感数据](https://www.wired.com/story/chatgpt-poem-forever-security-roundup/) **Wired**
4. [利用差分隐私技术构建安全模型](https://neptune.ai/blog/using-differential-privacy-to-build-secure-models-tools-methods-best-practices) **Neptune Blog**
5. [Proof Pudding攻击(CVE-2019-20634)](https://avidml.org/database/avid-2023-v009/) **AVID**

#### 相关框架与分类

- [AML.T0024.000 - 推测训练数据成员身份](https://atlas.mitre.org/techniques/AML.T0024.000) **MITRE ATLAS**
- [AML.T0024.001 - 逆向机器学习模型](https://atlas.mitre.org/techniques/AML.T0024.001) **MITRE ATLAS**
- [AML.T0024.002 - 提取机器学习模型](https://atlas.mitre.org/techniques/AML.T0024.002) **MITRE ATLAS**
Loading