CVE-2026-33286 in graphiti-api graphiti
Resumen
Graphiti es un framework que se asienta sobre modelos y los expone a través de una interfaz compatible con JSON:API. Las versiones anteriores a la 1.10.2 tienen una vulnerabilidad de ejecución arbitraria de métodos que afecta la funcionalidad de escritura JSONAPI de Graphiti. Un atacante puede crear una carga útil JSONAPI maliciosa con nombres de relación arbitrarios para invocar cualquier método público en la instancia del modelo subyacente, la clase o sus asociaciones. Cualquier aplicación que exponga puntos finales de escritura de Graphiti (crear/actualizar/eliminar) a usuarios no confiables se ve afectada. El método 'Graphiti::Util::ValidationResponse#all_valid?' llama recursivamente a 'model.send(name)' utilizando nombres de relación tomados directamente de las cargas útiles JSONAPI proporcionadas por el usuario, sin validarlos contra los sideloads configurados del recurso. Esto permite a un atacante ejecutar potencialmente cualquier método público en una instancia de modelo dada, en la clase de la instancia o en instancias o clases asociadas, incluyendo operaciones destructivas. Esto está parcheado en Graphiti v1.10.2. Los usuarios deben actualizar lo antes posible. Algunas soluciones alternativas están disponibles. Asegúrese de que los puntos finales de escritura de Graphiti (crear/actualizar) no sean accesibles para usuarios no confiables y/o aplique fuertes controles de autenticación y autorización antes de que se procese cualquier operación de escritura, por ejemplo, use los parámetros fuertes de Rails para asegurar que solo se procesen parámetros válidos.
Responsable
GitHub_M
Reservar
2026-03-18
Divulgación
2026-03-24
Voces
VulDB provides additional information and datapoints for this CVE:
| ID | Vulnerabilidad | CWE | Exp | Con | CVE |
|---|---|---|---|---|---|
| 352590 | graphiti-api graphiti | 913 | No está definido | Arreglo oficial | CVE-2026-33286 |