bsv-sdk ARC 广播器将 INVALID/MALFORMED/ORPHAN 响应误认为广播成功
PoC影响软件
bsv-sdk
CWE
CWE-754
CVSS
7.5 (AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N)
受影响版本
>= 0.1.0, < 0.8.2
修复版本
>= 0.8.2
关联产品
漏洞描述
### 漏洞概述 `bsv-sdk` 中的 ARC 广播器在处理 ARC 响应时存在逻辑缺陷。其失败检测机制过于狭窄,仅能识别 `REJECTED` 和 `DOUBLE_SPEND_ATTEMPTED` 两种状态。对于 `txStatus` 为 `INVALID`、`MALFORMED`、`MINED_IN_STALE_BLOCK` 或包含 `ORPHAN` 信息的响应,SDK 会将其错误地视为广播成功。 ### 影响范围 受影响的软件为 `bsv-sdk` (Ruby gem),版本范围为 `>= 0.1.0, < 0.8.2`。 ### 利用条件 攻击者可以通过构造无效交易、格式错误的交易,或者利用返回特定错误状态(如 `INVALID` 或 `ORPHAN`)的恶意/异常 ARC 端点,诱导依赖 SDK 成功响应的应用程序执行后续业务逻辑(如完成支付确认)。 ### 修复建议 建议将 `bsv-sdk` 升级至 `0.8.2` 或更高版本。该版本扩展了失败状态的识别范围,并改进了协议合规性(如支持 `application/json` 格式和必要的 HTTP 请求头)。
补充来源
PoC / 利用代码
NOTICE: This is an AI-generated reproduction snippet for educational purposes and is unverified.
登录后可查看 PoC 内容
当前页面内容可能涉及 AI 翻译、补全或规范化处理,请结合原始来源核对关键信息。