{"data":{"id":"02199e3e-19a9-45b1-b222-e2b948b481ed","title":"GHSA-47pj-3jcm-6whg: LangGraph: Namespace prefix matching crosses segment boundaries in Postgres and SQLite stores","summary":"LangGraph's Postgres and SQLite stores had a bug where namespace scoping (a feature that separates data between users or tenants) didn't properly respect boundaries because it used a string-matching function called LIKE that doesn't understand the dot separator used in namespace paths. This meant a request for data from namespace \"alice\" could accidentally return data from \"alice2\" or \"alice_user\" without any special attack needed. The bug only affects applications where namespace labels could share prefixes, like \"1\" and \"12\", or contain underscore characters.","solution":"Upgrade to langgraph-checkpoint-postgres version 3.1.1 or langgraph-checkpoint-sqlite version 3.1.1. The fix changes how prefix scoping works to require the dot separator before any remainder, escapes special characters in namespace labels, and uses segment-aware matching for both prefix and suffix conditions. On SQLite specifically, the code switched from using LIKE to using GLOB for matching descendant namespaces.","labels":["security"],"sourceUrl":"https://github.com/advisories/GHSA-47pj-3jcm-6whg","publishedAt":"2026-08-06T19:03:12.000Z","cveId":"CVE-2026-71433","cweIds":null,"cvssScore":null,"cvssSeverity":"medium","severity":"medium","attackType":["data_extraction"],"issueType":"vulnerability","affectedPackages":["langgraph-checkpoint-sqlite@< 3.1.1 (fixed: 3.1.1)","langgraph-checkpoint-postgres@< 3.1.1 (fixed: 3.1.1)"],"affectedVendors":["LangChain"],"affectedVendorsRaw":["LangGraph","langgraph-checkpoint-postgres","langgraph-checkpoint-sqlite"],"classifierModel":"claude-haiku-4-5-20251001","classifierPromptVersion":"v3","cvssVector":null,"attackVector":null,"attackComplexity":null,"privilegesRequired":null,"userInteraction":null,"exploitMaturity":"unknown","epssScore":0,"patchAvailable":true,"disclosureDate":"2026-08-06T19:03:12.000Z","capecIds":null,"crossRefCount":0,"attackSophistication":"trivial","impactType":["confidentiality"],"aiComponentTargeted":"rag","llmSpecific":false,"classifierConfidence":0.95,"researchCategory":null,"atlasIds":null}}