CVE-2026-41081
Full vulnerability record from the local CVENow database.
Description
Improper Handling of TLS Client Authentication Failure Leading to Anonymous Principal Assignment in Apache Storm Versions Affected: up to 2.8.7 Description: When TLS transport is enabled in Apache Storm without requiring client certificate authentication (the default configuration), the TlsTransportPlugin assigns a fallback principal (CN=ANONYMOUS) if no client certificate is presented or if certificate verification fails. The underlying SSLPeerUnverifiedException is caught and suppressed rather than rejecting the connection. This fail-open behavior means an unauthenticated client can establish a TLS connection and receive a valid principal identity. If the configured authorizer (e.g., SimpleACLAuthorizer) does not explicitly deny access to CN=ANONYMOUS, this may result in unauthorized access to Storm services. The condition is logged at debug level only, reducing visibility in production. Impact: Unauthenticated clients may be assigned a principal identity, potentially bypassing authorization in permissive or misconfigured environments. Mitigation: Users should upgrade to 2.8.7 in which TLS authentication failures are handled in a fail-closed manner. Users who cannot upgrade immediately should: - Enable mandatory client certificate authentication (nimbus.thrift.tls.client.auth.required: true) - Ensure authorization rules explicitly deny access to CN=ANONYMOUS - Review all ACL configurations for implicit default-allow behavior
View original CVE JSON
{
"id": "CVE-2026-41081",
"sourceIdentifier": "[email protected]",
"published": "2026-04-27T14:16:48.167",
"lastModified": "2026-10-26T22:10:00.163",
"vulnStatus": "Analyzed",
"cveTags": [],
"descriptions": [
{
"lang": "en",
"value": "Improper Handling of TLS Client Authentication Failure Leading to Anonymous Principal Assignment in Apache Storm\n\nVersions Affected: up to 2.8.7\n\nDescription: When TLS transport is enabled in Apache Storm without requiring client certificate authentication (the default configuration), the TlsTransportPlugin assigns a fallback principal (CN=ANONYMOUS) if no client certificate is presented or if certificate verification fails. The underlying SSLPeerUnverifiedException is caught and suppressed rather than rejecting the connection.\n\nThis fail-open behavior means an unauthenticated client can establish a TLS connection and receive a valid principal identity. If the configured authorizer (e.g., SimpleACLAuthorizer) does not explicitly deny access to CN=ANONYMOUS, this may result in unauthorized access to Storm services. The condition is logged at debug level only, reducing visibility in production.\n\nImpact: Unauthenticated clients may be assigned a principal identity, potentially bypassing authorization in permissive or misconfigured environments.\n\nMitigation: Users should upgrade to 2.8.7 in which TLS authentication failures are handled in a fail-closed manner.\n\nUsers who cannot upgrade immediately should:\n- Enable mandatory client certificate authentication (nimbus.thrift.tls.client.auth.required: true)\n- Ensure authorization rules explicitly deny access to CN=ANONYMOUS\n- Review all ACL configurations for implicit default-allow behavior"
},
{
"lang": "es",
"value": "Manejo Inadecuado de Fallas en la Autenticación de Cliente TLS que Conduce a la Asignación de un Principal Anónimo en Apache Storm\n\nVersiones Afectadas: hasta la 2.8.7\n\nDescripción: Cuando el transporte TLS está habilitado en Apache Storm sin requerir autenticación de certificado de cliente (la configuración predeterminada), el TlsTransportPlugin asigna un principal de respaldo (CN=ANONYMOUS) si no se presenta ningún certificado de cliente o si la verificación del certificado falla. La SSLPeerUnverifiedException subyacente es capturada y suprimida en lugar de rechazar la conexión.\n\nEste comportamiento de ’fail-open’ significa que un cliente no autenticado puede establecer una conexión TLS y recibir una identidad principal válida. Si el autorizador configurado (por ejemplo, SimpleACLAuthorizer) no deniega explícitamente el acceso a CN=ANONYMOUS, esto puede resultar en acceso no autorizado a los servicios de Storm. La condición se registra solo a nivel de depuración, reduciendo la visibilidad en producción.\n\nImpacto: A los clientes no autenticados se les puede asignar una identidad principal, eludiendo potencialmente la autorización en entornos permisivos o mal configurados.\n\nMitigación: Los usuarios deben actualizar a la versión 2.8.7 en la que las fallas de autenticación TLS se manejan de manera ’fail-closed’.\n\nLos usuarios que no puedan actualizar inmediatamente deben:\n- Habilitar la autenticación obligatoria de certificado de cliente (nimbus.thrift.tls.client.auth.required: true)\n- Asegurar que las reglas de autorización denieguen explícitamente el acceso a CN=ANONYMOUS\n- Revisar todas las configuraciones de ACL para detectar comportamientos implícitos de ’permitir por defecto’"
}
],
"affected": [
{
"source": "[email protected]",
"affectedData": [
{
"vendor": "Apache Software Foundation",
"product": "Apache Storm Client",
"defaultStatus": "unaffected",
"collectionURL": "https://repo.maven.apache.org/maven2/",
"packageName": "org.apache.storm:storm-client",
"versions": [
{
"version": "0",
"lessThan": "2.8.7",
"versionType": "semver",
"status": "affected"
}
]
}
]
}
],
"metrics": {
"cvssMetricV31": [
{
"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"type": "Secondary",
"cvssData": {
"version": "3.1",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N",
"baseScore": 6.5,
"baseSeverity": "MEDIUM",
"attackVector": "NETWORK",
"attackComplexity": "LOW",
"privilegesRequired": "NONE",
"userInteraction": "NONE",
"scope": "UNCHANGED",
"confidentialityImpact": "LOW",
"integrityImpact": "LOW",
"availabilityImpact": "NONE"
},
"exploitabilityScore": 3.9,
"impactScore": 2.5
}
],
"ssvcV203": [
{
"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"ssvcData": {
"timestamp": "2026-04-27T14:42:46.312578Z",
"id": "CVE-2026-41081",
"options": [
{
"exploitation": "none"
},
{
"automatable": "yes"
},
{
"technicalImpact": "partial"
}
],
"role": "CISA Coordinator",
"version": "2.0.3"
}
}
]
},
"weaknesses": [
{
"source": "[email protected]",
"type": "Secondary",
"description": [
{
"lang": "en",
"value": "CWE-287"
}
]
}
],
"configurations": [
{
"nodes": [
{
"operator": "OR",
"negate": false,
"cpeMatch": [
{
"vulnerable": true,
"criteria": "cpe:2.3:a:apache:storm:*:*:*:*:*:*:*:*",
"versionEndExcluding": "2.8.7",
"matchCriteriaId": "9286B022-3864-4ED1-B740-F1BD9B79820F"
}
]
}
]
}
],
"references": [
{
"url": "https://lists.apache.org/thread/plxx5l29dvplk5rwzdcq53rdfl6v4gs8",
"source": "[email protected]",
"tags": [
"Mailing List",
"Vendor Advisory"
]
},
{
"url": "http://www.openwall.com/lists/oss-security/2026/04/25/3",
"source": "af854a3a-2127-422b-91ae-364da2661108",
"tags": [
"Mailing List",
"Third Party Advisory"
]
}
]
}