{"id":22314,"date":"2026-09-15T00:30:47","date_gmt":"2026-09-14T16:30:47","guid":{"rendered":"https:\/\/www.54iter.cn\/?vuln=cve-2026-82429"},"modified":"2026-09-15T00:30:47","modified_gmt":"2026-09-14T16:30:47","slug":"cve-2026-82429","status":"publish","type":"vuln","link":"https:\/\/www.54iter.cn\/?vuln=cve-2026-82429","title":{"rendered":"CVE-2026-82429 &#8211; Description\n\nThe setuid-root `worker-launcher` binary adjusts ownership and permissions of"},"content":{"rendered":"<p>Description<\/p>\n<p>The setuid-root `worker-launcher` binary adjusts ownership and permissions of worker directories by walking<br \/>\nthe tree with FTS and calling `lchown` and `chmod` on each entry&#8217;s full pathname while running with an<br \/>\neffective uid of 0. Both syscalls re-resolve the path at the time of the call, after FTS has classified the<br \/>\nentry, and the trees being walked are owned and writable by the untrusted topology user.<\/p>\n<p>A tenant running code on a supervisor node could therefore replace an intermediate directory component with<br \/>\na symbolic link between classification and the privileged operation, redirecting the root-owned `lchown` or<br \/>\n`chmod` at an arbitrary file on the host. The operation is repeatable at will, since crashing a worker<br \/>\nforces a relaunch and blob updates re-run the walk, so a failed attempt costs the attacker nothing.<\/p>\n<p>This crosses the boundary that `supervisor.run.worker.as.user` and container isolation are intended to<br \/>\nenforce. It is the same defect class as the Hadoop container-executor issues from which this code derives.<\/p>\n<p>Mitigation<\/p>\n<p>Upgrade to 3.1.0, where the privileged walk operates on file descriptors it has already stat&#8217;d rather than<br \/>\non pathnames re-resolved at call time.<\/p>\n<p>Users who cannot upgrade immediately should not run untrusted topology code on supervisors configured with<br \/>\n`supervisor.run.worker.as.user`, since the launcher is the boundary being crossed. Note that the launcher<br \/>\nmust be rebuilt and reinstalled after upgrading; replacing the Java artifacts alone is not sufficient.<\/p>\n<p>Credit<\/p>\n<p>The ASF &#8212; found using Claude agents to study the security of open-source projects, validated and reported by Apache Storm.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Description<\/p>\n<p>The setuid-root `worker-launcher` binary adjusts ownership and permissions of worker directories by walking<br \/>\nthe tree with FTS and calling `lchown` and `chmod` on each entry&#8217;s full pathnam<\/p>\n","protected":false},"template":"","meta":[],"categories":[],"tags":[],"class_list":["post-22314","vuln","type-vuln","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/vuln\/22314","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/vuln"}],"about":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/types\/vuln"}],"wp:attachment":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=22314"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=22314"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=22314"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}