Skip to main content

Neo4j CVE-2026-14587

| EUVDEUVD-2026-53446 MEDIUM
Improper Handling of Length Parameter Inconsistency (CWE-130)
2026-08-05 Neo4j GHSA-cwvv-9488-x4h5
5.5
CVSS 4.0 · Vendor: Neo4j
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Reach Neo4j Bolt port (TCP 7687)
  2. Delivery
    Send crafted modern handshake with 32-byte overlong capability mask
  3. Exploit
    Decoder resets reader index, channel stalls open
  4. Execution
    Repeat across many connections
  5. Persist
    Exhaust server connection/file-descriptor pool
  6. Impact
    Availability degradation (DoS)

Vulnerability Assessment

Weakness
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Length parameter validation
Exploitation Conditions

The Bolt connector must be network-reachable; the flaw triggers at the handshake layer before any authentication, so no credentials are required. The specific condition is use of the Neo4j Bolt 'modern handshake' path, which is the default for current driver versions negotiating with affected Neo4j 5.x and 2025.x/2026.x servers. Exploitation is limited by: (1) the low-to-moderate availability impact - channels stall but the server process does not crash outright, requiring sustained flooding for measurable service degradation; (2) TCP connectivity to port 7687, which is non-routable by default in most cloud and on-premises firewall configurations; (3) no confidentiality or integrity impact, so the vulnerability cannot be leveraged for data access or modification. Environments where Bolt is intentionally internet-exposed or accessible from untrusted network segments carry the highest realistic risk.

Impact

The CVSS 4.0 score is 5.5 (Medium) with vector AV:N/AC:L/AT:N/PR:N/UI:N and a low availability impact (VA:L) confined to the vulnerable system; confidentiality and integrity are unaffected. The pre-authentication, zero-complexity network trigger (PR:N, AC:L) means any host with TCP access to port 7687 can exploit this without credentials, lowering the practical bar considerably. The E:P supplemental metric confirms a proof-of-concept exists, elevating urgency relative to unproven medium-severity findings. However, the availability impact is limited to channel exhaustion rather than crash or data loss - a sustained flood of malformed handshakes would be required to meaningfully degrade service. The vulnerability is not listed in CISA KEV, and no EPSS data was supplied; exploitation is therefore not confirmed as widespread or targeted. The primary real-world risk is a DoS scenario against Neo4j instances with Bolt exposed to untrusted networks (e.g., internet-facing or multi-tenant environments), which is a non-default but not uncommon deployment pattern.

Exploit ScenarioDerived

An attacker with network access to a Neo4j Bolt port (TCP 7687) - for example, a compromised internal host or an internet-exposed Neo4j instance - sends a series of crafted Bolt modern-handshake messages each containing 32 continuation bytes in the capability mask. Each such connection stalls the server-side channel in a permanent wait state without consuming the malformed bytes, leaving open file descriptors on the server. A proof of concept exists (E:P), so scripted tooling to automate this at scale is likely straightforward, making a connection-exhaustion DoS achievable with moderate effort.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.4% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Aug 05, 2026

Bolt protocol handshake decoder in Neo4j Enterprise and Community Editions fails to distinguish overlong capability masks from truncated ones, leaving server-side channels permanently open without producing a finalization message. Any unauthenticated client reaching the Bolt connector (default TCP 7687) can trigger this pre-authentication stall by sending 32 continuation bytes in the capability mask, causing the decoder to loop on the same unread bytes. The CVSS 4.0 vector carries E:P (proof of concept exists) with a low availability impact; no active exploitation has been confirmed via CISA KEV, but the trivial pre-auth trigger and POC availability increase realistic risk to exposed Bolt endpoints.

RemediationAI

Upgrade to Neo4j Enterprise Edition 2026.07 or later, or to Neo4j Enterprise/Community Edition 5.26.29 or later, per the vendor advisory at https://neo4j.com/security/CVE-2026-14587. Patch is confirmed available from Neo4j. If immediate patching is not feasible, restrict network access to the Bolt connector (TCP 7687) using firewall rules or network ACLs to trusted clients and application-layer hosts only - this directly limits the attack surface since the flaw requires reaching the Bolt endpoint. Disabling the Bolt connector entirely is a more aggressive mitigation if only the HTTP/HTTPS API is required, but note that all official Neo4j drivers depend on Bolt, so this trade-off will break driver-based application connectivity. Rate-limiting inbound Bolt connections at the network edge can reduce the availability impact of a sustained malformed-handshake flood while patching is scheduled.

Affected VersionsENISA

Enterprise Edition 2025.01 <2026.07
Community Edition 2025.01 <2026.07
Enterprise Edition 5.0 <5.26.29
Community Edition 5.0 <5.26.29

Affected Packages

euvd community_edition fix: 5.26.29, 2026.07
euvd enterprise_edition fix: 5.26.29, 2026.07

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 2 packages in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

