Weaviate security release - High severity fix for credential disclosure in the Google modules
TL;DR · AI 摘要
Weaviate security release - High severity fix for credential disclosure in the Google modules Weaviate Intro Weaviate...
核心要点
- 主题聚焦:Weaviate security release - High severity fix fo
- 来源:Weaviate Blog,建议结合原文判断细节。
- AI 分析暂不可用,本条为保底评分与摘要。
Weaviate 安全更新 - 修复 Google 模块中的高严重性凭证泄露漏洞 | Weaviate
简介
Weaviate v1.39.3 修复了 Weaviate 的 Google 模块中一个高严重性凭证泄露漏洞。该漏洞源于未验证的端点设置可能被用于将出站请求及操作员的 Google 凭证重定向到任意主机。MITRE 已受理 CVE 编号申请,目前尚未分配;我们将在编号发布后更新本文。
根据我们的安全政策,Weaviate 云服务用户以及 AWS、Azure 和 GCP 市场用户已无缝完成补丁更新。Weaviate 企业支持客户已获得受限制通知,我们的客户支持团队正在与 Weaviate 专用客户协调必要的版本升级。
通过未验证的 apiEndpoint 参数泄露凭证(CVE 编号待分配)
Weaviate 的 Google 模块(text2vec-google、multi2vec-google 和 generative-google)允许通过 apiEndpoint 配置值设置 Vertex AI 和 Gemini 请求的出站主机。该值在未验证的情况下直接写入请求 URL 的主机部分,且操作员的 Google 凭证始终以 Bearer Token 形式附加到请求中,无论请求发送目标如何。因此,能够影响 apiEndpoint 参数的用户可迫使 Weaviate 将凭证发送至任意指定主机。
设置该参数的路径有两种:
- 通过集合配置。在创建或更新集合时设置 moduleConfig.text2vec-google.apiEndpoint(或其他两个模块的等效参数)。此层级的验证仅检查是否存在项目 ID,从未验证 endpoint 字符串本身。此路径需要 schema 写入权限。
- 通过 GraphQL 查询参数。generative-google 允许在生成式查询中将 apiEndpoint 作为内联参数传入,且单次查询的值会覆盖集合默认值。此路径仅需对已配置使用 generative-google 的集合进行普通读取访问,无需 schema 写入权限,也不会修改存储配置。
第二种路径更为严重,也是漏洞严重性评级的主要原因。
泄露的凭证类型取决于部署如何认证 Google 服务。若配置了静态 API 密钥,则会泄露该密钥;若启用了 USE_GOOGLE_AUTH,泄露的是具有 cloud-platform 范围的实时 OAuth 访问令牌。该令牌权限足够访问底层服务账户可访问的大多数 Google Cloud API。这是官方文档推荐的使用 Google Cloud 应用默认凭证运行 Vertex AI 向量化的方式,也是 GKE 部署使用工作负载身份的常见配置。
该漏洞与早期版本中新增的 base URL 验证属于不同的代码路径。此前的验证工作强化了大量其他模型提供商的端点字段安全性,但那些字段名称为 baseURL;而 Google 模块的字段名称为 apiEndpoint,未被覆盖。相关的连接时保护机制也需通过 MODULES_VALIDATE_BASE_URL 开关启用,且仅阻止环回、私有和链路本地地址,因此无法防止凭证被发送至公网中的攻击者控制主机。
此修复措施将端点验证扩展到所有三个 Google 模块中的 apiEndpoint 字段,涵盖配置验证层和 GraphQL 查询参数层。
该漏洞的 CVSS 评分为高(7.1)。
受影响的 Weaviate 版本为 < v1.39.3。我们建议受影响用户将 Weaviate 安装升级至 v1.39.3 或更高版本以完全解决该漏洞。在升级完成前,可通过从 "enabled_modules" 标志中移除 text2vec-google、multi2vec-google 和 generative-google 来禁用受影响模块。当必须使用这些模块时,我们建议限制对配置使用这些模块的集合的模式写入和查询访问权限,并将 Vertex AI 使用的服务账号权限范围严格限定在工作负载所需的最小范围,而非依赖广泛的云平台权限。
目前尚无证据表明该漏洞已被利用。
致谢
该漏洞由独立安全研究员 Syed Anas Mohiuddin 发现并报告,他通过我们的漏洞披露计划向我们通知了该问题。我们感谢他报告的详细程度和谨慎态度,并感谢他在验证和修复过程中的协作。
报告安全问题
如果您认为发现了安全漏洞,请访问我们的安全报告页面了解如何向我们提交报告。Weaviate 将联系您确认报告,并提供后续步骤建议。我们要求研究人员在漏洞被修复并公开宣布前不要自行公开披露漏洞,除非已收到 Weaviate 安全团队允许公开的明确回复。
准备开始构建?
查看[快速入门教程](/quickstart),或注册免费的 [Weaviate Cloud 账户](/signup)。