Description
LangGraph checkpoint savers provide Postgres- and SQLite-backed state persistence for LangGraph workflows and agents. Prior to langgraph-checkpoint-postgres 3.1.3 and langgraph-checkpoint-sqlite 3.1.2, PostgresStore, AsyncPostgresStore, SqliteStore, and AsyncSqliteStore flatten namespace labels with ".".join(namespace), while BaseStore validates labels only for put and aput. Unvalidated dotted labels passed through get, search, delete, list_namespaces, their asynchronous equivalents, or direct batch and abatch operations can resolve to another tenant's stored namespace, allowing cross-namespace reads, overwrites, or deletion. InMemoryStore is not affected because it compares namespace tuples. This issue is fixed in langgraph-checkpoint-postgres 3.1.3 and langgraph-checkpoint-sqlite 3.1.2.
Published: 2026-10-23
Score: 6 Medium
EPSS: n/a
KEV: No
Impact: Cross‑namespace data exposure in LangGraph checkpoint stores
Action: Apply Patch
AI Analysis

Impact

LangGraph checkpoint savers for Postgres and SQLite flatten namespace labels by joining tuple elements with a period and validate labels only for put operations. Unvalidated dotted labels supplied to get, search, delete, list_namespaces or batch operations can resolve to another tenant’s stored namespace, letting an attacker read, overwrite or delete data belonging to other namespaces, thereby compromising confidentiality and integrity. The in‑memory store is unaffected because it compares tuples directly.

Affected Systems

The vulnerability affects langchain‑ai LangGraph and its checkpoint stores for Postgres prior to 3.1.3 and for SQLite prior to 3.1.2. Any deployment of LangGraph using these libraries without the specified minimum versions is considered impacted.

Risk and Exploitability

The CVSS score of 6 indicates moderate severity, and the EPSS score is not available, suggesting no current exploitation data. The vulnerability is not listed in the CISA KEV catalog. Exploitation requires the ability to supply an arbitrary namespace string to the store operations, which is typically possible through the public API of LangGraph or any application that allows dynamic namespace configuration. The attack could be performed locally within the same process or remotely if the application exposes the vulnerable API to untrusted clients, resulting in cross‑namespace data compromise.

Generated by OpenCVE AI on October 23, 2026 at 22:24 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade to langgraph-checkpoint-postgres 3.1.3 or newer.
  • Upgrade to langgraph-checkpoint-sqlite 3.1.2 or newer.
  • Validate or sanitize all namespace labels in application code to reject dotted patterns unless explicitly intended.

Generated by OpenCVE AI on October 23, 2026 at 22:24 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Github GHSA Github GHSA GHSA-6hmw-9432-67qq LangGraph: Namespace labels containing `.` reach other namespaces in Postgres and SQLite stores
History

Fri, 23 Oct 2026 21:30:00 +0000

Type Values Removed Values Added
Description LangGraph checkpoint savers provide Postgres- and SQLite-backed state persistence for LangGraph workflows and agents. Prior to langgraph-checkpoint-postgres 3.1.3 and langgraph-checkpoint-sqlite 3.1.2, PostgresStore, AsyncPostgresStore, SqliteStore, and AsyncSqliteStore flatten namespace labels with ".".join(namespace), while BaseStore validates labels only for put and aput. Unvalidated dotted labels passed through get, search, delete, list_namespaces, their asynchronous equivalents, or direct batch and abatch operations can resolve to another tenant's stored namespace, allowing cross-namespace reads, overwrites, or deletion. InMemoryStore is not affected because it compares namespace tuples. This issue is fixed in langgraph-checkpoint-postgres 3.1.3 and langgraph-checkpoint-sqlite 3.1.2.
Title LangGraph: Namespace labels containing `.` reach other namespaces in Postgres and SQLite stores
Weaknesses CWE-20
CWE-863
References
Metrics cvssV4_0

{'score': 6, 'vector': 'CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:H/VI:L/VA:N/SC:N/SI:N/SA:N'}


Subscriptions

No data.

cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-10-23T21:12:34.523Z

Reserved: 2026-10-23T19:37:27.176Z

Link: CVE-2026-115883

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-10-23T22:16:57.820

Modified: 2026-10-23T22:16:57.820

Link: CVE-2026-115883

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-10-23T22:30:14Z

Weaknesses
  • CWE-20

    Improper Input Validation

  • CWE-863

    Incorrect Authorization