Full Disclosure: CVE-2021-31876 Defect in Bitcoin Core's bip125 logic [combined summary]



Individual post summaries: Click here to read the original discussion on the bitcoin-dev mailing list

Published on: 2021-05-13T01:06:21+00:00


Summary:

Antoine Riard, a Bitcoin Core developer, has identified two defects that have security implications for downstream projects. The first defect is in the Bitcoin Core bip125 logic, where an unconfirmed child transaction with nSequence = 0xff_ff_ff_ff spending an unconfirmed parent with nSequence does not enforce the "through inheritance" signaling as described in the Bip 125 specification. This allows attackers to pin an opt-out child without a higher fee, reducing the odds of confirmation and lowering the cost of attack.The second defect relates to the Lightning Network (LN) codebase and involves a pinning transaction that signals "RBF opt-in" through nSequence child, but this is inconsistent with the inherited signaling mechanism described in BIP 125. LN nodes operators concerned about this defect may prefer anchor outputs channels to mitigate this specific pinning vector.The defect was disclosed to the LN project maintainers, who were informed that the currently deployed anchor outputs protocol upgrade mitigates the issue, but old channels remain vulnerable. Antoine Riard believes that there is a lack of an established policy for coordinated security disclosures between a base layer implementation and its downstream projects, as well as a lack of a clear methodology to identify affected projects and emergency upgrade mechanisms.The defect was assigned CVE-2021-31876, and full disclosure was made to the bitcoin-dev mailing list. It is important to note that the provided context is incomplete, and more details are needed for a comprehensive summary.


Updated on: 2023-08-02T03:44:14.911782+00:00