本文へ移動

#CVE-2026-107846

脆弱性の一覧へ戻る

編集部の見出し:bitcoinjs-lib:重複取引で Merkle ルート検証をすり抜け

CVE(NVD)CVSS 9.3 Critical

NVD の情報

bitcoinjs-lib is a JavaScript Bitcoin library for Node.js and browsers. From 2.3.0 until 5.2.1, 6.1.8, and 7.0.2, fastMerkleRoot pads odd Merkle-tree levels by hashing the final node with itself but does not report adjacent duplicate hashes. The affected block-root verifier was introduced as Block.checkMerkleRoot() alongside Block.calculateMerkleRoot(), while later versions expose validation through checkTxRoots() and __checkMerkleRoot; these validation paths can accept a recomputed root without checking for mutation. A peer can append duplicate transactions so a different transaction list retains the original Merkle root, block header, proof of work, and block identifier. Consumers that rely on block-root validation, including explorers, exchange indexers, or SPV clients, can process a duplicated transaction twice or blacklist the shared block hash and reject the honest block. This issue is fixed in versions 5.2.1, 6.1.8, and 7.0.2.

公開日
2026-11-04
最終更新(NVD)
2026-11-04
NVD の状態
Received
脆弱性の種類
CWE-354

深刻度(CVSS)

  • 9.3 CriticalCVSS 4.0/副/評価:security-advisories@github.comCVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:H/VA:L/SC:N/SI:H/SA:H/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X

悪用の状況

CISA KEV には掲載されていません(掲載されていないことは、悪用されていないことの証明ではありません)。

解消方法

  • 解消方法の情報なし

「NVD の条件から推定」は、NVD が影響ありとする版の上限から読み取ったもので、修正版とは限りません。「解消方法の情報なし」は、修正が無いという意味ではありません。必ずベンダーの公告で確認してください。

編集部の記載(レポート掲載時)

レポートの編集部がベンダー公告などから転記した内容です。検証済みの値ではないため、必ず出典で確認してください。

2026-11-05 のレポートbitcoinjs-lib:重複取引で Merkle ルート検証をすり抜け

4.0 で 9.3。5.2.1・6.1.8・7.0.2 で修正(NVD の記載)。

悪用状況(編集部):悪用の報告は確認されていない

参照(NVD)

NVD から取得:2026-11-04T19:45:31.340Z

This product uses the NVD API but is not endorsed or certified by the NVD.

悪用の確認情報は CISA Known Exploited Vulnerabilities Catalog(NVD 経由で取得)によります。EPSS は FIRST(www.first.org/epss)によります。