Impact
The flaw in JsonPulsarHeaderMapper causes any header type that matches a trusted package prefix to be accepted, so trusting a package implicitly trusts all of its subpackages. When the trusted-packages list is empty the mapper falls back to trusting every package. This behaviour allows JDK classes to be deserialized from incoming Pulsar messages, leading to code execution on the server. The weakness is a classic insecure deserialization flaw, identified as CWE-502.
Affected Systems
Spring:Spring for Apache Pulsar versions 1.1.0 through 1.1.17, 1.2.0 through 1.2.17, and 2.0.0 through 2.0.5 are impacted. Any deployment of these editions that has the trusted-packages configuration either set to include broad prefixes or left empty is vulnerable.
Risk and Exploitability
The CVSS score of 8.1 reflects a high severity for this vulnerability. No EPSS score is provided, indicating that publicly documented exploitation is not known at this time. It is also not listed in CISA's KEV catalog. Attackers could potentially craft Pulsar messages that include JDK class references; if the system’s trusted-packages setting is generous or unset, the deserialization routine will execute those classes, enabling remote code execution. Exploitation would require network access to the Pulsar endpoint and the ability to inject custom message headers.
OpenCVE Enrichment