Skip to main content
← All vulnerabilities
CVE-2026-44714GHSA-HFCF-V2F8-X9PC

bitcoinj: ScriptExecution P2PKH/P2WPKH Verification Bypass

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 0.17.1
1 proof of concept on GitHub
  • Exploitation: none
  • Automatable: yes
  • Technical impact: partial

Summary

The bitcoinj library is a Java implementation of the Bitcoin protocol. Prior to 0.17.1, ScriptExecution.correctlySpends() contains two fast-path verification bugs for standard P2PKH and native P2WPKH spends in core/src/main/java/org/bitcoinj/script/ScriptExecution.java. In both branches, bitcoinj verifies an attacker-controlled signature/public-key pair but fails to verify that the public key is the one committed to by the output being spent. As a result, any attacker keypair can satisfy bitcoinj's local verification for arbitrary P2PKH and P2WPKH outputs. This vulnerability is fixed in 0.17.1.

Timeline

  1. CVE published
  2. CISA SSVC assessment

    Exploitation: none · Automatable: yes · Technical impact: partial

  3. Record last updated

Affected versions

  • bitcoinj bitcoinj

    fixed in 0.17.1

  • org.bitcoinj:bitcoinj-coreMaven

    From 0.15 · fixed in 0.17.1

References 4

GitHub · bitcoinj/bitcoinj

GitHub · dntaskmehow/BABEF