Issue summary: A type confusion vulnerability exists in the TimeStamp Response verification code where an ASN1_TYPE union member is accessed without first validating the type, causing an invalid or NULL pointer dereference when processing a malformed TimeStamp Response file. Impact summary: An application calling TS_RESP_verify_response() with a malformed TimeStamp Response can be caused to dereference an invalid or NULL pointer when reading, resulting in a Denial of Service. The functions ossl_ess_get_signing_cert() and ossl_ess_get_signing_cert_v2() access the signing cert attribute value without validating its type. When the type is not V_ASN1_SEQUENCE, this results in accessing invalid memory through the ASN1_TYPE union, causing a crash. Exploiting this vulnerability requires an attacker to provide a malformed TimeStamp Response to an application that verifies timestamp responses. The TimeStamp protocol (RFC 3161) is not widely used and the impact of the exploit is just a Denial of Service. For these reasons the issue was assessed as Low severity. The FIPS modules in 3.5, 3.4, 3.3 and 3.0 are not affected by this issue, as the TimeStamp Response implementation is outside the OpenSSL FIPS module boundary. OpenSSL 3.6, 3.5, 3.4, 3.3, 3.0 and 1.1.1 are vulnerable to this issue. OpenSSL 1.0.2 is not affected by this issue.
Resumen del problema: Existe una vulnerabilidad de confusión de tipos en el código de verificación de la Respuesta de Marca de Tiempo donde se accede a un miembro de unión ASN1_TYPE sin validar primero el tipo, causando una desreferencia de puntero inválido o NULL al procesar un archivo de Respuesta de Marca de Tiempo malformado. Resumen del impacto: Una aplicación que llama a TS_RESP_verify_response() con una Respuesta de Marca de Tiempo malformada puede ser inducida a desreferenciar un puntero inválido o NULL al leer, resultando en una denegación de servicio. Las funciones ossl_ess_get_signing_cert() y ossl_ess_get_signing_cert_v2() acceden al valor del atributo del certificado de firma sin validar su tipo. Cuando el tipo no es V_ASN1_SEQUENCE, esto resulta en el acceso a memoria inválida a través de la unión ASN1_TYPE, causando un fallo. Explotar esta vulnerabilidad requiere que un atacante proporcione una Respuesta de Marca de Tiempo malformada a una aplicación que verifica las respuestas de marca de tiempo. El protocolo de Marca de Tiempo (RFC 3161) no es ampliamente utilizado y el impacto del exploit es solo una denegación de servicio. Por estas razones, el problema fue evaluado como de baja severidad. Los módulos FIPS en 3.5, 3.4, 3.3 y 3.0 no se ven afectados por este problema, ya que la implementación de la Respuesta de Marca de Tiempo está fuera del límite del módulo FIPS de OpenSSL. OpenSSL 3.6, 3.5, 3.4, 3.3, 3.0 y 1.1.1 son vulnerables a este problema. OpenSSL 1.0.2 no se ve afectado por este problema.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
| Attack Vector | NETWORK |
|---|---|
| Attack Complexity | LOW |
| Privileges Required | NONE |
| User Interaction | NONE |
| Scope | UNCHANGED |
| Confidentiality Impact | NONE |
| Integrity Impact | NONE |
| Availability Impact | HIGH |
Source: 134c704f-9b21-4f2e-91b3-4a467353bcc0
Type: Secondary
Exploitability Score: 3.9
Impact Score: 3.6
| Source | Type | Description |
|---|---|---|
| [email protected] | Secondary |
en
CWE-754
|
| Vendor | Product | Version | Update | Type |
|---|---|---|---|---|
| openssl | openssl | * | <built-in method update of dict object at 0x7fd342601580> | Application |
| openssl | openssl | * | <built-in method update of dict object at 0x7fd3606e2a40> | Application |
| openssl | openssl | * | <built-in method update of dict object at 0x7fd384140480> | Application |
| openssl | openssl | * | <built-in method update of dict object at 0x7fd36adbc380> | Application |
| openssl | openssl | * | <built-in method update of dict object at 0x7fd3606e3f80> | Application |
| openssl | openssl | * | <built-in method update of dict object at 0x7fd3606e2140> | Application |
| Vulnerable | CPE |
|---|---|
| Yes | cpe:2.3:a:openssl:openssl:*:*:*:*:*:*:*:* |
| Yes | cpe:2.3:a:openssl:openssl:*:*:*:*:*:*:*:* |
| Yes | cpe:2.3:a:openssl:openssl:*:*:*:*:*:*:*:* |
| Yes | cpe:2.3:a:openssl:openssl:*:*:*:*:*:*:*:* |
| Yes | cpe:2.3:a:openssl:openssl:*:*:*:*:*:*:*:* |
| Yes | cpe:2.3:a:openssl:openssl:*:*:*:*:*:*:*:* |