{"id":"GHSA-3jgf-r68h-xfqm","summary":"btcd susceptible to consensus failures","details":"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.","aliases":["CVE-2024-34478","GO-2024-2818"],"modified":"2024-08-07T19:55:49Z","published":"2024-05-05T03:30:47Z","database_specific":{"nvd_published_at":"2024-05-05T01:15:06Z","cwe_ids":["CWE-436"],"severity":"MODERATE","github_reviewed":true,"github_reviewed_at":"2024-05-06T14:28:56Z"},"references":[{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2024-34478"},{"type":"WEB","url":"https://github.com/btcsuite/btcd/pull/1981"},{"type":"WEB","url":"https://github.com/btcsuite/btcd/commit/253b688c68b89eca7eb75d4d5443dbdbc928db3c"},{"type":"WEB","url":"https://delvingbitcoin.org/t/disclosure-btcd-consensus-bugs-due-to-usage-of-signed-transaction-version/455"},{"type":"PACKAGE","url":"https://github.com/btcsuite/btcd"},{"type":"WEB","url":"https://github.com/btcsuite/btcd/blob/e4c88c3a3ecb1813529bf3dddc7a865bd418a6b8/blockchain/chain.go#L383C1-L392C3"},{"type":"WEB","url":"https://github.com/btcsuite/btcd/blob/e4c88c3a3ecb1813529bf3dddc7a865bd418a6b8/txscript/opcode.go#L1172C1-L1178C3"},{"type":"WEB","url":"https://pkg.go.dev/vuln/GO-2024-2818"}],"affected":[{"package":{"name":"github.com/btcsuite/btcd","ecosystem":"Go","purl":"pkg:golang/github.com/btcsuite/btcd"},"ranges":[{"type":"SEMVER","events":[{"introduced":"0"},{"fixed":"0.24.0"}]}],"database_specific":{"source":"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2024/05/GHSA-3jgf-r68h-xfqm/GHSA-3jgf-r68h-xfqm.json"}}],"schema_version":"1.7.3"}