Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessDiscover network-reachable graphiti server port
-
DeliverySend unauthenticated HTTP GET to /episodes/<group_id>
-
ExploitExfiltrate stored knowledge-graph memory
-
ExecutionOptionally POST crafted episodes to ingest router
-
ImpactPoison LLM application memory
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A07:2025 - Authentication Failures
ASVS 5.0
V6 - Authentication Authentication mechanism validation
MITRE ATT&CK
2 techniques across 2 tactics: Defense Evasion, Initial Access The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | The graphiti server component ( |
| Impact | The CVSS 4.0 score of 6.9 (AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:L/VA:L) accurately reflects the technical reality: network-reachable with no prerequisites, but limited to the service's data plane - graph episode reads and writes - with no code execution or OS-level access. The no-authentication condition is unconditional in affected versions, not gated on a misconfiguration. Real-world risk is heavily deployment-topology dependent: graphiti is typically an internal backend component, so network segmentation may naturally restrict exposure. However, instances deployed with internet-facing ports or inside flat cloud VPCs are fully exposed. No KEV listing and no known POC exist, keeping automated mass exploitation unlikely. The patch (PR #1739) was pending merge at time of disclosure, so all deployed instances of ≤ 0.30.2 without manual patching remain vulnerable. EPSS data was not provided; given the niche deployment footprint, broad scanning-based exploitation is considered low probability. |
| Exploit ScenarioDerived | An attacker who can reach the graphiti server on its listening port sends a plain HTTP GET to |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Sep 13, 2026
The graphiti FastAPI-based graph memory REST API (getzep/graphiti ≤ 0.30.2) shipped its ingest and retrieve routers with zero authentication - no API key, no token, no session check of any kind. Any unauthenticated remote caller with network access to the service can read stored knowledge-graph episodes or inject and overwrite graph data by sending ordinary HTTP requests. No public exploit code has been identified, but the barrier to exploitation is effectively zero: the attack requires only HTTP client access and knowledge of endpoint paths. No KEV listing at time of analysis.
RemediationAI
Apply the fix from GitHub PR #1739 (https://github.com/getzep/graphiti/pull/1739) once merged and a patched release is published - no confirmed patched release version was available at time of filing. Operators who cannot wait for a release should cherry-pick the PR diff manually: add server/graph_service/auth.py, update Settings to include api_key, and apply dependencies=[Depends(require_api_key)] to both ingest.router and retrieve.router. Set a strong random value for the api_key environment variable. As an immediate compensating control, restrict TCP access to the graphiti server port to trusted source IPs using host firewall rules or security groups - this eliminates network exposure without requiring code changes. Deploying a reverse proxy (e.g., nginx) that enforces its own Bearer token check is an alternative workaround. Note that after patching, if api_key is left unconfigured (None), the service fails closed and rejects all requests - operators must explicitly configure the key.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
graphiti is a Python FastAPI service (cpe:2.3:a:getzep:graphiti:*:*:*:*:*:*:*:*) that exposes a REST API for storing and querying temporal knowledge graphs used as memory in LLM applications. The vulnerability (CWE-287, Improper Authentication) stems from both application routers - server/graph_service/routers/ingest.py and server/graph_service/routers/retrieve.py - being instantiated as bare APIRouter() objects with no FastAPI dependency injection for authentication. The PR diff confirms no auth.py module existed prior to the fix; the service had no concept of caller identity. The remediation introduces a fail-closed require_api_key dependency using secrets.compare_digest for timing-safe Bearer token validation, applied to both routers via dependencies=[Depends(require_api_key)].
Know when Graphiti 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:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:L/VA:L/SC:N/SI:N/SA:N
No authentication on a network API means AV:N/PR:N/AC:L; impact limited to service data plane with no scope change, so S:U and C/I/A all Low.
Primary rating from Vendor (VulDB).
CVSS VectorVendor: VulDB
DescriptionCVE.org
A vulnerability was found in getzep graphiti up to 0.30.2. Affected is an unknown function of the file server/graph_service/main.py of the component REST API. The manipulation results in improper authentication. The attack can be launched remotely. The pull request to fix this issue awaits acceptance.
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
Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.
EUVD-2026-77130
GHSA-rw8x-xfx6-c82h
NVD
CVE.org
EPSS
VulDB
Exploit-DB