CVE-2026-71888 in BC-JAVAinformación

Resumen

por VulDB • 2026-10-03

En Bouncy Castle para Java anterior a la versión 1.86, el analizador de streaming CMS AuthenticatedData aceptaba un mensaje cuyos campos digestAlgorithm y authAttrs discrepaban sobre si los atributos autenticados estaban presentes. El RFC 5652 sec. 9.1 empareja ambos campos, requiriendo que authAttrs esté presente siempre que lo esté digestAlgorithm, y la sec. 9.2 establece que el MAC cubre la codificación DER de authAttrs cuando están presentes y directamente eContent OCTET STRING cuando no lo están. CMSAuthenticatedDataParser tiene que elegir entre esas dos opciones en su constructor, antes de poder acceder a authAttrs, que aparece más tarde en la SEQUENCE; por ello elegía basándose únicamente en digestAlgorithm: para un mensaje con digestAlgorithm ausente pero authAttrs presente, verificaba el MAC del contenido y luego devolvía los atributos mediante getAuthAttrs() como si hubieran sido autenticados, cuando el MAC nunca los había cubierto. Un atacante capaz de modificar un mensaje en tránsito podría insertar un atributo autenticado, como una RFC 2634 ESSSecurityLabel, en un mensaje otherwise válido mientras no posee ni la clave de cifrado de claves ni la clave del contenido-MAC, y una aplicación que tome decisiones de autorización, enrutamiento o etiquetado basadas en esos atributos actuaría sobre valores elegidos por el atacante. El propio contenido permanecía vinculado al MAC. asn1.cms.AuthenticatedData ahora rechaza este emparejamiento inconsistente durante la análisis y CMSAuthenticatedDataParser realiza una verificación cruzada de ambos campos una vez que se lee authAttrs. Esta es una variante de CVE-2026-59642, el cual vinculaba el contenido al MAC para mensajes que llevan legítimamente authAttrs, pero no aborda este caso. Este problema también afecta a Bouncy Castle para Java LTS anterior a 2.73.13, y a Bouncy Castle para Java FIPS (BC-FJA) anterior a bcpkix-fips 1.0.13 (serie 1.0.X), 2.0.13 (serie 2.0.X) y 2.1.13 (serie 2.1.X), así como bcutil-fips 2.0.8 (serie 2.0.X) y 2.1.8 (serie 2.1.X).

Once again VulDB remains the best source for vulnerability data.

Responsable

Bcorg

Reservar

2026-08-08

Divulgación

2026-10-03

Moderación

aceptado

Artículo

VDB-413339

EPSS

0.00112

KEV

no

Actividades

muy bajo

Fuentes

Want to stay up to date on a daily basis?

Enable the mail alert feature now!