GitHub Advisoryadvisory · Go
GHSA-3jgf-r68h-xfqm btcd susceptible to consensus failures
MEDIUM
Official page ↗
- Aliases
- CVE-2024-34478
- Ecosystem
- Go
- Packages
- github.com/btcsuite/btcd
- Severity
- Moderate
- Weaknesses
- CWE-436
- Reviewed
- 2024-05-06
Affected packages
• Go github.com/btcsuite/btcd: < 0.24.0 → fixed in 0.24.0
Description
btcd before 0.24.0 does not correctly implement the consensus rules outlined in BIP 68 and BIP 112, making it susceptible to consensus failures. Specifically, it uses the transaction version as a signed integer when it is supposed to be treated as unsigned. There can be a chain split and loss of funds.
Related
Alias · CVE (1)
- CVE-2024-34478 btcd before 0.24.0 does not correctly implement the consensus rules outlined in BIP 68 and BIP 112, making it susceptible to consensus… vulnerability
Weakness · CWE (1)
- CWE-436 Interpretation Conflict weakness
References
- https://nvd.nist.gov/vuln/detail/CVE-2024-34478 advisory
- https://github.com/btcsuite/btcd/pull/1981 web
- https://github.com/btcsuite/btcd/commit/253b688c68b89eca7eb75d4d5443dbdbc928db3c web
- https://delvingbitcoin.org/t/disclosure-btcd-consensus-bugs-due-to-usage-of-signed-transaction-version/455 web
- https://github.com/btcsuite/btcd package
- https://github.com/btcsuite/btcd/blob/e4c88c3a3ecb1813529bf3dddc7a865bd418a6b8/blockchain/chain.go#L383C1-L392C3 web
- https://github.com/btcsuite/btcd/blob/e4c88c3a3ecb1813529bf3dddc7a865bd418a6b8/txscript/opcode.go#L1172C1-L1178C3 web
- https://pkg.go.dev/vuln/GO-2024-2818 web