CVE-2024-23636 SOFARPC Remote Command Execution(RCE) Vulnerbility
Attackers can execute arbitrary code by bypassing the SOFA Hessian blacklist via a JDK-only gadget chain in SOFARPC.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2024-23636?
CVE-2024-23636 is a critical unsafe deserialization vulnerability in sofastack sofa-rpc, published on 23 Jan 2024. An attacker can exploit it over the internet without logging in, with no action from the victim.
Official description
SOFARPC is a Java RPC framework. SOFARPC defaults to using the SOFA Hessian protocol to deserialize received data, while the SOFA Hessian protocol uses a blacklist mechanism to restrict deserialization of potentially dangerous classes for security protection. But, prior to version 5.12.0, there is a gadget chain that can bypass the SOFA Hessian blacklist protection mechanism, and this gadget chain only relies on JDK and does not rely on any third-party components. Version 5.12.0 fixed this issue by adding a blacklist. SOFARPC also provides a way to add additional blacklists. Users can add a class like `-Drpc_serialize_blacklist_override=org.apache.xpath.` to avoid this issue.
Weakness: CWE-502
Which versions are affected by CVE-2024-23636?
2 open source packages ship an affected version, including com.alipay.sofa:rpc-sofa-boot-starter. It affects 1 product.
| Package | Affected | Fixed in |
|---|---|---|
com.alipay.sofa:rpc-sofa-boot-starter Maven | All versions | 5.12.0 |
com.alipay.sofa:rpc-sofa-boot-starter Maven | All versions | 5.12.0 |
Products include Sofastack Sofarpc.
How do I fix CVE-2024-23636?
Upgrade com.alipay.sofa:rpc-sofa-boot-starter to 5.12.0 or later.
Upgrade, and only deserialise data from trusted sources or with an allow-list of types. More about Unsafe deserialization.
Is CVE-2024-23636 being exploited?
There is no known exploitation of CVE-2024-23636 in the wild and no public exploit code.
Other vulnerabilities in sofastack sofa-rpc
Sources
Also known as GHSA-7q8p-9953-pxvr.