btcd 未正确重新实现比特币核心的“FindAndDelete()”功能(CVE-2024-38365)

admin 2024-10-13 01:53:41 Ali_nvd 来源:ZONE.CI 全球网 0 阅读模式
btcd 未正确重新实现比特币核心的“FindAndDelete()”功能(CVE-2024-38365)

CVE编号

CVE-2024-38365

利用情况

暂无

补丁情况

N/A

披露时间

2024-10-12
漏洞描述
btcd是一个用Go语言编写的比特币全节点替代实现。btcd比特币客户端(版本0.10至0.24)未能正确重新实现比特币核心(Bitcoin Core)的“FindAndDelete()”功能。这一逻辑是共识关键的:与其他比特币客户端的行为差异可能导致btcd客户端接受一个无效的比特币区块(或拒绝一个有效的区块)。这种共识失败可能被利用来导致链分裂(接受一个无效的比特币区块)或被用来拒绝服务(DoS)btcd节点(拒绝一个有效的比特币区块)。攻击者可以创建一个标准交易,其中FindAndDelete没有返回匹配项,但removeOpCodeByData确实存在,导致btcd获得不同的签名哈希,从而导致链分裂。重要的是,任何比特币用户都可以远程利用此漏洞,并且不需要任何哈希算力。这是因为通过“标准”比特币交易就可以触发不同的行为,即交易在包含到比特币区块之前,会通过P2P网络进行中继。removeOpcodeByData(script []byte,dataToRemove []byte)会从script中删除包含dataToRemove的任何数据推送。然而,FindAndDelete只删除精确匹配项。例如,对于script = "<data> <data||foo>"和dataToRemove = "data",btcd将删除两个数据推送,但比特币核心的FindAndDelete只删除第一个<data>推送。此问题已在btcd版本v0.24.2中得到修复。建议用户进行升级。对于此问题,尚无已知的解决方案。
解决建议
建议您更新当前系统或软件至最新版,完成漏洞的修复。
参考链接
https://delvingbitcoin.org/t/cve-2024-38365-public-disclosure-btcd-findanddel...
https://github.com/btcsuite/btcd/commit/04469e600e7d4a58881e2e5447d19024e49800f5
https://github.com/btcsuite/btcd/releases/tag/v0.24.2
https://github.com/btcsuite/btcd/security/advisories/GHSA-27vh-h6mc-q6g8
CVSS3评分 N/A
  • 攻击路径 N/A
  • 攻击复杂度 N/A
  • 权限要求 N/A
  • 影响范围 N/A
  • 用户交互 N/A
  • 可用性 N/A
  • 保密性 N/A
  • 完整性 N/A
N/A
CWE-ID 漏洞类型
CWE-670 控制流实现总是不正确
- avd.aliyun.com
weinxin
版权声明
本站原创文章转载请注明文章出处及链接,谢谢合作!
N/A Ali_nvd

N/A

N/ACVE编号 CVE-2024-48768利用情况 暂无补丁情况 N/A披露时间 2024-10-12漏洞描述An issue in almaodo G
评论:0   参与:  0