Skip to main content

Apache IoTDB CVE-2026-40008

| EUVDEUVD-2026-42836 CRITICAL
Use of Externally-Controlled Input to Select Classes or Code ('Unsafe Reflection') (CWE-470)
2026-07-10 apache GHSA-v4p4-86j5-2f8q
9.8
CVSS 3.1 · Vendor: apache
Share

Severity by source

Vendor (apache) PRIMARY
9.8 HIGH
AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
vuln.today AI
8.8 HIGH

Network-reachable and low-complexity, but defining a pipe processor is an authenticated operation so PR:L; unsafe reflection yields code execution with full CIA impact.

3.1 AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N

Primary rating from Vendor (apache).

CVSS VectorVendor: apache

Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
High

Lifecycle Timeline

7
Analysis Updated
Jul 10, 2026 - 15:28 vuln.today
v3 (cvss_changed)
Analysis Updated
Jul 10, 2026 - 15:28 vuln.today
v2 (cvss_changed)
Re-analysis Queued
Jul 10, 2026 - 15:22 vuln.today
cvss_changed
Severity Changed
Jul 10, 2026 - 15:22 NVD
HIGH CRITICAL
CVSS changed
Jul 10, 2026 - 15:22 NVD
9.8 (HIGH) 9.8 (CRITICAL)
Patch available
Jul 10, 2026 - 09:16 EUVD
Analysis Generated
Jul 10, 2026 - 08:23 vuln.today

DescriptionCVE.org

Use of Externally-Controlled Input to Select Classes or Code ('Unsafe Reflection') vulnerability in Apache IoTDB. The pipe processor reads a fully qualified Java class name and instantiates it using Class.forName().newInstance() without any validation or allowlisting.

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.

AnalysisAI

Unsafe reflection in Apache IoTDB's pipe processor lets a user-supplied fully qualified Java class name be loaded and instantiated via Class.forName().newInstance() with no allowlisting, enabling arbitrary class loading and likely remote code execution in the database server process. It affects all releases from 1.0.0 up to (but not including) 2.0.10 and is fixed in 2.0.10. No public exploit identified at time of analysis, and EPSS is low (0.25%, 17th percentile), though CISA SSVC rates the technical impact as total and considers exploitation automatable.

Technical ContextAI

Apache IoTDB is an open-source time-series database aimed at IoT and industrial telemetry workloads, running on the JVM. The affected component is the pipe subsystem, IoTDB's stream-processing/data-synchronization feature, where a pipe can be configured with a custom 'processor' plugin identified by class name. The root cause is CWE-470 (Use of Externally-Controlled Input to Select Classes or Code, 'Unsafe Reflection'): the processor name is passed directly to reflective instantiation (Class.forName(name).newInstance()) without validation, type-checking against an expected interface, or an allowlist of permitted classes. This lets an attacker who controls that input coerce the JVM into loading and constructing arbitrary classes present on the classpath, whose constructors or static initializers can execute attacker-influenced logic. The single CPE cpe:2.3:a:apache_software_foundation:apache_iotdb:*:*:*:*:*:*:*:* confirms the product scope without version bounding in the CPE string itself.

RemediationAI

Vendor-released patch: 2.0.10 - upgrade Apache IoTDB to 2.0.10, which adds validation/allowlisting to the pipe processor class loading, per the Apache advisory (https://lists.apache.org/thread/fm8cpvzbox2qqy99ztglm8wkk1nrg9ng). If immediate upgrade is not possible, restrict who can create or alter pipes by tightening IoTDB authentication and authorization so that only trusted administrators hold pipe-management privileges, and avoid exposing the IoTDB service ports to untrusted networks (place them behind a firewall or restrict to a management VLAN); the trade-off is reduced convenience for legitimate data-sync automation and no protection against an already-privileged malicious insider. Monitor pipe definitions for unexpected or non-standard processor class names as a detective control until patched.

More in Java

View all
CVE-2012-4681 CRITICAL POC
9.8 Aug 28

Oracle Java SE 7 Update 6 and earlier contains multiple sandbox bypass vulnerabilities via the ClassFinder and forName m

CVE-2015-7450 CRITICAL POC
9.8 Jan 02

Remote code execution in IBM Sterling B2B Integrator, Sterling Integrator, and Tivoli Common Reporting allows unauthenti

CVE-2013-2465 CRITICAL POC
9.8 Jun 18

Java Runtime Environment sandbox bypass via incorrect image channel verification in 2D component allows remote unauthent

CVE-2011-3544 CRITICAL POC
9.8 Oct 19

Oracle Java SE JDK/JRE 7 and 6 Update 27 and earlier allows remote code execution with complete system compromise throug

CVE-2010-1871 HIGH POC
8.8 Aug 05

JBoss Seam 2 in Red Hat JBoss EAP 4.3.0 fails to sanitize JBoss Expression Language inputs, allowing remote attackers to

CVE-2012-1723 CRITICAL POC
9.8 Jun 16

Unspecified vulnerability in the Java Runtime Environment (JRE) component in Oracle Java SE 7 update 4 and earlier, 6 up

CVE-2013-0422 CRITICAL POC
9.8 Jan 10

Multiple vulnerabilities in Oracle Java 7 before Update 11 allow remote attackers to execute arbitrary code by (1) using

CVE-2012-0507 CRITICAL POC
9.8 Jun 07

Unspecified vulnerability in the Java Runtime Environment (JRE) component in Oracle Java SE 7 Update 2 and earlier, 6 Up

CVE-2015-4852 CRITICAL POC
9.8 Nov 18

The WLS Security component in Oracle WebLogic Server 10.3.6.0, 12.1.2.0, 12.1.3.0, and 12.2.1.0 allows remote attackers

CVE-2012-5076 CRITICAL POC
9.8 Oct 16

Unspecified vulnerability in the Java Runtime Environment (JRE) component in Oracle Java SE 7 Update 7 and earlier allow

CVE-2017-3066 CRITICAL POC
9.8 Apr 27

Remote unauthenticated attackers can execute arbitrary code on Adobe ColdFusion servers through Java deserialization fla

CVE-2012-0391 CRITICAL POC
9.8 Jan 08

The ExceptionDelegator component in Apache Struts before 2.2.3.1 interprets parameter values as OGNL expressions during

Share

CVE-2026-40008 vulnerability details – vuln.today

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy