OpenPGP certification accepted from a subkey without certification authority
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- None
- Attack complexity
- Low
- Attack requirements
- Present
- Impact type
- Security bypass
- Confidentiality · integrity · availability
- None · High · None
- Fix status
- Partial Red Hat: 5 without a fix
Attack profile from CVSS 4.0 · CNA. Fix status from CNA and Red Hat. Impact type from CWE-285.
Summary
In Bouncy Castle for Java before 1.86, the high-level OpenPGP certificate API accepted a third-party certification or trust delegation from any component key of the issuing certificate, without requiring that component to have been granted the authority to certify. OpenPGPCertificate.getCertificationBy() and getDelegationBy() resolve a third-party signature by matching its issuer key identifier against every key of the third-party certificate, then verify the issuing component's binding chain and the signature itself; nothing checked that the issuing component carried the RFC 9580 sec. 5.2.3.29 certification key flag (CERTIFY_OTHER) when the signature was created. A subkey bound only with SIGN_DATA - the online signing subkey of exactly the offline-primary arrangement those key flags exist to express - could therefore issue a positive User ID certification over an attacker-controlled identity, or a full-trust depth-one direct-key delegation of introducer trust, and the API returned it as a valid signature chain attributed to the third-party certificate. An application treating getCertificationBy(...).isValid() or getDelegationBy(...) as an identity or trusted-introducer decision would attribute the attacker's assertion to the offline primary key. The same held for a legacy RSA subkey bound only for encryption, whose algorithm is nonetheless able to sign. This does not forge the primary key's signature or recover any private key; it promotes an already-compromised restricted subkey to the primary key's identity-issuing authority, defeating the containment the key-flag separation provides. A third-party certification or delegation is now attributed to the issuing certificate only when the component key that made it is the primary key, or is a subkey holding CERTIFY_OTHER when the signature was created, so certification-capable subkeys continue to be accepted; primary keys are accepted whatever their key flags say, since a primary key is certification-capable by construction and certificates carrying no key flags subpacket at all are common. Third-party revocations are deliberately outside the rule, since declining to honour one would keep trust alive rather than withdraw it.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- No
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| Legion of the Bouncy Castle Inc. | BC-JAVA | 1.81 to before 1.86 | 1.86 | Patch available | CNA |
- BC-JAVA VendorLegion of the Bouncy Castle Inc. Affected 1.81 to before 1.86 Fixed in 1.86 Patch available CNA
CPE names Threatist (inferred) · 1
Inferred from how NVD named this product before; not given by a source.
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:2.3:a:bouncycastle:bc-java:*:*:*:*:*:*:*:* | — | — | Legion of the Bouncy Castle Inc. |
- cpe:2.3:a:bouncycastle:bc-java:*:*:*:*:*:*:*:* Versions — — ·Legion of the Bouncy Castle Inc.
Remediation
- Fix · CNA BC-JAVA (Legion of the Bouncy Castle Inc.) Fixed in 1.86
Fixed in the same release
Records fixed by the same vendor advisory or release, as the CNA lists them.
- Release ·
Legion of the Bouncy Castle BC-JAVA 1.86
11 records Highest priority Priority MEDIUM 4 MEDIUM, 7 LOW
Other records, highest priority first
- TI-2026-67477 MLS external commit can remove an arbitrary group memberPriority MEDIUM 43
- TI-2026-67476 PKIXCertPathReviewer does not apply X.509 name constraints to the target certificatePriority MEDIUM 43
- TI-2026-67475 CMS AuthenticatedData exposes attacker-inserted authAttrs when digestAlgorithm is absentPriority MEDIUM 42
Vendor assessments
Red Hat
Red Hat rating: Moderate. Red Hat's page for this CVE →
| Product | Status | Plan or fix |
|---|---|---|
| Red Hat JBoss Enterprise Application Platform 7 | Affected | No fix yet: Fix deferred |
| Red Hat JBoss Enterprise Application Platform 8 | Affected | No fix yet: Fix deferred |
| Red Hat JBoss Enterprise Application Platform Expansion Pack | Affected | No fix yet: Fix deferred |
| Red Hat Single Sign-On 7 | Affected | No fix yet: Fix deferred |
| Red Hat build of Apache Camel 4 for Quarkus 3 | Affected | No fix yet: Fix deferred |
Not affected: 1 product
- Red Hat JBoss Enterprise Application Platform 7
Timeline
- 2026-10-03 Threatist record created from CVE-2026-71886
- 2026-10-03 Alias added: GHSA-7hrr-mw36-px4x
- 2026-10-04 Priority changed: MEDIUM → LOW
- 2026-10-05 CISA SSVC decision points changed
- 2026-10-16 Affected versions changed · Red Hat
- 2026-10-16 CVSS score added · Red Hat
References
More Legion of the Bouncy Castle Inc. vulnerabilities
- TI-2018-15967 Legion of the Bouncy Castle Legion of the Bouncy Castle Java Cryptography APIs 1.58 up to… CVSS 3.1CRITICAL 9.8
- TI-2017-09736 BouncyCastle JCE TLS Bleichenbacher/ROBOT CVSS 3.0HIGH 7.5
- TI-2026-42545 MTI/A0 DH agreement exponentiates unvalidated peer value CVSS 4.0CRITICAL 9.3
- TI-2026-42533 JSSE hostname verifier CN-fallback enabled by default despite documented opt-in CVSS 4.0CRITICAL 9.3
- TI-2026-41816 Stapled OCSP response accepted without binding to the checked certificate CVSS 4.0CRITICAL 9.3
- TI-2026-07701 Name Constraints bypass via trailing dot in rfc822Name and URI CVSS 4.0CRITICAL 9.3
Sources
- CVE-2026-71886 · CVE Program
- CVE-2026-71886 · NVD
- FIRST EPSS
- GHSA-7hrr-mw36-px4x · GitHub Advisory Database · CC BY 4.0
- CVE-2026-71886 · Red Hat security data · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences