漏洞详情
CVE ID: CVE-2025-14762 GHSA ID: GHSA-2xgq-q749-89fq 严重等级: 中等 CVSS 总体评分: 6.0
受影响的包及版本:
- 包:
aws-sdk-s3(RubyGems) - 受影响版本:
< 1.208.0 - 已修复版本:
1.208.0
描述
概述 Ruby版S3加密客户端(S3EC)是一个开源客户端加密库,用于方便地向S3写入和读取加密记录。 当加密数据密钥(EDK)存储在“指令文件”(Instruction File)而非S3的元数据记录中时,EDK会暴露于“隐形蝾螈”攻击之下。这可能允许EDK被替换为新密钥。
影响 - 密钥承诺背景 存在一种加密特性,即在某些条件下,单个密文可以通过使用不同的加密密钥解密成两个不同的明文。为了解决这个问题,强加密方案使用所谓的“密钥承诺”,这是一个确保加密消息只能由原始加密所用的密钥解密的过程。
在旧版本的S3EC中,当客户同时使用称为“指令文件”的功能来存储EDK时,由于多个EDK可能与底层加密消息对象相关联,未实现密钥承诺。对于此类客户,利用缺乏密钥承诺的攻击是可能的。攻击者需要两样东西来利用此问题:(i)能够创建另一个恶意EDK,该密钥也能解密底层对象以产生期望的明文;(ii)有权将新的指令文件上传到S3存储桶,以替换用户使用S3EC放置在那里的现有指令文件。未来任何尝试使用S3EC解密底层加密消息的操作,都将无意中使用恶意EDK来产生有效的明文消息。
受影响版本: <= 1.207.0
修复方案
我们正在将“密钥承诺”的概念引入S3EC,将EDK加密绑定到密文以解决此问题。为了保持对传输中消息的兼容性,我们分两个版本发布修复:一个代码兼容的次要版本,可以读取具有密钥承诺的消息但不能写入;以及一个新的主要版本,可以同时读写具有密钥承诺的消息。为了获得最大安全性,建议客户升级到最新的主要版本:1.208.0 或更高版本。
变通方案 没有变通方案,请升级到建议的S3EC版本。
参考 如果客户对此公告有任何疑问或评论,AWS SDK for Ruby要求他们通过问题报告页面或直接发送电子邮件至 aws-security@amazon.com 联系AWS安全团队。请不要创建公开的GitHub问题。
参考链接:
- GHSA-2xgq-q749-89fq
- https://nvd.nist.gov/vuln/detail/CVE-2025-14762
- aws/aws-sdk-ruby@b633ba1
- https://aws.amazon.com/security/security-bulletins/AWS-2025-032
- https://rubygems.org/gems/aws-sdk-s3/versions/1.208.0
- https://github.com/rubysec/ruby-advisory-db/blob/master/gems/aws-sdk-s3/CVE-2025-14762.yml
CVSS v4 基础指标
可利用性指标:
- 攻击向量: 网络
- 攻击复杂度: 低
- 攻击要求: 存在
- 所需权限: 低
- 用户交互: 无
脆弱系统影响指标:
- 机密性: 无影响
- 完整性: 高影响
- 可用性: 无影响
后续系统影响指标:
- 机密性: 无影响
- 完整性: 无影响
- 可用性: 无影响
CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N
EPSS 分数
0.013% (第1百分位数) 此分数估计了此漏洞在未来30天内被利用的概率。数据由FIRST提供。
弱点
弱点: CWE-327 - 使用已破解或有风险的加密算法 描述:产品使用了已破解或有风险的加密算法或协议。