Turms AI-Serving
CVE-2025-66909
HIGH
Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessReach exposed Turms OCR endpoint
-
ExploitUpload crafted compressed PNG bomb
-
Executionimread() decompresses without dimension checks
-
ImpactMemory exhaustion and OutOfMemoryError crash service
Vulnerability Assessment
| Weakness |
CWE
ASVS 5.0
V2 - Validation and Business Logic Compression ratio limits
|
| Exploitation Conditions | Requires the Turms AI-Serving OCR/image-processing feature to be deployed and network-reachable to the attacker, and the endpoint must accept attacker-supplied image files that flow into ExtendedOpenCVImage loading via OpenCV imread(). No authentication is required only when the OCR service is publicly accessible (per the description); if the module is not deployed, not exposed, or sits behind authentication or an upload size/dimension gate, exploitation is prevented or limited. The core limiting factors are therefore exposure of the OCR upload path and absence of any pre-decompression dimension/pixel-count validation - environments not running this specific AI-Serving module are unaffected. |
| Impact | This is a genuine but bounded availability risk, not a top-tier emergency. The CVSS 3.1 vector (AV:N/AC:L/PR:N/UI:N/A:H, base 7.5) is internally consistent with the description: a network-reachable, unauthenticated, low-complexity attack whose sole impact is availability (C:N/I:N - no data compromise). CWE-409 (improper handling of highly compressed data) correctly maps to the decompression-bomb mechanism. Exploitation signals: publicly available exploit code exists (POC referenced in the NVD report), but the CVE is NOT in CISA KEV and no EPSS score was provided in the input, so there is no evidence of active or widespread exploitation at time of analysis - POC availability and active exploitation are distinct and must not be conflated. The affected software is Turms (an open-source IM engine) at a pre-release snapshot version (0.10.0-SNAPSHOT), which materially lowers real-world priority versus a comparable 7.5 in ubiquitous software. Net: prioritize patching for anyone actually running the Turms AI-Serving/OCR module exposed to untrusted input, but treat it as a service-availability hardening item rather than a critical breach vector. Note the missing EPSS data limits precision on exploitation likelihood. |
| Exploit ScenarioDerived | An attacker locates a publicly reachable Turms AI-Serving OCR endpoint that accepts image uploads and submits a small crafted PNG that decompresses to gigabytes in memory when OpenCV's imread() processes it. Because dimensions and pixel count are not validated before decompression, the JVM throws OutOfMemoryError and the service crashes; repeated requests sustain the denial of service. A public proof-of-concept report exists, and the low attack complexity plus lack of required authentication make this trivially repeatable against an exposed endpoint. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 13, 2026
Memory exhaustion denial of service in Turms AI-Serving (v0.10.0-SNAPSHOT and earlier) allows remote attackers to crash the service by uploading specially crafted compressed images that expand to gigabytes when loaded via OpenCV's imread() without dimension validation. The vulnerability is in the ExtendedOpenCVImage class, and publicly available exploit code exists. The risk is bounded to deployments that expose the OCR/image upload feature, and no authentication is required if that service is publicly accessible.
RemediationAI
No vendor-released patch identified at time of analysis. To mitigate, restrict network access to the Turms AI-Serving OCR/image upload endpoint, especially if publicly exposed, by requiring authentication or implementing IP allowlisting. Implement pre-decompression validation by checking image headers for dimensions and pixel count before calling OpenCV's imread(), or enforce strict upload size and pixel limits at the application layer. These measures may require code changes and could reject legitimate large images; restricting access may impact service availability. If the AI-Serving module is not deployed, the system is unaffected. Monitor memory usage for anomalous spikes. Refer to the public exploit report (https://github.com/Xzzz111/public_cve_report/blob/main/CVE-2025-66909_report.md) for technical details and potential detection methods.
Affects your stack
Find out whether the stacks and servers you run are on an affected version.
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The vulnerability stems from improper handling of highly compressed data (CWE-409) in the Turms AI-Serving module, specifically in the ExtendedOpenCVImage class (ai/djl/opencv/ExtendedOpenCVImage.java). The class uses OpenCV's imread() function to load images but fails to validate image dimensions or pixel count before decompression. This allows a small compressed file (e.g., PNG) to be crafted such that it expands to a massive size in memory, leading to OutOfMemoryError and service crash. The affected product is identified by CPE cpe:2.3:a:turms-im:turms:0.10.0-snapshot, indicating Turms version 0.10.0-SNAPSHOT and earlier. The Turms AI-Serving module is a Java-based component designed for AI tasks, including OCR, and the lack of pre-decompression checks makes it susceptible to decompression bomb attacks.
Know when Turms 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
AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Network-reachable OCR endpoint, no auth or user interaction, trivial crafted-image trigger; impact is availability-only (memory exhaustion), so C:N/I:N/A:H.
Primary rating from Vendor (mitre).
CVSS VectorVendor: mitre
DescriptionCVE.org
Turms AI-Serving module v0.10.0-SNAPSHOT and earlier contains an image decompression bomb denial of service vulnerability. The ExtendedOpenCVImage class in ai/djl/opencv/ExtendedOpenCVImage.java loads images using OpenCV's imread() function without validating dimensions or pixel count before decompression. An attacker can upload a specially crafted compressed image file (e.g., PNG) that is small when compressed but expands to gigabytes of memory when loaded. This causes immediate memory exhaustion, OutOfMemoryError, and service crash. No authentication is required if the OCR service is publicly accessible. Multiple requests can completely deny service availability.
Executive ViewAI
Turms AI-Serving installations that expose the OCR/image-upload capability can be remotely crashed by a malformed compressed image, creating an availability risk for any business workflow that depends on automated document or image processing. Publicly available exploit code exists and no vendor patch has been released, so affected teams cannot wait for a software fix and must reduce exposure through architecture and configuration changes. Leadership should treat this as a targeted service-availability issue concentrated in internet-facing OCR endpoints rather than a data-confidentiality breach.
No vendor-released patch identified at time of analysis. Interim mitigations: remove the OCR/image-upload endpoint from public exposure and place it behind authenticated internal access only; enforce maximum upload size and decoded pixel/dimension limits before OpenCV imread() processes any image; cap container and process memory and enable automatic restart; apply edge rate limiting and request quotas; monitor for abnormal memory growth or repeated service restarts.
Threat Intelligence Overview
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.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.
Affected Products (CPE)CVE.org
Authenticated users on Turms IM Server v0.10.0-SNAPSHOT and earlier can exploit a broken access control flaw (CWE-284) i
Cross-site request forgery in Turms Admin API through v0.10.0-SNAPSHOT allows remote attackers to cause an authenticated
Turms Server (turms-im:turms) v0.10.0-SNAPSHOT and earlier retains administrator passwords in cleartext in the rawPasswo
Improper file type validation in the Turms AI-Serving module (v0.10.0-SNAPSHOT and earlier) allows unauthenticated remot
NVD
CVE.org
EPSS
GitHub
Exploit-DB