CVE Catalog

CVE-2026-82429

HighCVSS 7.8
Published: Updated: Translated: NVD NIST

Exploitation Probability (EPSS)

Low risk
0.13%

3th percentile - higher than 3% of all known CVEs

Summary

A time-of-check-time-of-use (TOCTOU) vulnerability exists in the setuid-root worker-launcher binary in Apache Storm. While walking worker directory trees, it calls lchown and chmod on full pathnames that are re-resolved after FTS classification. A malicious topology user can replace an intermediate directory with a symbolic link and redirect the privileged operation to an arbitrary file on the host.

Risk Assessment

An attacker running code on a supervisor node can change ownership or permissions of any file on the host, enabling privilege escalation and bypassing container isolation and the supervisor.run.worker.as.user boundary. The operation is repeatable, so failed attempts cost the attacker nothing.

Recommendation

Upgrade Apache Storm to 3.1.0, where the privileged walk operates on already-stat'd file descriptors instead of re-resolved pathnames. Note that the worker-launcher binary must be rebuilt and reinstalled after upgrading — replacing Java artifacts alone is not sufficient. If immediate upgrade is not possible, do not run untrusted topology code on supervisors configured with supervisor.run.worker.as.user.

Other vulnerabilities in Apache Storm

See all
Original NVD description (English source)

Description The setuid-root `worker-launcher` binary adjusts ownership and permissions of worker directories by walking the tree with FTS and calling `lchown` and `chmod` on each entry's full pathname while running with an effective uid of 0. Both syscalls re-resolve the path at the time of the call, after FTS has classified the entry, and the trees being walked are owned and writable by the untrusted topology user. A tenant running code on a supervisor node could therefore replace an intermediate directory component with a symbolic link between classification and the privileged operation, redirecting the root-owned `lchown` or `chmod` at an arbitrary file on the host. The operation is repeatable at will, since crashing a worker forces a relaunch and blob updates re-run the walk, so a failed attempt costs the attacker nothing. This crosses the boundary that `supervisor.run.worker.as.user` and container isolation are intended to enforce. It is the same defect class as the Hadoop container-executor issues from which this code derives. Mitigation Upgrade to 3.1.0, where the privileged walk operates on file descriptors it has already stat'd rather than on pathnames re-resolved at call time. Users who cannot upgrade immediately should not run untrusted topology code on supervisors configured with `supervisor.run.worker.as.user`, since the launcher is the boundary being crossed. Note that the launcher must be rebuilt and reinstalled after upgrading; replacing the Java artifacts alone is not sufficient. Credit The ASF -- found using Claude agents to study the security of open-source projects, validated and reported by Apache Storm.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS