CVE-2026-40007
Official description Straight from the sourceThe vendor's or NVD's own wording, published unedited. Authoritative, but often terse — it says what broke, rarely what to do.
NVD · uneditedUncontrolled Recursion, Uncontrolled Resource Consumption vulnerability in Apache IoTDB. When pipe_air_gap_receiver_enabled=true, the IoTDB AirGap receiver's readLength method calls itself recursively each time it recognises the E-language prefix in socket data, with no depth limit. An unauthenticated attacker can send a stream of repeated E-language prefixes that drives the recursion arbitrarily deep, exhausting the receiver thread's JVM stack and raising StackOverflowError. This issue affects Apache IoTDB: from 1.0.0 before 2.0.10. Users are recommended to upgrade to version 2.0.10, which fixes the issue.
Technical summary Written by usOur analysis, written from the advisory, the CVSS vector and the affected-version data. It adds context the advisory leaves out, and never invents facts that are not in the source.
dbcve analysis · high confidenceA stack exhaustion vulnerability in Apache IoTDB's AirGap receiver allows an unauthenticated attacker to trigger unbounded recursion in the readLength method by sending repeated E-language prefixes in socket data, causing StackOverflowError and DoS.
Verify against the referenced sources before acting — the references below are authoritative for this CVE, this summary is not.
CVSS breakdown How the score is builtThe industry scoring standard. It rates how the flaw is reached, what it takes to exploit, and what an attacker gains — the score is derived from those, not the other way round.
From the vector- Attack vector
- Network
- Complexity
- Low
- Privileges
- None
- User interaction
- None
- Scope
- Unchanged
- Confidentiality
- None
- Integrity
- None
- Availability
- High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Am I affected? How to checkSteps we derive from the advisory and the affected-version data, so you can decide whether this CVE reaches your setup. They are a guide, not a scan — your own configuration is the authority.
dbcve checksWork through these to decide whether this CVE applies to you.
-
Identify Apache IoTDB versionRun 'SELECT VERSION FROM information_schema.database;' or check the iotdb installation directory for a version file. Compare the installed version against the affected range (versions prior to 2.0.10).Affected if Installed version is lower than 2.0.10 and the AirGap receiver is enabled
-
Locate IoTDB configuration fileFind the iotdb-common.properties or iotdb-config.properties file in the IoTDB configuration directory (commonly in {IoTDB_home}/conf/).Affected if Configuration file exists and contains AirGap-related settings
-
Verify AirGap receiver is enabledSearch for the property 'pipe_air_gap_receiver_enabled' in the configuration file. If absent, check default behavior. The feature may be enabled by default in vulnerable versions.Affected if pipe_air_gap_receiver_enabled is set to true or is not explicitly set to false (default enabled)
-
Confirm network exposure of AirGap receiverCheck if the AirGap receiver port (typically port 6667 or as configured via pipe_air_gap_receiver_port) is exposed to untrusted networks. Review firewall rules and IoTDB bind addresses.Affected if AirGap receiver port is accessible from untrusted network segments
A user is affected if their Apache IoTDB version is prior to 2.0.10 AND the AirGap receiver feature (pipe_air_gap_receiver_enabled) is enabled and accessible over the network.
Generated from the published advisory. Verify against your own configuration.
Remediation Closing itWhat it takes to close this. Where a vendor fix exists we point at it; where none exists we say so plainly, and can build one. Effort estimates are scoped from the advisory, not from your codebase.
dbcve · scopedUpgrade Apache IoTDB to version 2.0.10 or later which implements a recursion depth limit in the AirGap receiver; alternatively, disable pipe_air_gap_receiver_enabled if upgrade is not immediately feasible.
2.0.10
- 1. Identify the current Apache IoTDB version by checking the installation directory or running: get version command or checking pom.xml
- 2. Create a complete backup of the IoTDB data directory, configuration files (iotdb-common.properties, iotdb-env.sh), and any custom scripts
- 3. Stop the IoTDB service gracefully to ensure all data is flushed: ./sbin/stop-iotdb.sh or equivalent for your deployment
- 4. Download Apache IoTDB version 2.0.10 from the official Apache IoTDB releases page (https://iotdb.apache.org/Download/)
- 5. Extract the new version to the target installation directory
- 6. Copy backed-up configuration files to the new installation, reviewing any new configuration options that may have been added
- 7. Start the IoTDB service: ./sbin/start-iotdb.sh
- 8. Verify the upgrade by checking: a) Service is running without errors, b) Data is accessible, c) Version shows 2.0.10
Generated from the published advisory — verify against the referenced sources before acting.
- Consultation3.0 h
- Implementation6.0 h
- Testing3.0 h
- Review / QA2.0 h
An estimate, not a bill — we confirm scope with you before any work starts. Need it this week? Rush from $3,984.
Scan for this in your stack
Free · runs locallyCheck whether your project pulls in CVE-2026-40007 — or any other known-vulnerable package — straight from your lock files. Free and open source; it runs locally and uploads nothing.
References Go to the primary sourcePrimary sources — vendor advisories, patches and trackers. Where our summary and a reference disagree, the reference wins.
Primary sourcesPractitioner notes
ContributedPeer-ranked notes from engineers who’ve handled CVE-2026-40007 in production — separate from our analysis above.
The advisory tells you what broke. It rarely tells you what actually worked. If you’ve dealt with this one, that detail is what the next engineer is searching for.
- The version that genuinely resolved it — not the one the vendor claimed
- A config change or rule that shut the vector down
- A gotcha in the upgrade path that cost you an afternoon
No notes yet
Be the first to add a field note for this CVE — a mitigation you’ve verified, a version caveat, or a link to a working fix. Sign in above to contribute.
A place for practitioners to share what actually worked: a mitigation you’ve tested, a configuration change, a version- or environment-specific caveat, or a link to a verified patch. The most useful notes rise to the top as peers upvote them, so the signal stays high.
- Verified mitigations, workarounds, and config changes
- Version or environment caveats, and links to real fixes
- No weaponised exploit code, or anything meant to cause harm
- No spam, self-promotion, credentials, or personal data