CVE-2026-40070BSV Ruby SDK 在 0.3.1 至 0.8.2 之前的版本中存在严重安全漏洞。该漏洞位于 `acquire_certificate` 方法,由于未对证书颁发者的签名进行验证,直接将证书记录写入存储。攻击者利用此漏洞可伪造身份证书,绕过系统的身份认证机制,导致高机密性和完整性风险。
该漏洞源于 `BSV::Wallet::WalletClient#acquire_certificate` 实现逻辑缺陷。在 `acquisition_protocol` 设为 'direct' 时,系统直接接受调用者提供的所有字段(含签名);设为 'issuance' 时,系统直接接受外部 URL 返回的签名。由于缺乏对签名有效性的校验步骤,攻击者能够向 API 注入包含伪造签名的恶意证书数据。一旦数据被持久化,调用 `list_certificates` 或 `prove_certificate` 时,系统会误判证书为合法,导致攻击者成功进行身份伪造。