Incorrect implementation of the consensus rules outlined in BIP 68 and BIP 112 making btcd 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.
{
"url": "https://pkg.go.dev/vuln/GO-2024-2818",
"review_status": "REVIEWED"
}{
"imports": [
{
"symbols": [
"BlockChain.CalcSequenceLock",
"BlockChain.CheckConnectBlockTemplate",
"BlockChain.ProcessBlock",
"BlockChain.calcSequenceLock",
"ValidateTransactionScripts",
"txValidator.Validate"
],
"path": "github.com/btcsuite/btcd/blockchain"
},
{
"symbols": [
"Engine.Execute",
"Engine.Step",
"opcodeCheckSequenceVerify"
],
"path": "github.com/btcsuite/btcd/txscript"
}
]
}