The Bolt protocol is Neo4j's binary client-server wire protocol, used by all official drivers and tools. The 'modern handshake' variant introduces a capability bit mask exchanged during the initial negotiation phase before any authentication occurs. CWE-130 (Improper Handling of Length Parameter Inconsistency) is the root cause: the decoder applies the same code path to a mask that is overlong as it does to one that is truncated, resetting the Netty reader index and returning in a 'wait for more data' state rather than rejecting the malformed message. Because the unread continuation bytes remain at the front of the decoder buffer, any subsequent write to the channel causes re-reading of the same 32-byte sequence, permanently stalling the handshake state machine and leaving the TCP channel open. Affected CPEs are cpe:2.3:a:neo4j:enterprise_edition and cpe:2.3:a:neo4j:community_edition across the 5.x and 2025.x/2026.x release trains.

Know when Neo4j 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

Vendor (Neo4j) PRIMARY 5.5 MEDIUM
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N/E:P
vuln.today AI 5.3 MEDIUM

Network-reachable pre-auth trigger with no complexity requirements; only low availability impact (channel stall, not crash) and no confidentiality or integrity effect.

3.1 AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
4.0 AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N

Primary rating from Vendor (Neo4j).

CVSS VectorVendor: Neo4j

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
None
User Interaction
None
Vulnerable system: Confidentiality
None
Vulnerable system: Integrity
None
Vulnerable system: Availability
Low
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

Lifecycle Timeline

1
Patch available
Aug 05, 2026 - 17:02 EUVD

DescriptionCVE.org

Neo4j's Bolt modern handshake decoder treats an overlong capability bit mask the same way it treats a truncated bit mask. When an unauthenticated client sends a selected protocol version followed by 32 continuation bytes in the capability mask, the decoder resets the reader index and waits for more bytes instead of rejecting the protocol message and closing the channel.

Because the same unread bytes remain at the front of the decoder buffer, appending a terminating byte later does not recover the connection. The decoder re-reads the same first 32 continuation bytes, returns without producing a handshake-finalization message, and leaves the channel open.

This can be triggered before authentication by any client that can reach the Bolt connector.

Threat Intelligence Overview

EPSS Score
0.4%
Top 69% exploitable
Prevalence
Medium
popular enterprise graph database, not universally deployed
Data Quality
6 sources
Confidence: High

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.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS 0.4%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
Yes
Human Impact· derived
Medium
Technical Impact
Partial

Priority Score

28
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +28
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

More in Neo4j

View all
CVE-2018-1000820 CRITICAL POC
10.0 Dec 20

neo4j-contrib neo4j-apoc-procedures version before commit 45bc09c contains a XML External Entity (XXE) vulnerability in

CVE-2021-34371 CRITICAL POC
9.8 Aug 05

Neo4j through 3.4.18 (with the shell server enabled) exposes an RMI service that arbitrarily deserializes Java objects,

CVE-2018-18389 CRITICAL POC
9.8 Oct 16

Due to incorrect access control in Neo4j Enterprise Database Server 3.4.x before 3.4.9, the setting of LDAP for authenti

CVE-2023-23926 HIGH POC
8.1 Feb 16

APOC (Awesome Procedures on Cypher) is an add-on library for Neo4j. Rated high severity (CVSS 8.1), this vulnerability i

CVE-2022-37423 HIGH POC
7.5 Aug 12

Neo4j APOC (Awesome Procedures on Cypher) before 4.3.0.7 and 4.x before 4.4.0.8 allows Directory Traversal to sibling di

CVE-2026-92681 CRITICAL
9.3 Oct 12

Schema-level and Query/Mutation type-level @authentication directives are silently ignored for top-level @cypher fields

CVE-2021-34802 HIGH
8.8 Jul 30

A failure in resetting the security context in some transaction actions in Neo4j Graph Database 4.2 and 4.3 could allow

CVE-2026-92682 HIGH
8.6 Oct 12

Authorization bypass in @neo4j/graphql 7.0.0 through 7.6.3 lets an authenticated user read, create, and delete records t

CVE-2026-5423 HIGH
8.2 Aug 06

JWT authentication bypass in @neo4j/graphql allows unauthenticated remote clients to forge arbitrary JWT claims over Gra

CVE-2026-19869 HIGH
7.6 Aug 18

Authentication bypass in @neo4j/graphql exposes admin-restricted custom-resolver fields to any authenticated user holdin

CVE-2013-7259 MEDIUM
6.8 Apr 29

Multiple cross-site request forgery (CSRF) vulnerabilities in Neo4J 1.9.2 allow remote attackers to hijack the authentic

CVE-2024-34517 MEDIUM
6.5 May 07

The Cypher component in Neo4j 5.0.0 through 5.18 mishandles IMMUTABLE privileges in some situations where an attacker al

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy