Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1359 CNY

100%

CVE-2026-82440— Apache Storm Nimbus: Submitter-Controlled Class Instantiation in Nimbus via a Fail-Open Scheduler Strategy Allowlist

Quick assessment

Affected
Apache Software Foundation Apache Storm Nimbus
Exploitation
No confirmed in-the-wild exploitation; assess based on exposure
Recommended action
Check the vendor advisory and references for a fixed version. If immediate upgrade is impossible, restrict exposure and increase monitoring.

漏洞描述 Nimbus 在调度拓扑时,会实例化由 配置项指定的类。原本用于限制该选择的白名单配置项 ,在未被设置时被错误地处理为“允许任意类”。由于该配置项并未包含在随软件发布的 文件中,因此“未设置”即为默认发布状态。这使得经过身份验证的提交者能够诱导 Nimbus 实例化 Nimbus 类路径上任何具有无参构造函数的类。 Storm 自身的生产环境构件中包含一些适合此类攻击的具有副作用的类:例如,实例化 会启动一个拥有独立线程和套接字的 ZooKeeper 服务器,且该服务器永远不会被关闭; 的行为也类似。因此

Get alerts for future matching vulnerabilities Log in to subscribe

I. Basic Information for CVE-2026-82440

Vulnerability Information

Have questions about the vulnerability? See if Shenlong's analysis helps!
View Shenlong Deep Dive ↗

Although we use advanced large model technology, its output may still contain inaccurate or outdated information.Shenlong tries to ensure data accuracy, but please verify and judge based on the actual situation.

Vulnerability Title
Apache Storm Nimbus: Submitter-Controlled Class Instantiation in Nimbus via a Fail-Open Scheduler Strategy Allowlist
Source: CVE Program / CVE List V5
Vulnerability Description
Description Nimbus instantiates the class named by a topology's `topology.scheduler.strategy` when scheduling it. The allowlist intended to constrain that choice, `nimbus.scheduler.strategy.class.whitelist`, was treated as "allow any class" when unset, and it had no entry in the shipped `defaults.yaml`, so unset was the shipped state. An authenticated submitter could therefore cause Nimbus to instantiate any class on the Nimbus classpath that has a no-argument constructor. Storm's own production artifacts contain classes with side effects suitable for this: instantiating `org.apache.storm.testing.InProcessZookeeper` starts a ZooKeeper server with its own threads and sockets and nothing closes it, and `org.apache.storm.LocalCluster` behaves similarly. Repeated submissions therefore consume threads, sockets and memory in the most privileged daemon in the cluster. Mitigation Upgrade to 3.1.0, where an unset allowlist means the strategies shipped with Storm rather than any class. Note that this is a behaviour change: a cluster running an out-of-tree scheduler strategy without an explicit allowlist will have those topologies refused until the class is added to `nimbus.scheduler.strategy.class.whitelist`. The rejection message names the refused class and the configuration key. Users who cannot upgrade immediately should set `nimbus.scheduler.strategy.class.whitelist` explicitly to the strategies they intend to permit.
Source: CVE Program / CVE List V5
CVSS Information
N/A
Source: CVE Program / CVE List V5
Vulnerability Type
使用外部可控制的输入来选择类或代码(不安全的反射)
Source: CVE Program / CVE List V5

Affected Products

Vendor Product Affected Versions CPE Subscribe
Apache Software Foundation Apache Storm Nimbus 3.0.0 ~ 3.1.0 -

II. Public POCs for CVE-2026-82440

# POC Description Source Link Shenlong Link
AI-Generated POC Premium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2026-82440

请登录查看更多情报信息。

Other References for CVE-2026-82440 (1)

Same Patch Batch · Apache Software Foundation · 2026-11-09 · 28 CVEs total

CVE-2026-86829 Apache Airflow: Deserialization of task-controlled XCom values in the Scheduler during dep
CVE-2026-111455 Apache Airflow: Connections API: async connection test authorizes create at enqueue but ov
CVE-2026-111454 Apache Airflow: API: asset endpoints return scheduled/producing/consuming Dag IDs the call
CVE-2026-111453 Apache Airflow: API: asset queuedEvents DELETE checks Dag edit on a ?dag_id query value bu
CVE-2026-111452 Apache Airflow: Secrets masker: camelCase key names (privateKey, connectionString, webhook
CVE-2026-111421 Apache Airflow: Execution API: set_xcom skips the reserved-key check, so task-written XCom
CVE-2026-111395 Apache Airflow: Reserved serialization keys in Dag run conf crash the scheduler or are reb
CVE-2026-107474 Apache Airflow: Connections API: apprise connection "config" extra returned in cleartext
CVE-2026-113504 Apache Airflow: Secrets masker: pattern-based masking bounded at depth 5 returns deeply-ne
CVE-2026-101031 Apache Airflow: Shell command injection in the example_dag_decorator example Dag via an IP
CVE-2026-113508 Apache Airflow: Logout token revocation fails open; errors silently swallowed
CVE-2026-96285 Apache Airflow: Scheduler: next_kwargs deserialized before the dict check, so resume data
CVE-2026-86468 Apache Airflow: CLI argv masking misses Variable values and --conn-extra, persisting secre
CVE-2026-82337 Apache Airflow: DeadlineAlert fields bypass plugin-registration gate for scheduler-side de
CVE-2026-120367 Apache Axis2/Java: unbounded JSON request body buffering
CVE-2026-76185 Apache Airflow Task SDK: Task SDK SecretCache: non-injective team cache key enables cross-
CVE-2026-68982 Apache Airflow: CeleryExecutor: forged callback workloads run on Celery workers without wo
CVE-2026-50204 Apache Airflow: Audit-log secrets masker redacts by key name only, persisting connection a
CVE-2026-40913 Apache Airflow: Import Errors API Leaks Unauthorized DAG Stack Traces via Incomplete Per-F
CVE-2026-82436 Apache Storm Client: Deserialization of Untrusted Data from the State Store

Showing top 20 of 28 CVEs. View all on vendor page → →

IV. Related Vulnerabilities