XML external entity injection in neo4j apoc
Key facts
- Attack vector
- Network
- Privileges required
- Low
- User interaction
- None
- Attack complexity
- Low
- Impact type
- —
- Confidentiality · integrity · availability
- High · None · High
- Fix status
- Fixed
Attack profile from CVSS 3.1 · NVD. Fix status from CNA and GitHub.
Summary
APOC (Awesome Procedures on Cypher) is an add-on library for Neo4j. An XML External Entity (XXE) vulnerability found in the apoc.import.graphml procedure of APOC core plugin prior to version 5.5.0 and 4.4.0.14 (4.4 branch) in Neo4j graph database. XML External Entity (XXE) injection occurs when the XML parser allows external entities to be resolved. The XML parser used by the apoc.import.graphml procedure was not configured in a secure way and therefore allowed this. External entities can be used to read local files, send HTTP requests, and perform denial-of-service attacks on the application. Abusing the XXE vulnerability enabled assessors to read local files remotely. Although with the level of privileges assessors had this was limited to one-line files. With the ability to write to the database, any file could have been read. Additionally, assessors noted, with local testing, the server could be crashed by passing in improperly formatted XML. The minimum version containing a patch for this vulnerability is 5.5.0. Those who cannot upgrade the library can control the allowlist of the procedures that can be used in your system.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- No
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| neo4j | apoc | before 4.4.0.14 | 4.4.0.14 | Patch available | CNA |
| — | org.neo4j.procedure:apoc-core (Maven) | 5.0.0 to before 5.5.0 | 5.5.0 | Patch available | GHSA-6wxg-wh7f-rqpr |
| — | org.neo4j.procedure:apoc-core (Maven) | before 4.4.0.14 | 4.4.0.14 | Patch available | GHSA-6wxg-wh7f-rqpr |
- apoc Vendorneo4j Affected before 4.4.0.14 Fixed in 4.4.0.14 Patch available CNA
- org.neo4j.procedure:apoc-core (Maven) Vendor— Affected 5.0.0 to before 5.5.0 Fixed in 5.5.0 Patch available GHSA-6wxg-wh7f-rqpr
- org.neo4j.procedure:apoc-core (Maven) Vendor— Affected before 4.4.0.14 Fixed in 4.4.0.14 Patch available GHSA-6wxg-wh7f-rqpr
Remediation
- Fix · CNA apoc (neo4j) Fixed in 4.4.0.14
- Fix · GHSA-6wxg-wh7f-rqpr org.neo4j.procedure:apoc-core (Maven) Fixed in 5.5.0 Advisory →
- Fix · GHSA-6wxg-wh7f-rqpr org.neo4j.procedure:apoc-core (Maven) Fixed in 4.4.0.14 Advisory →
Timeline
- 2026-10-02 Threatist record created from CVE-2023-23926
- 2026-10-03 Alias added: GHSA-6wxg-wh7f-rqpr
References
Advisory 2
More neo4j Awesome Procedures On Cyper vulnerabilities
- TI-2018-16042 neo4j-contrib neo4j-apoc-procedures version before commit 45bc09c contains a XML External… CVSS 3.0CRITICAL 10.0
- TI-2022-07589 neo4j-apoc-procedures is vulnerable to path traversal CVSS 3.1HIGH 7.1
Sources
- CVE-2023-23926 · CVE Program
- CVE-2023-23926 · NVD
- FIRST EPSS
- GHSA-6wxg-wh7f-rqpr · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences