Bouncy Castle is a widely used Java crypto library; this bug lets applications accept certificates that violate CA name constraints, enabling spoofing/MITM across many enterprise apps.
CVE-2026-71889
Name-constraint checks skipped on leaf certs in Bouncy Castle, allowing unauthorized certificates.
Is CVE-2026-71889 being exploited?
Not confirmed. CVE-2026-71889 does not appear in CISA's Known Exploited Vulnerabilities catalog, which records only exploitation that has been observed and reported publicly. That is evidence of absence of a report, not evidence the flaw is unattacked.
How severe is CVE-2026-71889?
CVE-2026-71889 is rated High with a CVSS score of 8.7. Severity describes how bad exploitation would be, not how likely it is: pair it with exploitation evidence before deciding what to patch first.
Is there a patch for CVE-2026-71889?
Yes. A fix has been recorded for CVE-2026-71889. The vendor advisory is the authority on the exact fixed version — apply it from there rather than from a summary.
What does CVE-2026-71889 affect?
CVE-2026-71889 affects Bouncy Castle for Java < 1.86, Bouncy Castle for Java LTS < 2.73.13, Bouncy Castle FIPS (bcpkix-fips) < 1.0.13/2.0.13/2.1.13, Applications using org.bouncycastle.pkix.jcajce.PKIXCertPathReviewer or legacy org.bouncycastle.x509.PKIXCertPathReviewer. Confirm the exact affected versions against the vendor advisory before deciding you are exposed.
What should I do about CVE-2026-71889?
Upgrade BC to 1.86+/LTS 2.73.13+/BC-FJA fixed releases; avoid using PKIXCertPathReviewer for trust decisions.
Exploitation status reflects CISA's KEV catalog as we last synced it. Check the catalog directly.
Applications using PKIXCertPathReviewer may accept leaf certs that violate issuer name-constraints, enabling spoofed/unauthorized certificates and MITM attacks.
Patch when possible
- affected>= 1.0.4 and < 1.0.13
- affected>= 2.0.0 and < 2.0.13
- affected>= 2.1.0 and < 2.1.13
- affected< 1.86
- affected>= 2.73.0 and < 2.73.13
As published in the CVE Program record. A version outside these ranges is not a statement that it is unaffected — vendors sometimes understate a range, and distribution-backported builds carry upstream numbers that do not reflect what was patched into them.