LLM01:2025 提示注入
描述
提示注入漏洞发生在用户的提示信息意外地改变了大语言模型(LLM)的行为或输出。这种输入可能影响模型,即使它们对人类不可见或不可读,只要内容能被模型解释。这些漏洞源于模型处理提示的方式,可能导致数据处理错误,违反指导方针,生成有害内容,未经授权的访问或影响关键决策。虽然技术如检索增强生成(RAG)和模型微调可以提高准确性和相关性,但它们并不能完全解决提示注入漏洞。
提示注入和“破解”是LLM安全中相关但不同的概念。两者都通过特定输入影响模型响应。“破解”是一种提示注入,允许攻击者通过提供忽略安全协议的输入来绕过这些协议。开发人员可以防范提示注入,但防止破解需要对模型的训练和安全措施进行持续更新。
提示注入漏洞的类型
-
直接提示注入
- 当用户的提示直接以意想不到的方式改变模型的行为时发生。这可以是故意的(例如,用户设计一个提示来利用模型)或无意的(例如,用户提供的输入触发了意外行为)。
-
间接提示注入
- 当LLM处理来自外部来源(如网站或文件)的输入时发生。外部内容在被模型解释时可能产生影响。
预防和缓解策略
-
约束模型行为:
- 提供明确说明关于模型的角色和限制。
- 严格遵循上下文并将响应限制在特定任务内。
-
定义和验证预期输出格式:
- 指定输出格式并提供输出推理。
- 使用确定性代码确保格式的遵循。
-
实现输入和输出过滤:
- 定义敏感类别和内容处理规则。
- 应用语义过滤器和字符串检查以扫描不允许的内容。
- 使用RAG三元组(上下文相关性、扎根性和问答相关性)评估响应。
-
执行权限控制和最小权限访问:
- 应用程序应使用自己的API令牌进行功能,限制访问仅限于预期操作所需的最低限度。
-
要求对高风险操作进行人工批准:
- 实施人机交互控制以防止未经授权的操作。
-
隔离和识别外部内容:
- 清楚地分隔和标记不受信任的内容,以限制其对用户提示的影响。
-
进行对抗性测试和攻击模拟:
- 定期进行渗透测试和漏洞模拟,将模型视为不受信任的用户以测试信任边界和访问控制的有效性。
攻击场景示例
- 场景#1:直接注入:攻击者将提示注入客户支持聊天机器人,指示其忽略指导方针,查询私人数据存储并发送电子邮件,导致未经授权的访问和权限升级。
- 场景#2:间接注入:用户使用LLM总结网页,该网页包含隐藏指令,导致LLM插入链接到URL的图像,从而泄露私人对话。
- 场景#3:无意注入:公司在职位描述中包含识别AI生成应用程序的指令。申请人无意识地使用LLM优化简历,无意中触发AI检测。
- 场景#4:有意图的模型影响:攻击者修改RAG应用程序使用的文档。当用户的查询返回修改后的内容时,恶意指令改变LLM的输出,生成误导性结果。
- 场景#5:代码注入:攻击者利用LLM驱动的电子邮件助手中的漏洞(CVE-2024-5184)注入恶意提示,允许访问敏感信息和操纵电子邮件内容。
- 场景#6:负载拆分:攻击者上传带有拆分恶意提示的简历。当LLM用于评估候选人时,组合提示操纵模型的响应,导致正面推荐,尽管实际简历内容不当。
- 场景#7:多模态注入:攻击者在伴随良性文本的图像中嵌入恶意提示。
LLM02: 2025 敏感信息泄露
描述
敏感信息可能影响大语言模型(LLM)及其应用环境。这包括个人身份信息(PII)、财务细节、健康记录、机密商业数据、安全凭证和法律文件。专有模型可能还包含独特的训练方法和源代码,尤其是在封闭或基础模型中。
LLM在应用时,可能会通过输出暴露敏感数据、专有算法或机密细节。这可能导致未经授权的数据访问、隐私侵犯和知识产权泄露。消费者必须意识到无意间提供的敏感数据可能会在模型的输出中出现。
为了减少这种风险,LLM应用应确保足够的数据清理以防止用户数据进入训练模型。应用程序所有者还应提供明确的使用条款政策,允许用户选择不将其数据包括在训练模型中。通过在系统提示中实施关于LLM应返回的数据类型的限制可以帮助防止敏感信息泄露。然而,这些限制可能不会总是被遵守,并可能通过提示注入或其他技术被绕过。
常见漏洞示例
- PII泄露:个人身份信息可能在与LLM的交互中泄露。
- 专有算法暴露:配置不当的模型输出可能揭示专有算法或数据。揭示训练数据可能暴露模型于反转攻击,攻击者可以提取敏感信息或重建输入。
- 敏感商业数据泄露:生成的响应可能无意中包含机密商业信息。
预防和缓解策略
-
数据清理技术整合:
- 实施方法以防止用户数据进入训练模型,通过清理或屏蔽敏感内容在训练前进行处理。
- 使用严格的验证方法检测和过滤潜在有害或敏感的数据输入,确保它们不会影响模型。
-
严格访问控制:
- 根据最低权限原则限制对敏感数据的访问,仅在必要时授予特定用户或流程。
- 限制模型访问外部数据源,确保安全的运行时数据编排以避免意外的数据泄露。
-
使用联邦学习和隐私技术:
- 使用分散数据存储在多个服务器或设备上训练模型,减少集中数据收集的需求并降低暴露风险。
- 应用技术添加噪声到数据或输出,使攻击者难以逆向工程单个数据点。
-
用户教育和透明度:
- 提供指导以安全使用LLM,避免输入敏感信息,并提供与大型语言模型(LLM)安全交互的最佳实践培训。
- 保持数据保留、使用和删除的透明政策,并允许用户选择不将其数据包括在训练过程中。
-
安全的系统配置:
- 确保系统前言被隐藏以防止未经授权的访问或信息暴露。
示例攻击场景
- 场景#1:无意的数据暴露:由于不充分的数据清理,用户收到包含他人个人数据的响应。
- 场景#2:有针对性的提示注入:攻击者绕过输入过滤器以提取敏感信息。
- 场景#3:通过训练数据泄露数据:由于数据疏忽,训练中包括了敏感信息导致其泄露。
LLM03: 2025 供应链
描述
供应链中的漏洞可能影响大语言模型(LLM)的训练数据、模型和部署平台的完整性,可能导致输出偏见、安全漏洞或系统故障。这些风险不仅限于传统软件漏洞,如代码缺陷和依赖关系,还扩展到第三方预训练模型和数据。这些外部元素易受篡改或中毒攻击。
LLM的创建通常涉及第三方模型,随着开放访问LLM的使用增加以及新的微调方法如LoRA(低秩适应)和PEFT(参数高效微调)的出现,尤其是在Hugging Face等平台上,引入了新的供应链风险。设备上的LLM的出现进一步增加了LLM应用的攻击面和供应链风险。

最低0.47元/天 解锁文章
1668

被折叠的 条评论
为什么被折叠?



