OWASP LLM TOP10安全风险解析

admin 2025年5月27日11:00:47评论8 views字数 4212阅读14分2秒阅读模式
OWASP LLM TOP10安全风险解析

此文章原创作者为源鲁安全实验室,转载请注明出处!此文章中所涉及的技术、思路和工具仅供网络安全学习为目的,不得以盈利为目的或非法利用,否则后果自行承担!

OWASP LLM TOP10安全风险解析

01

引言

    随着大规模语言模型(LLM)在各行各业的广泛应用,其安全风险也日益凸显。OWASP 发布的《Top 10 for LLM Applications 2025》列出了十类关键安全漏洞,涵盖从输入到输出系统防护的方方面面。本文将结合该报告,逐一介绍每种风险类型的描述、攻击场景示例和防护策略,以帮助开发者和安全从业者构建更安全的 LLM 应用。

02

OWASP Top 10 风险介绍

01

提示词注入

描述:

攻击者将精心构造的指令或数据嵌入用户输入中,诱导模型偏离预期行为,如未经授权的访问、泄露内部信息等。该类注入既包括用户直接输入的直接注入,也涵盖从外部文档或拉取网页时的不经意间接注入

攻击场景:

    直接提示词注入:攻击者在支持聊天机器人中输入特制提示词,使其忽略安全规则,查询私有数据库导致未授权访问、权限提升

    间接提示词注入:用户使用LLM 总结网页内容,由于网页包含隐藏内容导致输出包含非预期的内容从而引发私密对话外泄。

防护思路:

    严格锁定系统角色:在系统提示(system prompt)中明确模型职责与能力边界。

    格式与模式校验:定义严格的输入输出格式模板,结合正则和结构化校验确保响应合规。

    输入分段隔离:将用户内容与重要提示分开处理,避免内联拼接。

    人机协同审查:对高风险操作(例如数据库查询、代码执行)强制人工复核。

    对抗测试:定期进行红队模拟与模糊测试,验证防注入策略有效性。

02

敏感信息泄露

描述:

  模型在回复中无意或被诱导地暴露敏感信息包括不限于个人身份信息凭证、财务信息机密业务数据、内部接口文档等。

攻击场景:

   无意的数据泄露:用户收到包含其他用户个人数据的回复,因数据未充分清洗。

有针对性的提示注入:攻击者绕过输入过滤器,提取敏感信息,如通过精心构造的提示词获取系统内部凭证。

训练数据导致的信息泄露:训练数据中包含敏感信息且未脱敏,致使模型生成包含这些敏感信息的回复。

防护思路:

   最小权限设计:模型仅能访问业务所需的最小数据集,其他敏感数据由后端服务按需授权。

    数据脱敏与审计:对可能含有PII(个人识别信息)或凭证的字段进行脱敏处理,并记录模型输出日志,以便在发生泄露时追溯。

    RAG 内容筛选:在检索增强生成(RAG)前对外部知识库内容做安全打标,剔除敏感片段,确保模型仅使用无害信息进行生成。

  安全网关拦截:引入中间层对模型响应进行安全扫描,阻断敏感数据输出,采用关键词匹配、模式识别等技术识别敏感信息。

03

供应链风险

描述:

    LLM 供应链可能会受各种漏洞的影响包括训练数据模型平台三个方面传统的软件供应链侧重于代码缺陷和组件依赖关系上但在 LLM 中延伸到第三方的数据和模型

攻击场景:

    传统第三方组件漏洞:使用过时或已废弃的第三方组件,如未及时更新的Python 库,攻击者可利用其中的漏洞入侵 LLM 应用。

篡改或者微调流行大模型:攻击者对流行大模型进行微调,移除安全特性,使其在特定领域表现良好,但却在实际使用中存在针对性的恶意行为。

    第三方供应商被入侵:攻击者入侵第三方供应商,篡改其提供的LLM 组件,如 LoRA 适配器,进而影响使用该组件的 LLM 应用。

