{"id":22317,"date":"2026-09-15T00:30:47","date_gmt":"2026-09-14T16:30:47","guid":{"rendered":"https:\/\/www.54iter.cn\/?vuln=cve-2026-82432"},"modified":"2026-09-15T00:30:47","modified_gmt":"2026-09-14T16:30:47","slug":"cve-2026-82432","status":"publish","type":"vuln","link":"https:\/\/www.54iter.cn\/?vuln=cve-2026-82432","title":{"rendered":"CVE-2026-82432 &#8211; Description\n\nNimbus validated `topology.blobstore.map` against the calling subject at subm"},"content":{"rendered":"<p>Description<\/p>\n<p>Nimbus validated `topology.blobstore.map` against the calling subject at submission time only. The rebalance<br \/>\noperation accepts configuration overrides and stripped a small set of keys from them, but never re-ran that<br \/>\nvalidation, so a caller authorised to rebalance a topology could introduce a blobstore map entry naming a<br \/>\nblob whose ACL does not grant them access. Supervisors localise whatever key the map names, placing the<br \/>\nblob&#8217;s contents into the topology&#8217;s working directory.<\/p>\n<p>The same advisory covers `listBlobs`, which performed no authorization check and passed no subject, unlike<br \/>\nthe neighbouring `getBlobMeta` and `beginBlobDownload` operations. It therefore returned every key in the<br \/>\nblobstore to any caller able to reach the Nimbus Thrift port, which provides the key names that make the<br \/>\nabove practical. On its own the disclosure is metadata only.<\/p>\n<p>Mitigation<\/p>\n<p>Upgrade to 3.1.0, where rebalance configuration overrides are validated exactly as submission-time<br \/>\nconfiguration is, against the rebalancing caller, and where `listBlobs` applies the configured<br \/>\nauthorization.<\/p>\n<p>Users who cannot upgrade immediately should restrict rebalance rights to trusted principals, keeping in mind<br \/>\nthat membership of a topology&#8217;s `topology.users` or `topology.groups` confers them.<\/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>Nimbus validated `topology.blobstore.map` against the calling subject at submission time only. The rebalance<br \/>\noperation accepts configuration overrides and stripped a small set of keys fro<\/p>\n","protected":false},"template":"","meta":[],"categories":[],"tags":[],"class_list":["post-22317","vuln","type-vuln","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/vuln\/22317","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=22317"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=22317"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=22317"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}