← All advisories
CVE-2026-118668highBroken access control2026-10-28

CVE-2026-118668: LangGraph servers with JavaScript custom auth can let one user read and overwrite another user's Store data, plus SDK path and CLI token fixes

LangChain published three LangGraph advisories on 28 October 2026. The worst affects langgraph-api servers that use JavaScript or TypeScript custom authentication: Store authorization changes returned by the handler were not applied, so an ordinary logged-in user could read, overwrite, search or delete other users' Store data. Fixed in langgraph-api 0.15.0. The other two fix unencoded identifiers in the Python SDK's v3 streaming client (langgraph-sdk 0.4.6, langgraph 1.2.14) and a registry push token printed by langgraph deploy --verbose (langgraph-cli 0.4.32).

01.

What it is

CVE-2026-118668 (GHSA-4hm6-w6qq-w73v, high, langgraph-api 0.1.2 to before 0.15.0): when a JavaScript or TypeScript Store authorization handler restricts users by rewriting the requested namespace, the rewrite was not carried across the runtime boundary, so the original namespace was used. Python handlers, and JS/TS handlers that reject unauthorized namespaces instead of rewriting them, are not affected.

CVE-2026-118667 (GHSA-3fx2-cqw9-xr3c, moderate, langgraph-sdk 0.4.0 to 0.4.5, and langgraph 1.2.3 to before 1.2.14 for RemoteGraph): the v3 streaming client put thread_id and assistant_id into request paths without encoding them, so attacker-controlled IDs with relative segments could redirect an authenticated GET to another path on the same server, such as a Store item. It only matters if your app passes untrusted text as those IDs; LangGraph Platform itself is not exposed.

CVE-2026-115885 (GHSA-8prr-f582-jqq3, moderate, langgraph-cli 0.4.15 to 0.4.31): langgraph deploy --verbose printed the temporary registry push token used for docker login. Anyone who could read that output, for example in CI logs, could pull and push images for that deployment's repository for up to 12 hours.

02.

How to check

  1. Affected: langgraph-api before 0.15.0 with JS/TS custom auth that rewrites Store namespaces; langgraph-sdk 0.4.0 to 0.4.5; langgraph 1.2.3 to 1.2.13 (RemoteGraph v3 streaming); langgraph-cli 0.4.15 to 0.4.31.
  2. Look through CI logs for langgraph deploy --verbose runs with an affected CLI; those tokens have expired after 12 hours but the logs may still be shared.
03.

How to fix

  1. Upgrade langgraph-api to 0.15.0 or later. If you can't yet, change every JS/TS Store authorization handler to reject unauthorized namespaces instead of rewriting them.
  2. Upgrade langgraph-sdk to 0.4.6 or later, and langgraph to 1.2.14 or later if you use RemoteGraph.
  3. Upgrade langgraph-cli to 0.4.32 or later (0.4.37 also stops --verbose from printing any command input).
pip show langgraph-api langgraph-sdk langgraph langgraph-cli | grep -E 'Name|Version'
pip install -U 'langgraph-api>=0.15.0' 'langgraph-sdk>=0.4.6' 'langgraph>=1.2.14' 'langgraph-cli>=0.4.32'
04.

Sources

More advisories for this tool
The weekly email

One email a week. Only what changed.

Every new security hole in AI coding tools, MCP servers, app builders and the stacks they generate (Next.js, Supabase, Node, PHP), each with how to check your app and the fix. No roundups of things you already read.

Free, one email a week. Read the latest issue first if you like. One-click unsubscribe in every email. We never sell or share addresses.