向量数据库漏洞
风险概览
风险编号:GAARM.0005
风险归属:GAARM.0005.002
安全阶段:基座安全
生命周期:部署阶段
创建时间:2024.05.01
修改时间:2024.08.09
攻击概述¶
RAG应用开发过程中,会将本地各类文档数据可以通过 Text 类划分为长度更短的段落,并利用 embedding 模型将文本内容进行向量化,最终存入向量数据库。向量数据库在RAG应用架构中扮演着重要角色,尤其是在处理高维数据和执行近似最近邻(ANN)查询时。由于向量数据库的重要性,如果它存在漏洞,攻击者可以利用其漏洞来获取未授权的数据访问、篡改数据、执行恶意代码或发起其他攻击,以此达到敏感信息获取、远程操控恶意代码等目的,带来数据方面的损失。
攻击案例¶
| 案例 | 描述 |
|---|---|
| 案例一 | 利用Qdrant向量数据库API实现路径穿越后的文件上传,导致出现远程代码执行风险 |
| 案例二 | anything-llm存在CVE-2024-0551漏洞,未授权的攻击者可以通过漏洞下载数据库中的文件 |
| 案例三 | 本研究提出了针对 RAG 增强 LLMs 的新攻击方式,通过向其知识数据库中注入单个恶意文档来危害受害者的 RAG 系统,从而引发多种针对生成模型的恶意攻击。 |
攻击风险¶
- 数据篡改:攻击者利用向量数据库漏洞对嵌入向量进行篡改,导致数据库中的数据被篡改,进而影响数据的完整性。
- 用户隐私侵犯:向量数据库中可能存储个人身份等敏感信息,一旦被攻击者获取,将严重侵犯用户隐私。
缓解措施¶
| 缓解方式 | 描述 |
|---|---|
| 定期更新补丁 | 随时了解来自向量数据库提供商的最新补丁,定期更新数据库软件可确保针对已知漏洞的防护 |
| 数据备份 | 定期备份数据,确保在数据被篡改时可以快速恢复 |
| 监控和日志 | 实施实时监控和日志记录,以便及时发现和响应可疑活动 |