GitHub Advisoryadvisory · Maven
GHSA-7q8p-9953-pxvr Remote Command Execution in SOFARPC
CRITICAL
Official page ↗
- Aliases
- CVE-2024-23636
- Ecosystem
- Maven
- Packages
- com.alipay.sofa:rpc-sofa-boot-starter
- Severity
- Critical
- CVSS vector
- CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
- Weaknesses
- CWE-502
- Reviewed
- 2024-01-23
Affected packages
• Maven com.alipay.sofa:rpc-sofa-boot-starter: < 5.12.0 → fixed in 5.12.0
Description
Impact
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 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.
Patches
Fixed this issue by adding a blacklist, users can upgrade to sofarpc version 5.12.0 to avoid this issue.
Workarounds
SOFARPC also provides a way to add additional blacklist. Users can add some class like -Drpc_serialize_blacklist_override=org.apache.xpath. to avoid this issue.
Related
Alias · CVE (1)
- CVE-2024-23636 SOFARPC is a Java RPC framework. vulnerability
Weakness · CWE (1)
- CWE-502 Deserialization of Untrusted Data weakness
References
- https://github.com/sofastack/sofa-rpc/security/advisories/GHSA-7q8p-9953-pxvr web
- https://nvd.nist.gov/vuln/detail/CVE-2024-23636 advisory
- https://github.com/sofastack/sofa-rpc/commit/42d19b1b1d14a25aafd9ef7c219c04a19f90fc76 web
- https://github.com/sofastack/sofa-rpc/commit/d08e25824ae9feaf0876adba9acd2938f34759b1 web
- https://github.com/sofastack/sofa-rpc package