Skip to content
Fencer Vulns
high 8.7

CVE-2026-71888 json

CMS AuthenticatedData exposes attacker-inserted authAttrs when digestAlgorithm is absent

published 2026-10-03 36 d ago modified 2026-10-06 33 d ago also EUVD-2026-91991

cvss
8.7
version 4.0, CNA
cisa kev
Not listed
not in CISA's catalog
epss
0.1%
EPSS 0.1% chance of exploitation in 30 days, percentile 1%
public exploits
0
none known

Summary

In Bouncy Castle for Java before 1.86, the streaming CMS AuthenticatedData parser accepted a message whose digestAlgorithm and authAttrs fields disagreed about whether authenticated attributes were present. RFC 5652 sec. 9.1 pairs the two, requiring that authAttrs be present whenever digestAlgorithm is, and sec. 9.2 makes the MAC cover the DER encoding of authAttrs when they are present and the eContent OCTET STRING directly when they are not. CMSAuthenticatedDataParser has to choose between those two in its constructor, before it can reach authAttrs, which comes later in the SEQUENCE, so it chose on digestAlgorithm alone: for a message with digestAlgorithm absent but authAttrs present it verified the content MAC and then returned the attributes through getAuthAttrs() as though they had been authenticated, when the MAC had never covered them. An attacker able to modify a message in transit could insert an authenticated attribute, such as an RFC 2634 ESSSecurityLabel, into an otherwise valid message while holding neither the key-encryption key nor the content-MAC key, and an application taking an authorization, routing or labelling decision from those attributes would act on attacker-chosen values. The content itself remained MAC-bound. asn1.cms.AuthenticatedData now rejects the mismatched pairing when parsing and CMSAuthenticatedDataParser cross-checks the two fields once authAttrs is read. This is a variant of CVE-2026-59642, which bound the content to the MAC for messages that legitimately carry authAttrs, and which does not address this case. This issue also affects Bouncy Castle for Java LTS before 2.73.13, and Bouncy Castle for Java FIPS (BC-FJA) before bcpkix-fips 1.0.13 (1.0.X series), 2.0.13 (2.0.X series) and 2.1.13 (2.1.X series), and bcutil-fips 2.0.8 (2.0.X series) and 2.1.8 (2.1.X series).

Patch / fix

  • Legion of the Bouncy Castle Inc. BC-JAVA 1.86
  • Legion of the Bouncy Castle Inc. BC-LTS-JAVA 2.73.13
  • Legion of the Bouncy Castle Inc. BC-FJA 1.0.13, 2.0.8, 2.0.13, 2.1.8, 2.1.13
  • bouncycastle Debian 14 1.86-1

debian advisories DEBIAN-CVE-2026-71888

  • bouncycastle SLES for SAP applications 16.0, SLES 16.0 1.86-160000.1.1
  • bouncycastle SLES for SAP 15 SP6, SLES for SAP 15 SP5, SLES for SAP 15 SP4 +8 more 1.86-150200.3.41.1

suse advisories SUSE-SU-2026:24461-1SUSE-SU-2026:4797-1

  • bouncycastle openSUSE Leap 16.0 1.86-160000.1.1
  • bouncycastle openSUSE Tumbleweed 1.86-1.1

opensuse advisories openSUSE-SU-2026:22169-1openSUSE-SU-2026:12090-1

Vendor advisories

What the vendors themselves say about their products: affected, fixed or not affected, and what to do.

red hat product security vex CVE-2026-71888 updated cvss 7.5

bouncycastle: bouncycastle-fips: Bouncy Castle: Security bypass via unvalidated attributes in CMS AuthenticatedData parser

  • Red Hat Ansible Automation Platform 2 ansible-automation-platform-27/de-supported-rhel9 Red Hat OpenShift AI (RHOAI) rhoai/odh-modelmesh-rhel9 Red Hat OpenShift Dev Spaces devspaces/openvsx-rhel9, devspaces/jetbrains-ide-rhel9, devspaces/pluginregistry-rhel9
    affected: workaround, no fix available
  • Red Hat OpenShift Developer Tools and Services 4.12 ocp-tools-4/jenkins-rhel8 1792044326
    fixed: vendor fix RHSA-2026:88152
  • Red Hat OpenShift Developer Tools and Services 4.13 ocp-tools-4/jenkins-rhel8 1792044327
    fixed: vendor fix RHSA-2026:88149
  • Red Hat OpenShift Developer Tools and Services 4.14 ocp-tools-4/jenkins-rhel8 1792044382
    fixed: vendor fix RHSA-2026:88151
  • Red Hat OpenShift Developer Tools and Services 4.15 ocp-tools-4/jenkins-rhel8 1792044386
    fixed: vendor fix RHSA-2026:88150
  • Red Hat OpenShift Developer Tools and Services 4.16 ocp-tools-4/jenkins-rhel9 1792040287
    fixed: vendor fix RHSA-2026:88156
  • Red Hat OpenShift Developer Tools and Services 4.17 ocp-tools-4/jenkins-rhel9 1792040131
    fixed: vendor fix RHSA-2026:88159
  • Red Hat OpenShift Developer Tools and Services 4.18 ocp-tools-4/jenkins-rhel9 1792041514
    fixed: vendor fix RHSA-2026:88153
