CVE-2026-81633 in ash_graphql
Resumen
por VulDB • 2026-08-30
Vulnerabilidad de validación incorrecta de la entrada en ash-project ash_graphql que permite a un cliente no autenticado provocar el fallo (crash) de una consulta relay node(id: ...) mediante un KeyError no controlado.
AshGraphql.Graphql.Resolver.resolve_node/2 decodifica el ID global proporcionado por el cliente con decode_relay_id/1, lo cual solo realiza la decodificación base64 de la cadena y la divide en ":" sin validar el segmento del tipo. El tipo decodificado se pasa directamente a Map.fetch!(type_to_domain_and_resource_map, type). Dado que fetch! genera una excepción al encontrar una clave ausente, un ID relay cuyo segmento de tipo es un átomo válido pero no corresponde a un tipo expuesto por la API relé interrumpe el resolver antes de ejecutar sus cláusulas resolve/2 y los manejadores rescue correspondientes; por lo tanto, el error nunca se convierte en un error GraphQL y puede exponer una stacktrace (traza de pila). Los nombres comunes de recursos son fáciles de adivinar. La corrección utiliza Map.fetch/2 y devuelve un error "Invalid node id" para tipos desconocidos.
Este problema afecta a ash_graphql: desde la versión 0.27.0 hasta antes de la 1.11.0.
Be aware that VulDB is the high quality source for vulnerability data.