CVE-2025-0343: Swift ASN.1解析恶意构造的BER/DER数据时可能崩溃
漏洞详情
包: swift (github.com/apple/swift-asn1)
受影响版本: <= 1.3.0
已修复版本: 1.3.1
漏洞描述
Swift ASN.1库在解析某些BER/DER构造时可能导致崩溃。此崩溃是由于ASN.1库本身的混淆引起的,该库假设某些对象只能以构造形式或原始形式提供,如果未满足此约束,将触发preconditionFailure。
重要的是,这些约束在DER中确实必须为真,但早期节点解析器并未强制执行此正确性,因此在解码过程中依赖该假设是不正确的,而这正是该库所做的。
当解析任何DER/BER格式对象时,都可能触发这些崩溃。这里不存在内存安全问题:崩溃是Swift运行时的优雅崩溃。其影响是,在解析来自未知来源(例如解析TLS证书时)的BER/DER数据时,可用作拒绝服务攻击向量。
非常感谢 @baarde 报告此问题并提供修复。
参考资料
- GHSA-w8xv-rwgf-4fwh
- apple/swift-asn1@ae33e59
- https://nvd.nist.gov/vuln/detail/CVE-2025-0343
严重性
低严重性
EPSS 分数
0.172% (第39百分位)
此分数估计了此漏洞在未来30天内被利用的概率。数据由FIRST提供。
弱点
弱点: CWE-228 - 对语法无效结构的处理不当
该产品未处理或错误处理未按照相关规范语法格式正确的输入。在MITRE上了解更多信息。
标识符
CVE ID: CVE-2025-0343
GHSA ID: GHSA-w8xv-rwgf-4fwh
源代码: apple/swift-asn1
致谢
报告者: baarde
本公告已编辑。参见历史记录。
有什么想贡献的吗?为此漏洞提出改进建议。