Impact
The Apache Pulsar broker admin REST API contains a truncate operation for persistent topics. When truncating a partitioned topic, the broker bypasses the tenant admin authorization check for the caller and instead performs each per‑partition truncate using the broker’s internal admin client. If the broker’s internal credentials hold tenant admin or superuser authority—commonly the case in default deployments, a user who only has lookup permission (derived from produce or consume rights) can trigger the truncate for the entire partitioned topic. This moves all subscription cursors to the end of each partition, discarding any unacknowledged backlog, and removes older ledgers regardless of retention policies, resulting in permanent loss of messages. The operation does not expose message contents or alter permissions, but it erases data that would otherwise be recoverable.
Affected Systems
Apache Pulsar, versions 2.8.0 up to but not including 4.0.14, and 4.1.0 up to but not including 4.2.5. The currently supported release lines are 4.0.x and 5.0.x; users on earlier releases should upgrade to 4.0.14 or 4.2.5+ to apply the fix.
Risk and Exploitability
The vulnerability is rated CVSS 7.2, with no EPSS data currently available and no listing in the CISA KEV catalog. The likely attack vector is an authenticated user performing a REST API call to DELETE /admin/v2/persistent/{tenant}/{namespace}/{topic}/truncate. The attacker must possess lookup rights on the target topic, which typically implies produce or consume permissions. If the broker’s internal identity is configured as tenant admin or superuser, the truncate proceeds successfully. Thus, the risk level is moderate to high for deployments with default authorization settings, offering a path to significant data loss without requiring elevated user privileges.
OpenCVE Enrichment