CVE-2026-115885: LangGraph CLI: deploy --verbose leaks registry token in logs
GHSA-8prr-f582-jqq3MEDIUMThe LangGraph CLI (versions 0.4.15 through 0.4.31) prints the temporary registry push token to output when `langgraph deploy --verbose` runs, because the subprocess helper echoes the stdin passed to `docker login --password-stdin`. Anyone who can read the resulting CI logs or terminal recordings within the token's 12-hour lifetime can pull deployment images or push images to that deployment's image repository. This is a low-to-moderate, conditional exposure: there is no CVSS score, no EPSS data, no KEV listing, no public exploit and no Nuclei template, and the token alone cannot make a deployment run a pushed image, which limits the blast radius. The main risks are image content disclosure (embedded code, config or baked-in secrets) and image tampering that could matter if another path later promotes the pushed image. Upgrade the CLI to 0.4.32 or later, stop using --verbose in CI, and review who can access past CI logs and recordings from verbose deploys.
What is the risk?
Overall risk is LOW to MEDIUM and conditional. Exploitation requires access to logs or recordings that contain the token (CI log readers, shared terminal sessions, screen recordings, log aggregators) and use within the 12-hour expiry. Only deployments run with --verbose are affected. Remote image builds are not affected. The token does not allow updating a deployment to run a pushed image, which limits direct code execution. No CVSS, EPSS, KEV or public exploit data is available, so the severity is assessed qualitatively from the advisory text. Confidence: HIGH on the technical description (vendor advisory and fix commit), LOW on exploitation likelihood.
How does the attack unfold?
What systems are affected?
How severe is it?
What is the attack surface?
What should I do?
1 step1) Upgrade the LangGraph CLI (langgraph-cli) to 0.4.32 or later. 2) Remove --verbose from langgraph deploy in CI/CD pipelines until upgraded. 3) Identify CI runs and terminal recordings from verbose deploys on 0.4.15-0.4.31 and restrict or purge those logs; tokens expire within 12 hours, so only recent logs pose live risk. 4) Where a log was exposed within the last 12 hours, revoke or rotate the registry credentials if possible and audit the image repository for unexpected pushes, tags or digest changes. 5) Enable CI log masking for registry tokens and limit log read access. 6) Detection: search logs for docker login invocations with token material, and monitor registry audit logs for pulls or pushes from unfamiliar IPs or identities. 7) Verify image digests/signatures before promoting images.
How is it classified?
Which compliance frameworks are affected?
This CVE is relevant to:
Frequently Asked Questions
What is CVE-2026-115885?
The LangGraph CLI (versions 0.4.15 through 0.4.31) prints the temporary registry push token to output when `langgraph deploy --verbose` runs, because the subprocess helper echoes the stdin passed to `docker login --password-stdin`. Anyone who can read the resulting CI logs or terminal recordings within the token's 12-hour lifetime can pull deployment images or push images to that deployment's image repository. This is a low-to-moderate, conditional exposure: there is no CVSS score, no EPSS data, no KEV listing, no public exploit and no Nuclei template, and the token alone cannot make a deployment run a pushed image, which limits the blast radius. The main risks are image content disclosure (embedded code, config or baked-in secrets) and image tampering that could matter if another path later promotes the pushed image. Upgrade the CLI to 0.4.32 or later, stop using --verbose in CI, and review who can access past CI logs and recordings from verbose deploys.
Is CVE-2026-115885 actively exploited?
No confirmed active exploitation of CVE-2026-115885 has been reported, but organizations should still patch proactively.
How to fix CVE-2026-115885?
1) Upgrade the LangGraph CLI (langgraph-cli) to 0.4.32 or later. 2) Remove --verbose from langgraph deploy in CI/CD pipelines until upgraded. 3) Identify CI runs and terminal recordings from verbose deploys on 0.4.15-0.4.31 and restrict or purge those logs; tokens expire within 12 hours, so only recent logs pose live risk. 4) Where a log was exposed within the last 12 hours, revoke or rotate the registry credentials if possible and audit the image repository for unexpected pushes, tags or digest changes. 5) Enable CI log masking for registry tokens and limit log read access. 6) Detection: search logs for docker login invocations with token material, and monitor registry audit logs for pulls or pushes from unfamiliar IPs or identities. 7) Verify image digests/signatures before promoting images.
What systems are affected by CVE-2026-115885?
This vulnerability affects the following AI/ML architecture patterns: Agent frameworks, LLM application deployment pipelines, CI/CD for AI agents, Container registries for AI deployments.
What is the CVSS score for CVE-2026-115885?
CVE-2026-115885 has a CVSS v3.1 base score of 5.4 (MEDIUM). The EPSS exploitation probability is 0.11%.
What is the AI security impact?
Affected AI Architectures
MITRE ATLAS Techniques
AML.T0010.004Container RegistryAML.T0055Unsecured CredentialsAML.T0091.000Application Access TokenCompliance Controls Affected
What are the technical details?
Original Advisory
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.
Exploitation Scenario
A contractor or compromised account has read access to a CI system where a team runs `langgraph deploy --verbose` for its production agent. The attacker opens the build log, copies the temporary registry push token printed by the CLI, and within 12 hours authenticates to the container registry. They pull the deployment image to extract proprietary agent code, prompts and any embedded credentials, and may push a tampered image to the deployment's repository to set up a later supply chain compromise if the image gets promoted by another process.
Weaknesses (CWE)
CWE-532Insertion of Sensitive Information into Log FilePrimaryCWE-532Insertion of Sensitive Information into Log FilePrimaryCWE-532Insertion of Sensitive Information into Log FileCWE-532 — Insertion of Sensitive Information into Log File: The product writes sensitive information to a log file.
- [Architecture and Design, Implementation] Consider seriously the sensitivity of the information written into log files. Do not write secrets into the log files.
- [Distribution] Remove debug log files before deploying the application into production.
Source: MITRE CWE corpus.
CVSS Vector
CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:U/C:H/I:L/A:NReferences
- github.com/advisories/GHSA-8prr-f582-jqq3
- nvd.nist.gov/vuln/detail/CVE-2026-115885
- github.com/langchain-ai/langgraph/commit/1afaca35a0d4962fb0203a0e9133a07ffd6a553c
- github.com/langchain-ai/langgraph/pull/8482
- github.com/langchain-ai/langgraph/releases/tag/cli%3D%3D0.4.32.dev0
- github.com/langchain-ai/langgraph/security/advisories/GHSA-8prr-f582-jqq3
Timeline
Related Vulnerabilities
CVE-2026-552537.7LangGraph Mongo: NoSQL injection exposes tenant data
Same package: langgraphCVE-2025-676447.3langgraph-checkpoint-sqlite: SQL Injection exposes database
Same package: langgraphCVE-2025-87097.3langgraph-checkpoint-sqlite: SQL Injection exposes database
Same package: langgraphCVE-2025-641047.3langgraph-checkpoint-sqlite: SQL Injection exposes database
Same package: langgraphCVE-2026-282776.8langgraph: Deserialization enables RCE
Same package: langgraph