Description
Apache James prior to version 3.7.5 and 3.8.0 exposes a JMX endpoint on localhost subject to pre-authentication deserialisation of untrusted data.
Given a deserialisation gadjet, this could be leveraged as part of an exploit chain that could result in privilege escalation.
Note that by default JMX endpoint is only bound locally.
We recommend users to:
- Upgrade to a non-vulnerable Apache James version
- Run Apache James isolated from other processes (docker - dedicated virtual machine)
- If possible turn off JMX
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| Apache Software Foundation | Apache James server | ≤ 3.7.4, 3.8 – ≤ 3.8.0 | — |
Public exploits
Exploit or proof-of-concept code for this vulnerability is publicly available, which lowers the bar for attackers. Treat it as a reason to patch sooner.
GitHub 1 repository
-
mbadanoiu/CVE-2023-51518 ★ 1 · Jun 3, 2024
CVE-2023-51518: Preauthenticated Java Deserialization via JMX in Apache James
Sources: PoC-in-GitHub, Metasploit Framework, Exploit-DB — updated daily. Only links are listed; no exploit code is hosted here.
Affected packages
| Ecosystem | Package | Affected | Fixed | Record |
|---|---|---|---|---|
| Maven | org.apache.james:james-server | < 3.7.5 | 3.7.5 | GHSA-px7w-c9gw-7gj3 |
| Maven | org.apache.james:james-server | >= 3.8.0, < 3.8.1 | 3.8.1 | GHSA-px7w-c9gw-7gj3 |
References
- https://lists.apache.org/thread/wbdm61ch6l0kzjn6nnfmyqlng82qz0or vendor-advisory