Flexible GraphRAG versions 0.6.0 to before 0.8.2 contain a Cypher injection flaw in the FalkorDB adapter: a faulty escape routine lets quotes slip through into graph queries built from LLM-extracted entities. Because the malicious values originate from ingested documents, an attacker who can get a document into the pipeline can steer the extraction model into producing payloads that modify or delete graph data, and potentially disclose it if query results are shown to users or LLMs. Exposure is limited to deployments configured with GRAPH_BACKEND=langchain and GRAPH_DB=falkordb (the LlamaIndex FalkorDB store is unaffected), and there is no KEV listing, public exploit, or Nuclei template; EPSS and dependent counts are unavailable, so blast radius is unknown. Upgrade to 0.8.2 and review who can submit documents to ingestion pipelines.
What is the risk?
CVSS 7.1 (high). Network-reachable but high complexity, since exploitation depends on an attacker-controlled document being ingested and an extraction LLM reproducing the payload. Low privileges and user interaction are required. No known exploitation, public exploit, or KEV listing; EPSS is unavailable. Risk is concentrated in deployments with the specific langchain and FalkorDB configuration that ingest untrusted or semi-trusted content (shared drives, web crawls, customer uploads). Impact covers integrity of the knowledge graph and potential confidentiality loss.
How does the attack unfold?
What systems are affected?
| Package | Ecosystem | Vulnerable Range | Patched |
|---|---|---|---|
| LlamaIndex | pip | >= 0.6.0, < 0.8.2 | 0.8.2 |
Do you use LlamaIndex? You're affected.
How severe is it?
What is the attack surface?
What should I do?
1 step1) Upgrade flexible-graphrag to 0.8.2 or later. 2) If patching is delayed, switch to a non-affected graph backend or the LlamaIndex FalkorDB store, or pause ingestion of untrusted documents. 3) Restrict who and what can feed documents into ingestion pipelines and review the provenance of existing sources. 4) Run FalkorDB with least-privilege credentials, ideally with limited write and delete rights for the ingestion service. 5) Take regular graph backups so tampering can be rolled back. 6) Monitor FalkorDB query logs for unexpected clauses such as DELETE, DETACH, SET, or extra MATCH statements, and for entity values with unusual backslashes, quotes, or backticks. 7) Audit the graph for anomalous entities created since adopting 0.6.0.
How is it classified?
Which compliance frameworks are affected?
This CVE is relevant to:
Frequently Asked Questions
What is CVE-2026-114510?
Flexible GraphRAG versions 0.6.0 to before 0.8.2 contain a Cypher injection flaw in the FalkorDB adapter: a faulty escape routine lets quotes slip through into graph queries built from LLM-extracted entities. Because the malicious values originate from ingested documents, an attacker who can get a document into the pipeline can steer the extraction model into producing payloads that modify or delete graph data, and potentially disclose it if query results are shown to users or LLMs. Exposure is limited to deployments configured with GRAPH_BACKEND=langchain and GRAPH_DB=falkordb (the LlamaIndex FalkorDB store is unaffected), and there is no KEV listing, public exploit, or Nuclei template; EPSS and dependent counts are unavailable, so blast radius is unknown. Upgrade to 0.8.2 and review who can submit documents to ingestion pipelines.
Is CVE-2026-114510 actively exploited?
No confirmed active exploitation of CVE-2026-114510 has been reported, but organizations should still patch proactively.
How to fix CVE-2026-114510?
1) Upgrade flexible-graphrag to 0.8.2 or later. 2) If patching is delayed, switch to a non-affected graph backend or the LlamaIndex FalkorDB store, or pause ingestion of untrusted documents. 3) Restrict who and what can feed documents into ingestion pipelines and review the provenance of existing sources. 4) Run FalkorDB with least-privilege credentials, ideally with limited write and delete rights for the ingestion service. 5) Take regular graph backups so tampering can be rolled back. 6) Monitor FalkorDB query logs for unexpected clauses such as DELETE, DETACH, SET, or extra MATCH statements, and for entity values with unusual backslashes, quotes, or backticks. 7) Audit the graph for anomalous entities created since adopting 0.6.0.
What systems are affected by CVE-2026-114510?
This vulnerability affects the following AI/ML architecture patterns: RAG pipelines, GraphRAG, graph databases, LLM document ingestion pipelines.
What is the CVSS score for CVE-2026-114510?
CVE-2026-114510 has a CVSS v3.1 base score of 7.1 (HIGH). The EPSS exploitation probability is 0.36%.
What is the AI security impact?
Affected AI Architectures
MITRE ATLAS Techniques
AML.T0049Exploit Public-Facing ApplicationAML.T0051.001IndirectAML.T0070RAG PoisoningAML.T0085.000RAG DatabasesCompliance Controls Affected
What are the technical details?
Original Advisory
Flexible GraphRAG is a Python framework for building graph and retrieval-augmented generation applications across multiple graph, vector, and search backends. From 0.6.0 until 0.8.2, the _escape() helper in flexible-graphrag/langchain/graph/pg_store_adapters/falkordb_adapter.py escapes quotes before backslashes and then interpolates the result into Cypher assembled by FalkorDBAdapter.add_graph_documents, allowing an inserted escape to be doubled and a quote to terminate the string early. When GRAPH_BACKEND=langchain and GRAPH_DB=falkordb are configured, attacker-influenced ingested document content can cause the extraction model to produce malicious entity or relationship values that reach these queries, allowing injected Cypher clauses to modify or delete graph data and, when the calling code surfaces query results to the user or LLM, disclose graph data. Dynamic node and relationship type identifiers are also inserted into backtick-quoted query positions without safe parameterization. The LlamaIndex FalkorDB store is not affected. This issue is fixed in version 0.8.2.
Exploitation Scenario
An attacker plants a document containing crafted text in a source the organization ingests, such as a shared wiki, uploaded PDF, or crawled webpage. The extraction LLM turns the text into entity or relationship values containing a backslash-and-quote sequence that the flawed escape routine doubles, terminating the Cypher string early. The remainder of the value runs as Cypher, for example deleting nodes or rewriting relationships to poison retrieval results. If the application surfaces query results, the attacker can also craft clauses that return other graph data in answers.
Weaknesses (CWE)
CWE-116Improper Encoding or Escaping of OutputPrimaryCWE-116Improper Encoding or Escaping of OutputPrimaryCWE-943Improper Neutralization of Special Elements in Data Query LogicPrimaryCWE-943Improper Neutralization of Special Elements in Data Query LogicPrimaryCWE-116Improper Encoding or Escaping of OutputCWE-943Improper Neutralization of Special Elements in Data Query LogicCWE-116 — Improper Encoding or Escaping of Output: The product prepares a structured message for communication with another component, but encoding or escaping of the data is either missing or done incorrectly. As a result, the intended structure of the message is not preserved.
- [Architecture and Design] Use a vetted library or framework that does not allow this weakness to occur or provides constructs that make this weakness easier to avoid. For example, consider using the ESAPI Encoding control [REF-45] or a similar tool, library, or framework. These will help the programmer encode outputs in a manner less prone to error. Alternately, use built-in functions, but consider using wrappers in case those functions are discovered to have a vulnerability.
- [Architecture and Design] If available, use structured mechanisms that automatically enforce the separation between data and code. These mechanisms may be able to provide the relevant quoting, encoding, and validation automatically, instead of relying on the developer to provide this capability at every point where output is generated. For example, stored procedures can enforce database query structure and reduce the likelihood of SQL injection.
Source: MITRE CWE corpus.
CVSS Vector
CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:U/C:H/I:H/A:HReferences
- github.com/advisories/GHSA-vqrg-773h-4wxc
- nvd.nist.gov/vuln/detail/CVE-2026-114510
- github.com/stevereiner/flexible-graphrag/commit/9ace8d47e198ce3f15dbf22853e396ab4e9884fa
- github.com/stevereiner/flexible-graphrag/releases/tag/v0.8.2
- github.com/stevereiner/flexible-graphrag/security/advisories/GHSA-vqrg-773h-4wxc
Timeline
Related Vulnerabilities
CVE-2024-237519.8LlamaIndex: SQL injection in Text-to-SQL feature
Same package: llamaindexCVE-2026-714289.3unstructured: SSRF via url= param exposes internal APIs
Same package: llamaindexCVE-2024-140217.8llamaindex: Deserialization enables RCE
Same package: llamaindexCVE-2024-583397.5llamaindex: Resource Exhaustion enables DoS
Same package: llamaindexCVE-2024-127047.5llama-index: DoS via infinite loop in LangChain LLM
Same package: llamaindex