跳转至

RAG开发框架漏洞

风险概览

风险编号:GAARM.0034.002
风险归属:GAARM.0034
安全阶段:应用安全
生命周期:训练阶段
创建时间:2024.08.07
修改时间:2024.08.07

攻击概述

RAG(Retrieval-Augmented Generation)是结合信息检索和生成的框架,在大型语言模型(LLM)的开发中用于增强模型的生成能力。由于RAG框架依赖于检索模块从外部数据源获取信息,如果检索模块的源数据不准确或不可靠,可能导致生成的回答包含错误或误导性信息;并且框架本身引入的各种Agent,也可能存在相关的安全风险。RAG框架相关的安全风险主要集中于RAG的生成模块、信息检索模块、集成插件和外部接口等方面,由于对RAG设计的不安全,导致可能引入其中的安全漏洞到LLM应用。例如,如果RAG检索模块的设计允许服务器发起不受限制的请求,可能会导致SSRF漏洞的利用。

攻击案例

案例 描述
案例一 由于LangChain框架中存在的SSRF以及PALChain的RCE漏洞,给使用框架的LLM应用带来了安全风险

攻击风险

  • 信息泄露:攻击者可能通过路径遍历漏洞访问敏感文件或系统配置文件,泄露系统内部信息。
  • 系统控制:如果系统文件包含敏感的配置信息或脚本,攻击者可能进一步利用这些信息来控制系统。
  • 命令执行:框架中的数据表达式运算、Python解释器等Agent,可能被利用造成RCE攻击。

缓解措施

缓解方式 描述
输入验证 严格验证和清理所有用户输入,防止路径遍历攻击。
权限管理 在设置适当的文件权限,防止未授权的文件访问。
更新和修复 确保应用程序和相关依赖的最新版本,及时应用安全补丁以修复已知漏洞。

参考