show 8 more
  • Red Hat OpenShift Developer Tools and Services 4.19 ocp-tools-4/jenkins-rhel9 1792040733
    fixed: vendor fix RHSA-2026:88158
  • Red Hat OpenShift Developer Tools and Services 4.20 ocp-tools-4/jenkins-rhel9 1792040081
    fixed: vendor fix RHSA-2026:88157
  • Red Hat OpenShift Developer Tools and Services 4.21 ocp-tools-4/jenkins-rhel9 1792040096
    fixed: vendor fix RHSA-2026:88155
  • Red Hat OpenShift Developer Tools and Services 4.22 ocp-tools-4/jenkins-rhel9 1792040428
    fixed: vendor fix RHSA-2026:88154
  • Red Hat OpenShift Developer Tools and Services jenkins, jenkins-2-plugins Red Hat OpenShift Developer Tools and Services 4.12 ocp-tools-4/jenkins-agent-base-rhel8 1792044376 Red Hat OpenShift Developer Tools and Services 4.13 ocp-tools-4/jenkins-agent-base-rhel8 1792044361 Red Hat OpenShift Developer Tools and Services 4.14 ocp-tools-4/jenkins-agent-base-rhel8 1792044402 Red Hat OpenShift Developer Tools and Services 4.15 ocp-tools-4/jenkins-agent-base-rhel8 1792044379 Red Hat OpenShift Developer Tools and Services 4.16 ocp-tools-4/jenkins-agent-base-rhel9 1792040156
    +7 more products
    Red Hat OpenShift Developer Tools and Services 4.17 ocp-tools-4/jenkins-agent-base-rhel9 1792040149 Red Hat OpenShift Developer Tools and Services 4.18 ocp-tools-4/jenkins-agent-base-rhel9 1792041201 Red Hat OpenShift Developer Tools and Services 4.19 ocp-tools-4/jenkins-agent-base-rhel9 1792040114 Red Hat OpenShift Developer Tools and Services 4.20 ocp-tools-4/jenkins-agent-base-rhel9 1792040274 Red Hat OpenShift Developer Tools and Services 4.21 ocp-tools-4/jenkins-agent-base-rhel9 1792039948 Red Hat OpenShift Developer Tools and Services 4.22 ocp-tools-4/jenkins-agent-base-rhel9 1792040297 Red Hat AMQ Broker 7 bcpkix-jdk18on, bcutil-jdk18on
    not affected: vulnerable code not present
  • Red Hat Ansible Automation Platform 2 ansible-automation-platform-27/de-minimal-rhel9
    not affected: vulnerable code not in execute path
  • Red Hat build of Apache Camel 4 for Quarkus 3 bcpkix-jdk18on, bcutil-jdk18on Red Hat build of Apache Camel for Spring Boot 4 bcpkix-jdk18on, bcutil-jdk18on Red Hat Build of Keycloak bcpkix-jdk18on, bcutil-jdk18on, rhbk/keycloak-rhel9 Red Hat build of Quarkus bcpkix-jdk18on, bcutil-jdk18on Red Hat Ceph Storage 9 liborc, liborc2, libarrow, parquet-libs Red Hat Enterprise Linux 8 resteasy, resteasy-javadoc
    +5 more products
    Red Hat Enterprise Linux 9 resteasy, pki-resteasy-core, pki-resteasy-client, pki-resteasy-jackson2-provider, pki-resteasy-servlet-initializer Red Hat Fuse 7 bcpkix-jdk15on, bcpkix-jdk18on, bcutil-jdk18on, bcpkix-jdk15to18 Red Hat JBoss Enterprise Application Platform 7 bcpkix-jdk15on, bcpkix-jdk18on, bcutil-jdk18on, jboss-eap-7/eap74-els-openjdk8-openshift-rhel8, jboss-eap-7/eap74-els-openjdk11-openshift-rhel8, jboss-eap-7/eap74-els-openjdk17-openshift-rhel8 Red Hat JBoss Enterprise Application Platform 8 bcpkix-jdk18on, bcutil-jdk18on Red Hat JBoss Enterprise Application Platform Expansion Pack bcpkix-jdk18on, bcutil-jdk18on
    not affected: vulnerable code not present
  • Red Hat Satellite 6 candlepin, candlepin-selinux
    not affected: vulnerable code not in execute path

1 more not affected in the full advisory

Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf

CISA SSVC

Exploitation
none
Automatable
yes
Technical impact
partial
Assessed
34 d ago

Exploit prediction

0.11% chance of exploitation in the next 30 days, higher than 1% of all scored CVEs (FIRST EPSS, 2026-11-08).

CVSS scores

assigned by version score vector
CNA 4.0 8.7 CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N/U:Amber
CNA 4.0 8.7 CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:Amber

Affected products

  • Legion of the Bouncy Castle Inc. BC-JAVA
  • Legion of the Bouncy Castle Inc. BC-LTS-JAVA
  • Legion of the Bouncy Castle Inc. BC-FJA

Classification

Weakness
  • CWE-354 Improper Validation of Integrity Check Value

References

Sources

Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.