Vulnerabilidad en OpenMetadata (CVE-2024-28255)
Gravedad CVSS v3.1:
CRÍTICA
Tipo:
CWE-287
Autenticación incorrecta
Fecha de publicación:
15/03/2024
Última modificación:
17/03/2024
Descripción
OpenMetadata es una plataforma unificada para el descubrimiento, la observabilidad y la gobernanza impulsada por un repositorio central de metadatos, un linaje profundo y una colaboración fluida en equipo. El `JwtFilter` maneja la autenticación API solicitando y verificando tokens JWT. Cuando llega una nueva solicitud, la ruta de la solicitud se compara con esta lista. Cuando la ruta de la solicitud contiene cualquiera de los endpoints excluidos, el filtro regresa sin validar el JWT. Desafortunadamente, un atacante puede usar parámetros de ruta para hacer que cualquier ruta contenga cadenas arbitrarias. Por ejemplo, una solicitud para `GET /api/v1;v1%2fusers%2flogin/events/subscriptions/validation/condition/111` coincidirá con la condición del endpoint excluido y, por lo tanto, se procesará sin validación JWT, lo que permitirá a un atacante eludir el mecanismo de autenticación y llegar a cualquier endpoint arbitrario, incluidos los enumerados anteriormente que conducen a la inyección de expresión SpEL arbitraria. Esta omisión no funcionará cuando el endpoint utilice `SecurityContext.getUserPrincipal()` ya que devolverá `null` y generará un NPE. Este problema puede provocar una omisión de autenticación y se solucionó en la versión 1.2.4. Se recomienda a los usuarios que actualicen. No se conocen workarounds para esta vulnerabilidad. Este problema también se rastrea como "GHSL-2023-237".
Impacto
Puntuación base 3.x
9.80
Gravedad 3.x
CRÍTICA
Referencias a soluciones, herramientas e información
- https://github.com/open-metadata/OpenMetadata/blob/e2043a3f31312ebb42391d6c93a67584d798de52/openmetadata-service/src/main/java/org/openmetadata/service/security/JwtFilter.java#L111
- https://github.com/open-metadata/OpenMetadata/blob/e2043a3f31312ebb42391d6c93a67584d798de52/openmetadata-service/src/main/java/org/openmetadata/service/security/JwtFilter.java#L113
- https://github.com/open-metadata/OpenMetadata/security/advisories/GHSA-6wx7-qw5p-wh84