防护思路:

    依赖完整性校验:对所有第三方模型、工具包和数据集使用checksum、签名验证,确保其未被篡改。

    可溯源流程:建立标注与微调流水线审计链,任何数据或代码变更都需留痕,以便追溯问题源头。

    隔离测试环境:将外部贡献组件先在沙箱环境中做安全评估,验证其安全性后再推广到生产环境。

04

数据与模型投毒

描述:

   攻击者通过注入恶意样本、篡改公开样本集或修改模型,导致基于有毒的数据生成虚假信息、歧视性内容;或者修改模型使其使用时候执行恶意操作。

攻击场景:

    在模型训练(预训练微调)阶段,通过污染数据集引入偏见或错误模式,使模型 “学习” 到虚假关联,最终生成误导性输出。例如,攻击者在训练数据中添加大量含有特定偏见的文本,导致模型在生成内容时也带有该偏见。

防护思路:

   数据清洗与溯源:对输入训练数据做异常检测与标签校验,剔除可疑样本,如利用数据过滤工具识别并去除噪声数据。

    对抗训练:在微调过程中引入对抗样本,提升模型对异常输入的鲁棒性,使模型能够抵御一定程度的数据投毒攻击。

    验证集防毒:使用独立、可信的验证集定期评估模型输出的一致性与可靠性,定期评估模型是否受到数据投毒。

05

不当输出处理

描述:

    不当输出处理是指大语言模型(LLM)生成的输出在传递给下游组件或系统前,缺乏充分的校验机制。由于 LLM 输出可通过提示词输入可控,攻击者可能间接利用输出实现预期操作(如代码执行、SSRF、脚本攻击等)。

风险场景:

    LLM 允许用户通过聊天的功能为后端数据库创建 SQL 查询。用户请求查询以删除所有数据库表。如果来自 LLM 的构建的查询未经过仔细检查,则将删除所有数据库表。

防护思路:

    上下文沙箱化:将模型生成的HTML、代码等内容先在沙箱环境中渲染并检测漏洞,再对外发布,防止恶意脚本执行。

    内容安全策略(CSP):前端使用 CSPXSS 过滤器等多重手段确保脚本不被滥用,限制外部资源加载和脚本执行。

    输出白名单:对允许的标签、命令或字段做精确白名单校验,严格限制输出内容的格式和类型。

06

过度代理

描述:

过度代理是 LLM 系统因代理能力设计缺陷(功能、权限、自主性过度)导致的系统性风险,核心在于代理对 LLM 异常输出的无约束执行。攻击者可通过幻觉利用、提示词注入,间接操控代理执行危险操作。

风险场景:

    第三方插件过度代理,使用不必要的功能、具有不必要的权限,如一个仅需读取邮件的插件却拥有发送和删除邮件的权限,攻击者利用提示注入操控该插件发送恶意邮件。

防护思路:

    权限最小化原则:最小化权限从权限设计源头切断攻击路径,避免代理拥有执行危险操作的“能力”,仅授予完成任务所必需的最低权限。

    用户审批:从决策流程引入人工干预,确保代理的关键操作始终在用户监督下,避免“自主性失控”,在执行高风险操作前强制要求用户确认。

07

系统提示泄露

描述:

    系统提示泄露漏洞是指大语言模型(LLM)中用于引导模型行为的系统提示(System Prompt)可能包含非预期的敏感信息,这些信息若被攻击者获取,可能辅助实施其他攻击。

风险场景:

    系统提示泄漏凭据、安全控制规则等,如系统提示中包含数据库连接字符串,攻击者获取后可直接连接数据库进行未授权操作。

