云上LLM数据泄露风险研究系列(一):基于向量数据库的攻击面分析
原创 星云实验室 2025-04-11 11:07 北京
向量数据库成就云上LLM智能跃迁,却也悄然埋下数据泄露隐患,安全风险不容忽视!
一. 引言
大语言模型(Large Language Model,LLM)技术的飞速发展与落地离不开云计算产业的赋能,云计算为LLM带来了技术需求、经济效率与生态协同方面的优势。首先,LLM训练和推理依赖海量算力,云平台通过弹性扩展的GPU/TPU集群和分布式架构,显著降低硬件投入成本;其次,云服务商提供预训练模型API和微调工具,使企业无需从零开发,快速实现模型迭代与业务部署;最后,云生态将LLM与数据存储、分析工具及行业应用深度集成,加速技术落地与商业化进程。
LLM应用的高效、智能离不开底层大量非结构化数据的训练和知识积累。随着LLM应用的“井喷式”增长,非结构化数据的使用需求也急剧增加。非结构化数据在存储、查询等机制上与传统关系型数据有着显著差异,传统关系型数据库难以适配非结构化数据的场景。向量数据库是一种专门用于存储、管理、查询、检索向量的数据库,可以把非结构化数据embedding为多维向量值,能够有效帮助LLM应用开发人员实现对非结构化数据的有效管理,提升LLM对非结构化数据内容的认知。
向量数据库常被用于LLM应用训练、推理和知识库构建等场景。借助云计算弹性、便捷等特性,越来越多的用户倾向将向量数据库部署在云端。此外,一些向量数据库厂商也提供了开箱即用的向量数据库云服务。云计算与向量数据库的融合加速了LLM应用的落地与实现,向量数据库安全风险更应得到重视。笔者在近期的安全研究中发现,几款被广泛应用的开源向量数据库都存在不同程度的安全风险,如Milvus[1]、Qdrant[2]、Weaviate[3]、Chroma[4]等。这些安全风险可能导致数据泄露、数据投毒等安全事件的发生。
二. 主流开源向量数据库介绍
向量数据库是一种特殊数据库,它利用AI领域中的机器学习模型、特征提取等技术,将非结构化数据embedding为多维向量,如图1所示。根据源数据的复杂性、细节等情况,每个向量的维数从几个到几千个不等[5]。
图1 向量数据库原理
向量数据库通过计算向量间的某种相似性(如余弦相似度等)来检索相似向量,这允许下游的LLM应用实现基于语义或上下文相关性的搜索。它解决了LLM应用没有“长期记忆”、提示词工程复杂等问题,被广泛地用于大模型训练、推理和知识库构建等场景,包含但不限于以下三点[6]:
LLM训练阶段数据的分类、去重和清洗;
帮助大模型提升处理新问题的能力,避免出现幻觉;
解决私有数据注入大模型带来的安全和隐私问题;
当前,业界将向量数据库分为两类,专用向量数据库与支持向量检索[5]。而本文的主要研究对象为专用向量数据库:Milvus、Qdrant、Weaviate、Chroma。
Milvus是一个开源向量数据库,专为海量向量数据的实时相似性搜索与分析设计,具备高扩展性和低延迟,适合AI场景如推荐系统、图像检索。图2展示了Milvus向量数据库的全球区域分布与云厂商分布情况。其中,Milvus全球范围内的使用量约为3500+,使用量前5的国家分别是中国、美国、德国、法国、印度,约占总量的78%。在所有Milvus服务中,部署在阿里云上的数量最多,约占总量的18%;亚马逊云和腾讯云紧随其后,分别为12%和9%。
图2 Milvus全球区域分布与云厂商分布情况
Qdrant是一个高性能向量搜索引擎,支持复杂过滤条件与分布式部署,注重检索精度与速度,适用于个性化推荐、语义搜索等场景。图3展示了Qdrant向量数据库的全球区域分布与云厂商分布情况。其中,Qdrant全球范围内的使用量约为3700+,使用量前5的国家分别为美国、德国、英国、法国、印度,约占总量的69%。在所有Qdrant服务中,部署在亚马逊云上的数量最多,约占总量的18%;谷歌云和微软云紧随其后,分别为7%和4%。
图3 Qdrant全球区域分布与云厂商分布情况
Weaviate是一个多模态向量数据库,内置机器学习模型支持文本、图像等数据,提供语义搜索与知识图谱功能,适合复杂数据关联与智能应用构建。图4展示了Weaviate向量数据库的全球区域分布与云厂商分布情况。其中,Weaviate全球范围内的使用量约为8000+,使用量前5的国家分别为美国、中国、德国、新加坡、印度,约占总量的76%。在所有Weaviate服务中,部署在亚马逊云上的数量最多,约占总量的25%;谷歌云和阿里云紧随其后,分别为18%和7%。
图4 Weaviate全球区域分布与云厂商分布情况
Chroma是一个轻量级嵌入式向量数据库,强调开发者友好性与快速集成,专注于AI模型生成的嵌入向量管理与检索,适合原型开发与小规模应用。图5展示了Chroma向量数据库的全球区域分布与云厂商分布情况。其中,Chroma全球范围内的使用量约为4700+,使用量前5的国家分别为美国、德国、印度、中国、韩国,约占总量的67%。在所有Chroma服务中,部署在亚马逊云上的数量最多,约占总量的32%;谷歌云和微软云紧随其后,分别为10%和8%。
图5 Chroma全球区域分布与云厂商分布情况
四类向量数据库的其他特点和情况如表1所示:
组件 | Star数 | 文档大小限制 | 向量维度限制 | 开发语言 | Restful API |
Milvus | 33.9k | 未知 | 32768 | Go、C++ | 支持 |
Qdrant | 22.9k | 不限制 | 不限制 | Rust | 支持 |
Weaviate | 13k | 不限制 | 65535 | Go | 支持 |
Chroma | 19.1k | 未知 | 未知 | Python | 支持 |
三. 向量数据库安全风险
笔者将向量数据库存在的安全风险按照结果导向分为3类,数据泄露风险、数据投毒风险、其他风险。接下来,将逐一对每类向量数据库安全风险进行分析、介绍。
向量数据库作为一种特殊的数据库,其核心功能包括向量数据的存储与检索。因此,对于向量数据库而言,最严重的安全风险为数据泄露风险。
向量数据库中存储的数据通常会作为LLM应用的训练数据、知识库等。企业和组织可能会将专业领域内容、内部隐私数据、非公开文件等非结构化数据储存在向量数据库中。而向量数据库存储的过程中通常是以“内容+向量”的方式,如图6所示。一旦向量数据库发生数据泄露,其中的敏感内容可能直接暴露给不法分子。
图6 向量数据库Milvus查询接口响应
向量数据库发生数据泄露的方式如图7所示,主要有以下3种:
图7 向量数据库数据泄露风险路径
向量数据库原生API数据泄露风险:部分向量数据库部署完成后会对外暴露一些Restful API,这些API打通了LLM应用训练、推理的全流程。然而,笔者调研的4款主流向量数据库的默认部署方式下(容器部署方式)的原生Restful API均不包含任何访问控制机制。“暴露的API”加“未授权访问”给向量数据库带来了严重的数据安全威胁,攻击者可以通过极低的成本(如一个简单的Get或Post请求)来获取其中的数据,造成数据泄露。
向量数据库Web管理工具间接数据泄露风险:向量数据库的Web管理工具若存在未授权访问也可能导致数据泄露事件的发生。例如,向量数据库Milvus的Web管理工具Attu[8]、Milvus Web UI[9]都有可能存在默认情况下的未授权访问。攻击者可能通过这类Web管理工具窃取向量数据库中的敏感数据,进而造成数据泄露。
向量数据库在线API文档数据泄露风险:一些向量数据库为了方便开发者进行调试,在特定的endpoint下自动生成了API在线文档,且同样不具备任何访问控制机制。攻击者能够通过对在线API文档进行调试,对后端的向量数据库进行查询等操作,进而造成数据泄露。
向量数据库的数据投毒风险是建立在原生Restful API或在线API文档存在未授权访问漏洞基础之上的一种数据安全风险。
一般来说,对于数据库的操作可以涵盖为增、删、改、查四个方面,向量数据库也不例外。每种向量数据库的文档中,都会有对其Restful API的调用参数介绍。几乎每个向量数据库的原生API都支持对向量数据库的修改、删除、增加等操作。一旦攻击者发现API存在未授权访问的向量数据库,可以轻而易举的发起数据投毒攻击,攻击路径如图8所示:
图8 向量数据库数据投毒风险路径
攻击者通过对向量数据发起数据投毒,能够带来以下几种恶意结果:
模型误导:攻击者注入带有误导标签的向量,导致模型做出错误预测。比如注入某些错误向量,让模型错误推荐,进而影响整个系统的准确性。
后门攻击:在向量中隐藏特定触发器,使得模型在特定条件下出现错误。例如,在图像检索中,加入某种图案作为触发器,当用户查询时,触发后门,返回错误结果。
数据污染:直接修改或插入低质量、错误数据,影响相似性搜索的结果。例如,在文本检索中,加入大量无关或误导性文本的向量,使得搜索结果偏离预期。
索引破坏:向量数据库依赖索引结构,如果攻击者构造特殊向量干扰索引构建,可能导致索引效率下降,降低检索效率。例如,插入大量高相似度的噪声向量,让索引结构无法有效组织数据,增加搜索时间。
除了数据安全相关风险外,向量数据库仍然存在传统的漏洞安全风险,如服务端请求伪造漏洞、路径遍历等漏洞风险等,此处不过多赘述。而对于漏洞风险的利用也比较常规,如图9所示。
图9 向量数据库其他风险路径
服务端请求伪造漏洞:Milvus的connect接口存在服务端请求伪造漏洞。利用该漏洞攻击者可以访问和下载内网的敏感数据,利用文件传输协议访问服务器本地文件,上传恶意文件等。
路径遍历漏洞:向量数据库Qdrant存在多个路径遍历漏洞:如CVE-2024-3584、CVE-2024-2221、CVE-2024-3078等。利用这些漏洞,攻击者可以访问、窃取敏感系统文件,或通过修改系统文件,对系统进行破坏,造成系统中断等。
拒绝服务漏洞:Qdrant存在拒绝服务漏洞:CVE-2023-38975;Weaviate存在拒绝服务漏洞CVE-2023-38976。利用这些漏洞,攻击者可以影响依赖向量数据库服务的正常运行,造成服务中断。
用户仍需要提高对向量数据库N Day漏洞的关注,避免由于向量数据库N Day漏洞导致的下游LLM服务不可用或其他安全问题。
四. 缓解措施
针对前文提到的向量数据库安全风险,笔者给出以下几点措施对向量数据库进行安全加固:
建立有效的访问控制机制:开启向量数据库自身的认证机制或引入外部的访问控制机制,避免向量数据库服务的互联网暴露及任意用户的未授权访问。
及时对向量数据库进行安全更新:及时更新向量数据库至安全版本,避免N Day漏洞的利用。
增加对向量数据内容的审计机制:定期对向量数据库中的内容进行安全审计,避免数据投毒攻击对其他服务的影响。
自动化监控及响应:建立自动化监控及响应机制,及时捕捉、响应向量数据库发生的异常操作。
五. 绿盟科技创新研究院云上风险发现研究成果
绿盟科技创新研究院在云上风险发现和数据泄漏领域已经开展了多年的研究。借助Fusion数据泄露侦察平台,我们已监测到数万个云端暴露资产存在未授权访问的情况,包括但不限于自建仓库、公有云对象存储、云盘、OLAP/OLTP数据库、大模型组件,以及各类存储中间件等,具体研究内容可参考包括但不限于DevSecOps组件,自建仓库、公有云对象存储、云盘、OLAP/OLTP数据库,大模型组件以及各类存储中间件等,具体研究内容可参考《2023公有云安全风险分析报告》[10],《2024上半年全球云数据泄露风险分析报告》[11],《全球云上数据泄露风险分析简报》第一期至第五期[12-16]。
Fusion是由绿盟科技创新研究院研发的一款面向数据泄露测绘的创新产品,集探测、识别、泄露数据侦察于一体,针对互联网中暴露的泛云组件进行测绘,识别组件关联的组织机构和组件风险的影响面,实现自动化的资产探测、风险发现、泄露数据分析、责任主体识别、数据泄露侦察全生命周期流程。
图10 Fusion能力全景图
Fusion的云上风险事件发现组件具有如下主要特色能力:
资产扫描探测:通过多个分布式节点对目标网段/资产进行分布式扫描探测,同时获取外部平台相关资产进行融合,利用本地指纹知识库,实现目标区域云上资产探测与指纹标记;
资产风险发现:通过分布式任务管理机制对目标资产进行静态版本匹配和动态PoC验证的方式,实现快速获取目标资产的脆弱性暴露情况;
风险资产组织定位:利用网络资产信息定位其所属地区、行业以及责任主体,进而挖掘主体间存在的隐藏供应链关系及相关风险。
资产泄露数据分析:针对不同组件资产的泄露文件,结合大模型相关技术对泄露数据进行分析与挖掘,实现目标资产的敏感信息获取;
当今数字化迅速发展的时代,数据安全问题越来越受到广泛关注。与此同时,随着云计算技术的普及和应用,企业也不可避免面临着云上数据泄露事件的频繁发生,为了提供公众和相关行业对数据安全的认知,我们计划定期发布有关云上数据泄露的分析报告,这些报告将以月报或双月报的形式呈现,内容涵盖最新的云上数据泄露案例分析、趋势洞察、数据保护最佳实践以及专家建议等。
如果读者对本报告有任何意见或疑问,欢迎批评指正。如有合作意向请联系我们(邮箱[email protected])。
参考文献
[1] https://github.com/milvus-io/milvus
[2] https://github.com/qdrant/qdrant
[3] https://github.com/weaviate/weaviate
[4] https://github.com/chroma-core/chroma
[5] https://zhuanlan.zhihu.com/p/656159876
[6] https://www.woshipm.com/it/5879638.html
[7] https://docs.google.com/spreadsheets/d/170HErOyOkLDjQfy3TJ6a3XXXM1rHvw_779Sit-KT7uc/edit?gid=0#gid=0
[8] https://github.com/zilliztech/attu
[9] https://milvus.io/docs/zh/milvus-webui.md]
[10] 《2023公有云安全风险分析报告》 https://book.yunzhan365.com/tkgd/qdvx/mobile/index.html
[11]《2024上半年全球云上数据泄露风险分析报告》https://book.yunzhan365.com/tkgd/cltc/mobile/index.html
[12] 全球云上数据泄露风险分析简报 (第一期)https://book.yunzhan365.com/tkgd/sash/mobile/index.html
[13] 全球云上数据泄露风险分析简报 (第二期)https://book.yunzhan365.com/tkgd/bxgy/mobile/index.html
[14] 全球云上数据泄露风险分析简报 (第三期)https://book.yunzhan365.com/tkgd/xyih/mobile/index.html
[15] 全球云上数据泄露风险分析简报 (第四期)https://book.yunzhan365.com/tkgd/xbin/mobile/index.html
[16] 全球云上数据泄露风险分析简报 (第五期)https://book.yunzhan365.com/bookcase/wxjf/index.html
责任编辑:吕治政
本公众号原创文章仅代表作者观点,不代表绿盟科技立场。所有原创内容版权均属绿盟科技研究通讯。未经授权,严禁任何媒体以及微信公众号复制、转载、摘编或以其他方式使用,转载须注明来自绿盟科技研究通讯并附上本文链接。
关于我们
绿盟科技研究通讯由绿盟科技创新研究院负责运营,绿盟科技创新研究院是绿盟科技的前沿技术研究部门,包括星云实验室、天枢实验室和孵化中心。团队成员由来自清华、北大、哈工大、中科院、北邮等多所重点院校的博士和硕士组成。
绿盟科技创新研究院作为“中关村科技园区海淀园博士后工作站分站”的重要培养单位之一,与清华大学进行博士后联合培养,科研成果已涵盖各类国家课题项目、国家专利、国家标准、高水平学术论文、出版专业书籍等。
我们持续探索信息安全领域的前沿学术方向,从实践出发,结合公司资源和先进技术,实现概念级的原型系统,进而交付产品线孵化产品并创造巨大的经济价值。
长按上方二维码,即可关注我
目录
最新
- 云上LLM数据泄露风险研究系列(三):开源大模型应用的攻击面分析
- 云上LLM数据泄露风险研究系列(三):开源大模型应用的攻击面分析
- RSAC 2025创新沙盒 | Knostic:重塑企业AI安全的访问控制范式
- RSAC 2025创新沙盒 | Aurascape:重构AI交互可视性与原生安全的智能防线
- RSAC 2025创新沙盒 | Aurascape:重构AI交互可视性与原生安全的智能防线
- RSAC 2025创新沙盒 | Knostic:重塑企业AI安全的访问控制范式
- RSAC 2025创新沙盒 | TwineSecurity :数字员工驱动企业安全建设
- 云上LLM数据泄露风险研究系列(二):基于LLMOps平台的攻击面分析