Files
vulhub/neo4j/CVE-2021-34371/README.zh-cn.md
Aaron 63285f61aa
Some checks failed
Vulhub Format Check and Lint / format-check (push) Has been cancelled
Vulhub Format Check and Lint / markdown-check (push) Has been cancelled
Vulhub Docker Image CI / longtime-images-test (push) Has been cancelled
Vulhub Docker Image CI / images-test (push) Has been cancelled
first commit
2025-09-06 16:08:15 +08:00

1.3 KiB
Raw Blame History

Neo4j Shell Server 反序列化漏洞CVE-2021-34371

Neo4j是一个开源图数据库管理系统。

在Neo4j 3.4.18及以前如果开启了Neo4j Shell接口攻击者将可以通过RMI协议以未授权的身份调用任意方法其中setSessionVariable方法存在反序列化漏洞。因为这个漏洞并非RMI反序列化所以不受到Java版本的影响。

在Neo4j 3.5及之后的版本Neo4j Shell被Cyber Shell替代。

参考链接:

漏洞环境

如果你使用Linux或OSX系统可以执行如下命令启动一个Neo4j 3.4.18

TARGET_IP=<your-ip> docker compose up -d

其中,环境变量TARGET_IP需要制定靶场环境的IP地址。

如果你是Windows系统请直接修改docker-compose.yml,指定TARGET_IP环境变量的值。

服务启动后,访问http://your-ip:7474即可查看到Web管理页面但我们需要攻击的是其1337端口这个端口是Neo4j Shell端口使用RMI协议通信。

漏洞复现

使用参考链接中的Java RMI客户端集成基于Rhino的Gadget发送RMI请求

可见,touch /tmp/success5已成功执行: