{"resultsPerPage":1,"startIndex":0,"totalResults":1,"format":"NVD_CVE","version":"2.0","timestamp":"2026-05-09T01:53:54.946","vulnerabilities":[{"cve":{"id":"CVE-2026-27794","sourceIdentifier":"security-advisories@github.com","published":"2026-02-25T18:23:40.980","lastModified":"2026-04-15T00:35:42.020","vulnStatus":"Deferred","cveTags":[],"descriptions":[{"lang":"en","value":"LangGraph Checkpoint defines the base interface for LangGraph checkpointers. Prior to version 4.0.0, a Remote Code Execution vulnerability exists in LangGraph's caching layer when applications enable cache backends that inherit from `BaseCache` and opt nodes into caching via `CachePolicy`. Prior to `langgraph-checkpoint` 4.0.0, `BaseCache` defaults to `JsonPlusSerializer(pickle_fallback=True)`. When msgpack serialization fails, cached values can be deserialized via `pickle.loads(...)`. Caching is not enabled by default. Applications are affected only when the application explicitly enables a cache backend (for example by passing `cache=...` to `StateGraph.compile(...)` or otherwise configuring a `BaseCache` implementation), one or more nodes opt into caching via `CachePolicy`, and the attacker can write to the cache backend (for example a network-accessible Redis instance with weak/no auth, shared cache infrastructure reachable by other tenants/services, or a writable SQLite cache file). An attacker must be able to write attacker-controlled bytes into the cache backend such that the LangGraph process later reads and deserializes them. This typically requires write access to a networked cache (for example a network-accessible Redis instance with weak/no auth or shared cache infrastructure reachable by other tenants/services) or write access to local cache storage (for example a writable SQLite cache file via permissive file permissions or a shared writable volume). Because exploitation requires write access to the cache storage layer, this is a post-compromise / post-access escalation vector. LangGraph Checkpoint 4.0.0 patches the issue."},{"lang":"es","value":"LangGraph Checkpoint define la interfaz base para los gestores de puntos de control de LangGraph. Antes de la versión 4.0.0, existe una vulnerabilidad de ejecución remota de código en la capa de caché de LangGraph cuando las aplicaciones habilitan *backends* de caché que heredan de `BaseCache` y habilitan nodos para el almacenamiento en caché a través de `CachePolicy`. Antes de `langgraph-checkpoint` 4.0.0, `BaseCache` por defecto utiliza `JsonPlusSerializer(pickle_fallback=True)`. Cuando la serialización de msgpack falla, los valores almacenados en caché pueden ser deserializados a través de `pickle.loads(...)`. El almacenamiento en caché no está habilitado por defecto. Las aplicaciones se ven afectadas solo cuando la aplicación habilita explícitamente un *backend* de caché (por ejemplo, pasando `cache=...` a `StateGraph.compile(...)` o configurando de otra manera una implementación de `BaseCache`), uno o más nodos habilitan el almacenamiento en caché a través de `CachePolicy`, y el atacante puede escribir en el *backend* de caché (por ejemplo, una instancia de Redis accesible por red con autenticación débil/nula, infraestructura de caché compartida accesible por otros inquilinos/servicios, o un archivo de caché SQLite escribible). Un atacante debe poder escribir bytes controlados por el atacante en el *backend* de caché de modo que el proceso de LangGraph los lea y deserialice posteriormente. Esto normalmente requiere acceso de escritura a una caché en red (por ejemplo, una instancia de Redis accesible por red con autenticación débil/nula o infraestructura de caché compartida accesible por otros inquilinos/servicios) o acceso de escritura al almacenamiento de caché local (por ejemplo, un archivo de caché SQLite escribible a través de permisos de archivo permisivos o un volumen compartido escribible). Debido a que la explotación requiere acceso de escritura a la capa de almacenamiento de caché, este es un vector de escalada post-compromiso / post-acceso. LangGraph Checkpoint 4.0.0 corrige el problema."}],"metrics":{"cvssMetricV31":[{"source":"security-advisories@github.com","type":"Secondary","cvssData":{"version":"3.1","vectorString":"CVSS:3.1/AV:N/AC:H/PR:H/UI:N/S:U/C:H/I:H/A:H","baseScore":6.6,"baseSeverity":"MEDIUM","attackVector":"NETWORK","attackComplexity":"HIGH","privilegesRequired":"HIGH","userInteraction":"NONE","scope":"UNCHANGED","confidentialityImpact":"HIGH","integrityImpact":"HIGH","availabilityImpact":"HIGH"},"exploitabilityScore":0.7,"impactScore":5.9}]},"weaknesses":[{"source":"security-advisories@github.com","type":"Primary","description":[{"lang":"en","value":"CWE-502"}]}],"references":[{"url":"https://github.com/langchain-ai/langgraph/commit/f91d79d0c86932ded6e3b9f195d5a0bbd5aef99c","source":"security-advisories@github.com"},{"url":"https://github.com/langchain-ai/langgraph/pull/6677","source":"security-advisories@github.com"},{"url":"https://github.com/langchain-ai/langgraph/releases/tag/checkpoint%3D%3D4.0.0","source":"security-advisories@github.com"},{"url":"https://github.com/langchain-ai/langgraph/security/advisories/GHSA-mhr3-j7m5-c7c9","source":"security-advisories@github.com"}]}}]}