Vulnerabilidad en Apollo Router (CVE-2023-41317)
Gravedad CVSS v3.1:
MEDIA
Tipo:
No Disponible / Otro tipo
Fecha de publicación:
05/09/2023
Última modificación:
08/09/2023
Descripción
El Apollo Router es un router gráfico configurable y de alto rendimiento escrito en Rust para ejecutar un supergrafo federado que utiliza Apollo Federation 2. Las versiones afectadas están sujetas a una vulnerabilidad de tipo Denegación de Servicio (DoS) que hace que el Router entre en pánico y termine cuando GraphQL Subscriptions está habilitado. Puede activarse cuando **se cumplen todas las condiciones siguientes**: 1. Se ejecuta Apollo Router v1.28.0, v1.28.1 o v1.29.0 (versiones impactadas); **y** 2. El esquema Supergraph proporcionado al router (ya sea a través de Apollo Uplink o explícitamente a través de otra configuración) **tiene un tipo "subscription"** con campos raíz definidos; **y** 3. La configuración YAML proporcionado al router **tiene las suscripciones habilitadas** (están _disabled_ por defecto), ya sea estableciendo "enabled: true" o estableciendo un "mode" válido dentro del objeto "subscriptions" (como se ve en [subscriptions' documentation](https://www. apollographql.com/docs/router/executing-operations/subscription-support/#router-setup)); **y** 4. Una operación de "suscripción" [anónima] (https://spec.graphql.org/draft/#sec-Anonymous-Operation-Definitions) (es decir, (es decir, sin nombre)(por ejemplo, `subscription { ... }`) es recibido por el Router. Si se cumplen **los cuatro** de estos criterios, las versiones afectadas entrarán en pánico y terminarán. Esta vulnerabilidad no supone ningún riesgo para la privacidad de los datos o la exposición de información sensible. Esto se ha solucionado en Apollo Router v1.29.1. Se recomienda a los usuarios que actualicen. La actualización a la v1.29.1 debería ser una ruta de actualización clara y sencilla para aquellos que utilicen las versiones afectadas. Sin embargo, si las Suscripciones **no** son necesarias para su Gráfico - pero están habilitadas a través de la configuración - entonces deshabilitar las suscripciones es otra opción para mitigar el riesgo.
Impacto
Puntuación base 3.x
5.90
Gravedad 3.x
MEDIA
Productos y versiones vulnerables
| CPE | Desde | Hasta |
|---|---|---|
| cpe:2.3:a:apollographql:apollo_router:*:*:*:*:*:*:*:* | 1.28.0 (incluyendo) | 1.29.1 (excluyendo) |
Para consultar la lista completa de nombres de CPE con productos y versiones, ver esta página



