Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessRead retained CI logs or terminal recording
-
ExploitExtract exposed Docker registry push token
-
ExecutionAuthenticate to deployment image repository
-
ImpactPull deployment images or push new images
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A09:2025 - Security Logging & Alerting Failures
ASVS 5.0
V16 - Security Logging and Error Handling Log data sanitization
|
| Exploitation Conditions | Exploitation requires a very specific chain: the operator must run 'langgraph deploy --verbose' with a locally available Docker daemon (so the CLI builds the image locally and performs 'docker login --password-stdin' with a LangSmith-issued push token), AND the resulting verbose output must be retained or shared where the attacker can read it (CI logs, terminal recordings), AND the attacker must use the token before its maximum 12-hour expiration. Explicitly NOT affected: deployments run without --verbose, and deployments that build the image remotely - neither ever prints the token. Limiting factors: the token is short-lived (≤12h), scoped only to that single deployment's image repository, and a pushed image cannot be made to run unless the deployment is separately updated via a LangSmith API key with access to it. |
| Impact | This is a genuinely low-to-medium real-world risk despite being a confirmed information-disclosure flaw. The CVSS 4.0 base score is only 4.1, and the vector reinforces a narrow threat: AV:L (the secret surfaces in local CI logs/terminal output rather than a network-facing endpoint), AT:P (a specific attack requirement - the operator must have run the vulnerable mode and an attacker must act inside the token window), PR:L (some access to the deployment/logs is needed), and UI:P (an operator must have invoked the vulnerable command). Impact is limited to confidentiality (VC:H, VI:N, VA:N). No EPSS score was provided and the issue is NOT in CISA KEV, so there is no exploitation-probability or active-exploitation signal pushing this up. No public exploit code was supplied - the four references are the GHSA advisory, the fix PR, the fix commit, and the release tag, i.e. remediation artifacts, not a PoC. The vuln.today priority label is 'this_month', consistent with a patch-on-normal-cadence item rather than an emergency. The signals are mutually consistent (low score, no KEV, no EPSS, remediation-only references, non-urgent decision label); none conflict. The dominant risk reducers are that the leaked token is short-lived (max 12 hours), scoped only to that one deployment's image repository, and cannot by itself cause a pushed image to execute (that requires a separate LangSmith API key). |
| Exploit ScenarioDerived | A developer runs 'langgraph deploy --verbose' with Docker available in a CI pipeline using an affected CLI version (0.4.15-0.4.31); the temporary registry push token the CLI feeds to 'docker login --password-stdin' is printed into the verbose CI output. Anyone with read access to those retained CI logs or a terminal recording can copy the token within its 12-hour lifetime and authenticate to that deployment's image repository to pull its images or push new ones. No public exploit code was identified; exploitation is straightforward log-reading and requires no special tooling. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 23, 2026
LangGraph CLI versions 0.4.15 through 0.4.31 disclose the short-lived LangSmith registry push token in verbose output: langgraph deploy --verbose builds the image locally, then runs docker login --password-stdin with the token on stdin, and the CLI's subprocess helper echoes command input when verbose is enabled. Anyone able to read the retained output before the token's maximum 12-hour lifetime expires can pull the deployment's images or push new images into that deployment's image repository, though the token alone cannot update a deployment to run a pushed image (that requires a LangSmith API key with access to the deployment). Deployments run without --verbose and remote image builds never print the token; no public exploit code was identified at time of analysis, and exploitation requires a specific chain of local Docker use, retained verbose logs, and retrieval within the token window.
RemediationAI
Upgrade langgraph-cli to 0.4.32 or later (the fix is published in the cli==0.4.32.dev0 release tag), and preferably to 0.4.37 or later, which additionally stops --verbose from printing the input of any command the CLI runs. Tokens printed more than 12 hours ago have expired, so the residual risk from historical verbose logs ends once that window passes; for any run inside that window, treat the deployment's image repository credentials as exposed until expiry. Because tokens, not logs, are the exposed secret, the practical interim measure is to stop running langgraph deploy --verbose on affected versions in environments where output is captured (CI logs, terminal recordings) and to use deployments without --verbose or remote image builds, neither of which prints the token; note that this avoids new disclosure only and does not remediate already-retained output. Vendor references: https://github.com/langchain-ai/langgraph/security/advisories/GHSA-8prr-f582-jqq3, https://github.com/langchain-ai/langgraph/pull/8482, https://github.com/langchain-ai/langgraph/commit/1afaca35a0d4962fb0203a0e9133a07ffd6a553c.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 2 packages in pypi, euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The flaw is CWE-532 (Insertion of Sensitive Information into Log File). LangGraph CLI's subprocess helper (langgraph_cli/exec.py) printed each command's stdin whenever verbose output was enabled; because the docker login --password-stdin step inherited --verbose during local image builds, the temporary registry push token issued by LangSmith was written directly after the login command line in the deploy output. The affected package is the pip distribution langgraph-cli, matched by the broad CPE cpe:2.3:a:langchain-ai:langgraph (the CPE covers the repository rather than the individual CLI artifact). The upstream fix in PR #8482 / commit 1afaca35a0d4962fb0203a0e9133a07ffd6a553c reworks the deploy path and deployment selection logic so the login step no longer runs with verbose output in 0.4.32, and per the advisory 0.4.37 additionally stops --verbose from printing the input of any command the CLI runs. The exposure is bounded by design: the token is scoped to a single deployment's image repository and expires within at most 12 hours, and deployments reference images by digest, so a pushed image is not executed unless the deployment is separately updated using a LangSmith API key with access to it. The trigger here is well characterised in the sources: verbose output printing of stdin, not a race, memory-safety, or parsing condition.
Know when Langgraph gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:L/AC:L/AT:P/PR:L/UI:P/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N
Token appears only in local verbose logs (AV:L); requires the --verbose mode plus acting within the 12h window (AC:H); operator must run the command (UI:R); confidentiality-only (C:H, I:N, A:N).
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
1DescriptionCVE.org
The LangGraph CLI is the official command-line interface for LangGraph. From 0.4.15 until 0.4.32, langgraph deploy --verbose passes a temporary registry push token on standard input to docker login --password-stdin, but the CLI subprocess helper prints command input in verbose mode. Anyone who can read resulting CI logs or terminal recordings before the token's maximum 12-hour expiration can pull deployment images or push images to that deployment's image repository. Deployments without --verbose and remote image builds are not affected, and the token alone cannot update a deployment to execute a pushed image. This issue is fixed in version 0.4.32.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
Incorrect authorization in the LangGraph Python SDK (langgraph-sdk) versions 0.1.45 through 0.4.3 lets an authenticated
Unsafe deserialization in LangGraph SQLite Checkpoint's JsonPlusSerializer (versions 4.1.0 and prior) allows arbitrary P
LangGraph SQLite Checkpoint versions 1.0.9 and prior are vulnerable to unsafe deserialization of msgpack-encoded objects
Cross-namespace data exposure in the Postgres- and SQLite-backed LangGraph stores (langgraph-checkpoint-postgres before
Weak hashing in LangGraph's Task Result Cache exposes low-privilege authenticated users to hash collision attacks that c
Path traversal in the LangGraph Python SDK (langgraph-sdk 0.4.0 through 0.4.5, and langgraph 1.2.3 through 1.2.13 via Re
EUVD-2026-109183
GHSA-8prr-f582-jqq3
NVD
CVE.org
EPSS
Exploit-DB