CVE-2026-82441: Apache Storm Nimbus: Cross-Tenant Blob Deletion and Cluster Denial of Service via Unvalidated Topology Dependency Keys
Description
A submitted topology carries two lists of blobstore keys, dependencyjars and dependencyartifacts, which the client fills in after uploading the corresponding blobs. Nimbus performed no validation of their contents on the submission path, yet acts on them in two places.
During cleanup of a finished topology, Nimbus deletes the keys named in those lists, and the deletion is performed as the Nimbus subject, for which the blobstore short-circuits its ACL check. A submitter who listed a key belonging to another topology, such as its -stormjar.jar, could therefore cause that blob to be deleted when their own topology was cleaned up.
Separately, on acquiring leadership a Nimbus compares the dependency keys of all active topologies against the blobstore contents and surrenders leadership if any is missing. A single key that does not exist, on a single active topology, therefore causes every Nimbus to acquire leadership, surrender it and requeue indefinitely, leaving the cluster without a leader and unable to schedule, clean up or accept submissions.
Mitigation
Upgrade to 3.1.0, where a submission is refused unless every entry in both lists is a dependency blob key and exists in the blobstore.
Note that this validates new submissions only; a topology stored by an affected version with an invalid list is unaffected by the upgrade. An operator whose cluster is failing to retain a leader should inspect the Nimbus log for the dependency keys reported as missing and remove or resubmit the topology naming them.
Users who cannot upgrade immediately should restrict topology submission to trusted principals.
Credit
This issue was discovered by rzo1 while investigating an unrelated blobstore defect.
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
Apache Storm Nimbusto a version that resolves this vulnerability.Fixed in 3.1.0 - Configuration
For users who cannot upgrade immediately, restrict topology submission to trusted principals.
Apache Storm Nimbus Topology submission principals = trusted-only - Operational
For a finished topology cleanup, check the Nimbus log for dependency keys reported as missing; then remove or resubmit the topology naming those missing dependency keys.
Event History
Frequently Asked Questions
Who can trigger the issue?
A topology submitter can supply entries in the dependency_jars or dependency_artifacts lists. The described impact occurs because Nimbus does not validate those entries on the submission path.
What conditions are needed for cross-tenant blob deletion?
The submitter must name a blob key belonging to another topology in their submitted topology’s dependency lists. When the submitter’s topology is later cleaned up, Nimbus deletes the listed key using the Nimbus subject, which bypasses the blobstore ACL check.
How can this cause a cluster-wide denial of service?
A single active topology with a dependency key that does not exist is sufficient. When Nimbus acquires leadership, it detects the missing key, surrenders leadership, and requeues indefinitely, preventing leadership-dependent scheduling, cleanup, and submissions.
What remediation is provided?
Upgrade to Apache Storm 3.1.0. In that version, submission is refused unless entries in both dependency lists are dependency blob keys.