{
  "cveId": "CVE-2026-71886",
  "url": "https://patchblox.com/security/cve/CVE-2026-71886",
  "summary": "CVE-2026-71886 is fixed in bouncycastle on 1 platform, first by DEBIAN-CVE-2026-71886, released October 3, 2026. It is not reported as exploited. Patch Radar priority: Routine.",
  "title": "bouncycastle: In Bouncy Castle for Java before 1.86, the high-level OpenPGP certificate API accepted a third-party certification or...",
  "description": "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\u0027s 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\u0027s 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\u0027s signature or recover any private key; it promotes an already-compromised restricted subkey to the primary key\u0027s 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.",
  "published": "2026-10-03T09:17:04Z",
  "severity": "",
  "epss": 0.00167,
  "epssPercentile": 0.05967,
  "priority": "Routine",
  "priorityTier": 4,
  "exploited": false,
  "vendorExploited": false,
  "disclosed": false,
  "fixes": [
    {
      "platform": "linux",
      "product": "bouncycastle",
      "release": "Debian 14",
      "fixedVersion": "1.86-1",
      "fix": "DEBIAN-CVE-2026-71886",
      "url": "https://patchblox.com/security/fix/linux/debian-cve-2026-71886",
      "released": "2026-10-03T21:16:35Z"
    },
    {
      "platform": "linux",
      "product": "bouncycastle",
      "release": "opensuse-leap 16.0",
      "fixedVersion": "1.86-160000.1.1",
      "fix": "OPENSUSE-SU-2026:22169-1",
      "url": "https://patchblox.com/security/fix/linux/opensuse-su-2026-22169-1",
      "released": "2026-11-07T00:47:19Z"
    },
    {
      "platform": "linux",
      "product": "bouncycastle",
      "release": "sles 15.6",
      "fixedVersion": "1.86-150200.3.41.1",
      "fix": "SUSE-SU-2026:4797-1",
      "url": "https://patchblox.com/security/fix/linux/suse-su-2026-4797-1",
      "released": "2026-11-07T00:42:08Z"
    },
    {
      "platform": "linux",
      "product": "bouncycastle",
      "release": "sles 15.7",
      "fixedVersion": "1.86-150200.3.41.1",
      "fix": "SUSE-SU-2026:4797-1",
      "url": "https://patchblox.com/security/fix/linux/suse-su-2026-4797-1",
      "released": "2026-11-07T00:42:08Z"
    },
    {
      "platform": "linux",
      "product": "bouncycastle",
      "release": "sles 16.0",
      "fixedVersion": "1.86-160000.1.1",
      "fix": "SUSE-SU-2026:24461-1",
      "url": "https://patchblox.com/security/fix/linux/suse-su-2026-24461-1",
      "released": "2026-11-07T00:44:01Z"
    }
  ],
  "noFixYet": [],
  "dataAsOf": "2026-11-08T06:59:42Z",
  "attribution": {
    "text": "Data: Patchblox Patch Radar",
    "url": "https://patchblox.com/security/patch-radar",
    "terms": "https://patchblox.com/security/patch-radar/use-the-data"
  }
}