- Top reward
- $1,500
- Top severity paid
- Critical
- Assets in scope
- 13
- Public CVEs
- 15
- Last change
- No changes yet
At a glance
What to know before you start testing.
- Pays from $1,500
- for critical bugs.
- Report on Sorona
- Submit through the program page.
- Partial safe harbor
- Some legal protection; read the terms.
- Publish after a fix
- Coordinate the timing with the company.
Rewards
What Sorona lists as the payout for each severity.
| Severity | Relative size | Reward |
|---|---|---|
| Critical | $1,500+ | |
| High | $700+ | |
| Medium | $300+ | |
| Low |
|
$100 $100 / 1 month Claude Max |
- Safe harbor
-
Partial
Sorona will not pursue legal action against you for good-faith research submitted to us in line with this policy. We cannot speak for the upstream project, its vendor, or any third party, and we do not grant authorization on their behalf.
- Hall of fame
-
Yes
Reporters are credited on a public acknowledgments list.
Summarised with AI from the program policy on Sorona, read 12 Nov 2026, and checked word for word against it. Read the original
Scope
13 assets you may test, 6 excluded.
Web 1
- https://neo4j.com
Products and areas 12
- Authentication and authorization: native auth, password storage and reset, session and token handling, and the role and privilege checks behind every operation
- Configuration parsing and the defaults a server runs with when an operator changes nothing
- Cypher parsing and execution in full, covering parameters, procedure and function invocation, subqueries and dynamic query construction
- Import and export handling: LOAD CSV, the configured import directory and the setting meant to confine reads to it, plus any path that fetches a URL a caller supplied
- Logging and the query log, including what a credential or a parameter value looks like once it has been written down
- The administration tooling that ships with the distribution, covering neo4j-admin, dump and load, backup and restore, and the files they read
- The Bolt protocol server: the handshake, the authentication exchange, message framing and everything a client can send before it is authenticated
- The embedded library use, where Neo4j runs inside another JVM application rather than as a server
- The HTTP API and the bundled Neo4j Browser, including the endpoints the browser calls on an operator's behalf
- The procedure sandbox and any path from a callable procedure to the JVM, the filesystem or an outbound network request
- The trust-centre policy takes vulnerability reports on Neo4j products through its responsible-disclosure process and offers acknowledgement in place of money. It publishes no narrow asset list for the database itself, so the Community Edition tree is the target and nothing inside it is carved out
- User-defined procedures and functions, the plugin loading path, and the settings that decide which procedures an unprivileged user may call
Out of scope (6)
- An instance deliberately started with authentication disabled or with an administrative account handed out, which is a configuration decision
- Enterprise Edition features, which are commercial rather than part of the open-source target here, even though the vendor's own process accepts reports on them
- Findings against a version line the vendor no longer supports
- Language drivers maintained in their own repositories, where the defect is in the driver rather than the server
- Resource exhaustion from an expensive Cypher query, which is a capacity question rather than a defect
- Third-party procedure libraries and plugins that do not ship with the distribution
Rules
What the policy asks of you, and the bug types it won't reward, quoted from Sorona's policy. "We" in these lines means Sorona, not this site.
While testing
-
Submit through sorona.xyz. This project runs no bounty of its own; we validate, coordinate disclosure with the maintainers, and pay you directly.
-
Encrypt with the published PGP key where the finding warrants it. The key is advertised in the security.txt alongside the policy
-
Say which edition you tested. Community Edition is the open-source build and the target here, and several authorization features exist only in the commercial edition
-
Include the Cypher that reproduces it, the procedure allow-list and sandbox settings in force, and any plugin that was loaded, since most of this surface depends on server configuration
-
You are responsible for understanding and following the laws that apply to you, wherever you are, and for staying within any scope the project has defined.
Not accepted
-
Resource exhaustion from an expensive Cypher query, which is a capacity question rather than a defect
-
An instance deliberately started with authentication disabled or with an administrative account handed out, which is a configuration decision
-
Findings against a version line the vendor no longer supports
Summarised with AI from the program policy on Sorona, read 12 Nov 2026, and checked word for word against it. Read the original
Changes
Tracked since 11 Nov 2026. Last checked 1 hour ago.
No changes yet. When the rewards or scope move, you will see it here and in the RSS feed.
Public CVEs
Published vulnerabilities in this vendor's products, from the NVD.
| CVE | Summary | Severity | Published |
|---|---|---|---|
| CVE-2026-14587 | 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 byt | Medium 5.5 | 5 Aug 2026 |
| CVE-2026-1471 | Excessive caching of authentication context in Neo4j Enterprise edition versions prior to 2026.01.4 leads to authenticated users inheriting the context of the first user who authenticated after restart. The issue is limited to certain non-default configurations of SSO (UserInfo endpoint). We recommend upgrading to versions 2026.01.4 (or 5.26.22) where the issue is fixed. | Low 2.1 | 11 Mar 2026 |
| CVE-2026-1524 | An edgecase in SSO implementation in Neo4j Enterprise edition versions prior to version 2026.02 can lead to unauthorised access under the following conditions: If a neo4j admin configures two or more OIDC providers AND configures one or more of them to be an authorization provider AND configures one or more of them to be authentication-only, then those that are authentication-only will also provid | Low 2.1 | 11 Mar 2026 |
| CVE-2026-1497 | Incorrect resolving of namespaces in composite databases in Neo4j Enterprise edition prior to versions 2026.02 and 5.26.22 can lead to the following scenario: an admin that intends to give a user an access to a remote database constituent "namespace.name" will inadvertently grant access to any local database or remote alias called "name". If such database or alias doesn't exist when the command is | Low 2.0 | 11 Mar 2026 |
| CVE-2026-1337 | Insufficient escaping of unicode characters in query log in Neo4j Enterprise and Community editions prior to 2026.01 can lead to XSS if the user opens the logs in a tool that treats them as HTML. There is no security impact on Neo4j products, but this advisory is released as a precaution to treat the logs as plain text if using versions prior to 2026.01. Proof of concept exploit: https://github.co | Low 1.1 | 6 Feb 2026 |
| CVE-2024-34517 | The Cypher component in Neo4j 5.0.0 through 5.18 mishandles IMMUTABLE privileges in some situations where an attacker already has admin access. | Medium 6.5 | 7 May 2024 |
| CVE-2023-23926 | 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 p | Medium 5.9 | 16 Feb 2023 |
| CVE-2022-23532 | APOC (Awesome Procedures on Cypher) is an add-on library for Neo4j that provides hundreds of procedures and functions. A path traversal vulnerability found in the apoc.export.* procedures of apoc plugins in Neo4j Graph database. The issue allows a malicious actor to potentially break out of the expected directory. The vulnerability is such that files could only be created but not overwritten. For | High 7.1 | 14 Jan 2023 |
| CVE-2022-37423 | Neo4j APOC (Awesome Procedures on Cypher) before 4.3.0.7 and 4.x before 4.4.0.8 allows Directory Traversal to sibling directories via apoc.log.stream. | High 7.5 | 12 Aug 2022 |
| CVE-2021-42767 | A directory traversal vulnerability in the apoc plugins in Neo4J Graph database before 4.4.0.1 allows attackers to read local files, and sometimes create local files. This is fixed in 3.5.17, 4.2.10, 4.3.0.4, and 4.4.0.1. | Critical 9.1 | 1 Mar 2022 |
| CVE-2021-34371 | Neo4j through 3.4.18 (with the shell server enabled) exposes an RMI service that arbitrarily deserializes Java objects, e.g., through setSessionVariable. An attacker can abuse this for remote code execution because there are dependencies with exploitable gadget chains. | Critical 9.8 | 5 Aug 2021 |
| CVE-2021-34802 | A failure in resetting the security context in some transaction actions in Neo4j Graph Database 4.2 and 4.3 could allow authenticated users to execute commands with elevated privileges. | High 8.8 | 30 Jul 2021 |
| CVE-2018-1000820 | neo4j-contrib neo4j-apoc-procedures version before commit 45bc09c contains a XML External Entity (XXE) vulnerability in XML Parser that can result in Disclosure of confidential data, denial of service, SSRF, port scanning. This vulnerability appears to have been fixed in after commit 45bc09c. | Critical 10.0 | 20 Dec 2018 |
| CVE-2018-18389 | Due to incorrect access control in Neo4j Enterprise Database Server 3.4.x before 3.4.9, the setting of LDAP for authentication with STARTTLS, and System Account for authorization, allows an attacker to log into the server by sending any valid username with an arbitrary password. | Critical 9.8 | 16 Oct 2018 |
| CVE-2013-7259 | Multiple cross-site request forgery (CSRF) vulnerabilities in Neo4J 1.9.2 allow remote attackers to hijack the authentication of administrators for requests that execute arbitrary code, as demonstrated by a request to (1) db/data/ext/GremlinPlugin/graphdb/execute_script or (2) db/manage/server/console/. | Medium 6.8 | 29 Apr 2014 |
Original policy
Copied from sorona.xyz on 12 Nov 2026. The summaries on this page are made from it; the live page may have changed since.
Skip to content What this pays This project runs no bounty of its own. sorona.xyz pays you directly on qualified, reproduced findings. Severity │ sorona.xyz pays Critical │ $1,500+ High │ $700+ Medium │ $300+ Low │ $100 / 1 month Claude Max Submit a vulnerability CVE history 7 Last 12 months 12 Lifetime Access control and privilege escalation 35 % Injection and procedure execution 30 % Path and import handling 20 % Info disclosure 15 % Latest advisories Loading the feed Overview Neo4j is the dominant property-graph database, and Community Edition is the build that ships in the Docker image, the Debian and RPM packages and a long tail of appliance images under enterprise knowledge graphs, fraud detection and a fast-growing amount of GraphRAG. A graph database concentrates the relationships that every other system keeps scattered, so a read past the authorization boundary hands over the map rather than a row. The vendor runs a mature process and curates its own CVE records as a CNA. It also states on its trust centre that there is no bug bounty and that compensation claims will be refused, so sorona.xyz pays you directly on qualified, reproduced findings. In scope The trust-centre policy takes vulnerability reports on Neo4j products through its responsible-disclosure process and offers acknowledgement in place of money. It publishes no narrow asset list for the database itself, so the Community Edition tree is the target and nothing inside it is carved out The Bolt protocol server: the handshake, the authentication exchange, message framing and everything a client can send before it is authenticated The HTTP API and the bundled Neo4j Browser, including the endpoints the browser calls on an operator's behalf Cypher parsing and execution in full, covering parameters, procedure and function invocation, subqueries and dynamic query construction Authentication and authorization: native auth, password storage and reset, session and token handling, and the role and privilege checks behind every operation User-defined procedures and functions, the plugin loading path, and the settings that decide which procedures an unprivileged user may call The procedure sandbox and any path from a callable procedure to the JVM, the filesystem or an outbound network request Import and export handling: LOAD CSV , the configured import directory and the setting meant to confine reads to it, plus any path that fetches a URL a caller supplied The administration tooling that ships with the distribution, covering neo4j-admin , dump and load, backup and restore, and the files they read Configuration parsing and the defaults a server runs with when an operator changes nothing Logging and the query log, including what a credential or a parameter value looks like once it has been written down The embedded library use, where Neo4j runs inside another JVM application rather than as a server Out of scope Enterprise Edition features, which are commercial rather than part of the open-source target here, even though the vendor's own process accepts reports on them Language drivers maintained in their own repositories, where the defect is in the driver rather than the server Third-party procedure libraries and plugins that do not ship with the distribution An instance deliberately started with authentication disabled or with an administrative account handed out, which is a configuration decision Resource exhaustion from an expensive Cypher query, which is a capacity question rather than a defect Findings against a version line the vendor no longer supports Most-valued findings Anything that escapes the procedure sandbox into arbitrary JVM code, filesystem access or an outbound request. This is the highest-value class on any graph database that lets stored procedures run Privilege escalation from an ordinary user to an administrative one, or any authorization check that a Cypher query can route around by reaching data through a relationship rather than a direct match Cypher injection where a parameter, a label or a property name becomes syntax, particularly inside a procedure that builds a query string from its arguments Authentication bypass on Bolt or HTTP, including anything acted on before the credential is verified and anything that survives a password change or a role revocation Import and export paths escaping the configured import directory, and server-side request forgery where the database fetches a URL a caller controls Deserialization anywhere on a protocol path, since Bolt and the HTTP endpoints both decode structured input from callers Information disclosure through the browser endpoint, the management surface or the logs, where credentials or another tenant's query text becomes readable Program rules Submit through sorona.xyz. This project runs no bounty of its own; we validate, coordinate disclosure with the maintainers, and pay you directly. Report through the responsible-disclosure process on the Neo4j trust centre. The organisation SECURITY.md routes there, and the live security.txt carries the policy URL, an acknowledgments URL and a PGP fingerprint Encrypt with the published PGP key where the finding warrants it. The key is advertised in the security.txt alongside the policy Say which edition you tested. Community Edition is the open-source build and the target here, and several authorization features exist only in the commercial edition Neo4j is a CNA and assigns its own CVE records, with a documented process for disputing one. Read the record it publishes for your finding rather than assuming a third party will assign it Include the Cypher that reproduces it, the procedure allow-list and sandbox settings in force, and any plugin that was loaded, since most of this surface depends on server configuration The trust centre states that claims of compensation will not be accepted. There is no reward to negotiate, only a public acknowledgment Disclosure Coordinated through the vendor's trust-centre process and published under Neo4j's own CNA, which means the CVE record and the advisory come from the vendor rather than from a GitHub advisory feed. Reporters are credited on a public acknowledgments list. No fixed embargo length is published, so plan for a hold that runs to a patched release across the supported version lines, and use the documented dispute process if the published record misstates your finding. Safe harbor Sorona will not pursue legal action against you for good-faith research submitted to us in line with this policy. We cannot speak for the upstream project, its vendor, or any third party, and we do not grant authorization on their behalf. You are responsible for understanding and following the laws that apply to you, wherever you are, and for staying within any scope the project has defined. Submit a vulnerability