LLM 实践中的十大安全风险

随着大语言模型(LLM, Large Language Models) 在各行各业落地场景越来越多,它们在提高效率和创新方面的潜力毋庸置疑。

然而,与任何新兴技术一样,LLM 的应用也伴随着一系列独特的安全风险。本文将深入探讨 LLM 应用落地过程中的安全风险,为企业在采用这一强大技术时提供重要的安全指南。


安全风险概述

在拥抱 LLM 带来的机遇的同时,我们必须清醒地认识到其潜在的安全风险及威胁。这些风险涵盖了从数据泄露到系统崩溃等多个方面,如果不加以适当管理,可能会对企业造成严重的经济损失和声誉损害。认识并积极应对这些风险,不仅是技术问题,更是企业在 AI 时代保持竞争力的关键。


LLM 应用的十大安全风险

1. 提示词注入(Prompt Injection)

风险描述:攻击者通过输入精心设计的提示词来操纵 LLM,使其执行非预期的操作。这可能导致数据泄露、社会工程攻击等问题。

防范建议:
① 实施严格的权限控制,限制 LLM 的访问范围
② 对特权操作要求用户额外确认
③ 将不受信任的内容与用户提示词分离
④ 将 LLM 视为不可信实体,并在界面上明确标识其回应

2. 不安全的输出处理(Insecure Output Handling)

风险描述:下游组件未经适当审查就接受 LLM 的输出,可能导致 XSS、CSRF、SSRF 等攻击,甚至远程代码执行。

防范建议:
① 采用零信任方法,将 LLM 输出视为用户输入进行验证和净化
② 遵循 OWASP 应用程序安全验证标准(ASVS)的输入验证和净化指南
③ 对 LLM 输出进行编码,防止在 JavaScript 或 Markdown 中执行代码

3. 训练数据投毒(Training Data Poisoning)

风险描述:攻击者操纵训练数据或微调过程,引入漏洞、后门或偏见,危害模型的安全性、有效性或伦理行为。

防范建议:
① 验证外部数据源,维护"ML-BOM"(机器学习物料清单)记录
② 在整个训练阶段确保数据的合法性
③ 为不同用例创建单独的模型

4. 模型拒绝服务(Model Denial of Service)

风险描述:攻击者以消耗异常高资源的方式与 LLM 互动,导致服务质量下降和高昂的资源成本。

防范建议:
① 实施输入验证和内容过滤
② 为每个请求设置资源使用上限
③ 对用户或 IP 地址实施 API 速率限制
④ 控制队列中和总体的操作数量
⑤ 持续监控资源使用情况

5. 供应链漏洞(Supply Chain Vulnerabilities)

风险描述:LLM 应用生命周期中的脆弱组件或服务可能导致安全攻击,使用第三方数据集、预训练模型和插件可能增加漏洞。

防范建议:
1. 评估供应商及其政策
2. 使用经过测试和信任的插件
3. 缓解过时组件风险(参考 OWASP A06)
4. 维护最新的组件清单
5. 对模型和代码进行签名,应用异常检测,并进行监控

6. 敏感信息泄露(Sensitive Information Disclosure)

风险描述:LLM 可能在其响应中无意中泄露机密数据,导致未经授权的数据访问、隐私侵犯和安全漏洞。

防范建议:
1. 使用数据清洗技术防止用户数据进入训练集
2. 过滤恶意输入以避免模型污染
3.在模型微调时谨慎处理敏感数据
4. 限制对外部数据源的访问

7. 不安全的插件设计(Insecure Plugin Design)

风险描述:LLM 插件可能存在不安全的输入和不足的访问控制,使其更容易被利用,可能导致远程代码执行等严重后果。

防范建议:
1. 强制执行类型检查并使用验证层
2. 应用 OWASP ASVS 建议
3. 使用 SAST、DAST、IAST 进行彻底测试
4. 遵循最小权限原则
5. 使用 OAuth2 和 API 密钥进行自定义授权
6. 对敏感操作要求手动授权

8. 过度代理(Excessive Agency)

风险描述:LLM 系统可能因功能过度、权限过大或自主性过高而采取导致意外后果的行动。

防范建议:
1. 限制插件功能,仅允许必要的功能
2. 控制 LLM 插件的功能范围
3. 避免开放式功能,使用特定插件
4. 将权限限制在最低必要级别
5. 确保操作在用户上下文中进行
6. 对操作要求人工批准
7. 在下游系统中实施授权

9. 过度依赖(Overreliance)

风险描述:系统或人员过度依赖 LLM 而缺乏监督,可能因 LLM 生成的不正确或不适当内容而面临错误信息、沟通失误、法律问题和安全漏洞。

防范建议:
1. 定期审查 LLM 输出,进行一致性检查
2. 与可信来源交叉验证 LLM 输出
3. 通过特定任务的微调提高 LLM 质量
4. 实施系统自动验证输出与已知事实
5. 将复杂任务分割以降低风险
6. 清晰传达 LLM 的局限性
7. 创建带有内容过滤和警告的用户友好界面
8. 建立防止漏洞的安全编码指南

10. 模型窃取(Model Theft)

风险描述:未经授权访问、复制或窃取专有 LLM 模型,可能导致经济损失、竞争优势受损和潜在的敏感信息访问。

防范建议:
1. 实施强有力的访问控制和身份验证
2. 限制 LLM 对资源和 API 的访问
3. 定期监控访问日志
4. 使用带有审批工作流的安全部署自动化


总结

随着 LLM 技术的不断发展和应用范围的扩大,相关的安全风险也在不断演变。企业在采用 LLM 技术时,需要建立一个全面的安全框架,包括定期风险评估、员工培训、技术防护措施的实施以及与安全专家的密切合作。

只有充分认识并积极应对这些风险,企业才能真正发挥 LLM 的潜力,在保障安全的同时推动创新和效率的提升。

在 AI 时代,安全不再是一个可以事后考虑的问题,而是必须在设计和实施阶段就充分考虑的核心要素。

参考和关注 OWASP 提出的这十大安全风险,同时采取相应的防范措施,企业可以在享受 LLM 带来的巨大机遇的同时,有效管理潜在的安全威胁,为可持续的技术创新和业务发展奠定坚实基础。


本文观点参考自 《OWASP Top 10 For LLMs》 。
本文转自:塞讯可观测,转载此文目的在于传递更多信息,版权归原作者所有。如不支持转载,请联系小编demi@eetrend.com删除。

最新文章