防护思路:

   敏感数据分离:避免在系统提示中嵌入敏感信息,将敏感数据存储在独立的安全模块中,与模型参数和提示分离。

    严格行为控制:不依赖系统提示进行严格的行为控制,而是通过外部系统和规则引擎来约束模型行为。

    外部防护措施:在模型外部部署防护机制,如 API 网关和中间件,对输入输出进行监控和过滤,防止系统提示泄露。

    关键安全控制:确保关键安全控制措施独立于LLM,如通过独立的身份验证和授权服务来管理用户访问权限。

08

向量与嵌入弱点

描述:

    向量数据库或嵌入模型的缺陷导致语义理解偏差,引发检索误导或对抗攻击。

风险场景:

    向量距离误导:攻击者通过扰动嵌入向量,使“合法指令” 与 “恶意操作” 的向量距离缩短,诱导模型误判,将恶意操作识别为合法指令。

    多语言检索偏差:嵌入模型对多语言处理存在偏见,导致跨语言检索结果偏差,影响模型对多语言输入的理解和响应准确性。

防护思路:

    向量加固:使用对抗训练增强嵌入模型鲁棒性,抵御向量空间中的微小扰动攻击,提高模型对 adversarial attacks 的抵抗力。

    语义校验:对检索结果进行二次语义分析,确保与用户意图一致(如通过外部知识库验证),如利用人工标注的知识库对模型的检索结果进行对比和校验。

09

信息误导

描述:

    幻觉问题,包括生成事实性错误(传递信息有误)、无中生有(LLM虚构假的法律安检)、专业知识错误(医疗、金融领域)。

风险场景:

    在医疗、法律等关键领域,模型生成误导信息可能导致严重后果,如错误的医疗诊断建议可能危及患者生命;在新闻报道中,生成虚假新闻可能引发社会恐慌和信任危机。

防护思路:

    交叉验证:调用外部权威知识库(如维基百科API)验证生成内容的准确性,对关键信息进行交叉验证,确保输出内容真实可靠。

    置信度控制:对低置信度输出添加警示标签(如“以下内容未经证实”),提醒用户谨慎对待,避免用户误判。

10

无限制的资源消耗

描述:

    恶意用户通过超长输入、高频调用或资源密集型查询导致服务资源耗尽或成本激增。

风险场景:

    发送包含数万个token 的超长提示,占用大量算力;通过自动化工具每分钟发起数千次API 调用,耗尽服务配额。

防护思路:

    输入限制:设定输入token 长度上限(如 4096token),拒绝超限请求,防止超长输入占用过多资源。

    速率控制:基于用户 IP 或 API Key 实施调用限流(如每分钟100次),超出则返回熔断响应,控制高频调用对资源的过度消耗。

    资源监控:实时跟踪CPUGPU 利用率,触发阈值时自动降级服务(如切换为基础模型响应),保障服务的稳定性和可用性。

03

LLM应用架构和威胁建模

OWASP LLM TOP10安全风险解析

04

小结

      大模型安全是一项系统工程,需要从功能设计、数据采集、模型训练到部署运维的各环节协同发力。OWASP Top 10 for LLM Applications 2025 提供了一套社区共识的风险框架和防护建议,建议各团队将其纳入日常安全评估流程,并根据自身业务场景补充细化。只有持续迭代、定期演练,才能在愈发复杂的对抗环境中保证大模型应用的稳健与可控。

OWASP LLM TOP10安全风险解析

END

OWASP LLM TOP10安全风险解析

        1

关于源鲁安全实验室
源鲁安全实验室,是一支以攻防研究为核心的安全团队,团队成员来源于一线攻防团队,安全研究团队。研究方向涉及WEB安全,APP安全,漏洞研究,代码审计,内网渗透,二进制,安全产品研究等多个领域,致力为客户提供一流的服务,保障客户业务安全。

来都来了,点个赞再走吧~~~

OWASP LLM TOP10安全风险解析

原文始发于微信公众号(源鲁安全实验室):OWASP LLM TOP10安全风险解析

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2025年5月27日11:00:47
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   OWASP LLM TOP10安全风险解析https://cn-sec.com/archives/4000856.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息