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

published August 5, 2021

CVSS
โ€”
EPSS
13%
Percentile
96.4
In the wild
Unconfirmed
What it is

โšก A sneaky RMI service lurking in Neo4j could let an attacker pull off remote code execution! ๐Ÿšจ Think of it like a restaurant where the chef trusts every delivery without checking the ingredients โ€” one bad order could turn into a disastrous dish served up to everyone! An attacker could exploit this flaw and gain control over your server, executing arbitrary code as if they were the chef themselves. This could lead to data theft, manipulation, or even complete system compromise. Frightening, right?

Put simply

Think of it like a restaurant where the chef trusts every delivery without checking the ingredients โ€” one bad order could turn into a disastrous dish served up to everyone! CVE-2021-34371 exists due to the arbitrary deserialization of Java objects via the RMI service, which is enabled in Neo4j versions up to 3.4.18. This means that if an attacker can send crafted data, they could gain unauthorized access to methods that can execute harmful commands.

What to do

An attacker could exploit this flaw and gain control over your server, executing arbitrary code as if they were the chef themselves. This could lead to data theft, manipulation, or even complete system compromise. Frightening, right? To stay safe, make sure you're running Neo4j version 3.4.19 or later, where this vulnerability has been addressed. Additionally, consider disabling the shell server if it's not needed and review your application's RMI configurations. You got this! Let's keep the internet safe together โ€” you've got this! ๐Ÿ›ก๏ธ

The record
Technical detail
CVSS
Not scored
CVSS v4.0
Not supplied
EPSS
0.13386 ยท 96.4th percentile
Published
2021-08-05T19:35Z
EPSS history
Timeline
  • 05 AUG 19:35Z
    Neo4j through 3.4.18 (with the shell server enabled) exposes an RMI service that arbitrarily deserializes Java objects, e.g., through setSessionVariable
    cvelistv5