Eclipse OMR CVE-2025-14549
MEDIUMAttack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessReach charset-translation code path
-
ExploitSubmit input with embedded NUL byte
-
ExecutionOptimizer truncates output, triggers buffer over-read
-
ImpactAdjacent memory disclosed or process destabilized
Vulnerability Assessment
| Weakness |
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Bounds checking, read limits
MITRE ATT&CK
1 technique across 1 tactic: Collection The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires all of the following concrete conditions: the target must run Eclipse OpenJ9 as a consumer of Eclipse OMR version 0.7.0 or later; it must execute on IBM Z (s390x) processors, since the faulty optimization is enabled only there; and attacker-influenced data must pass through the Latin-compatible-charset (UTF-8, ISO8859-1, ASCII) to IBM-1047/037 EBCDIC translation sequence while containing at least one NUL (0x00) byte, which is what triggers the output truncation and subsequent buffer over-read. Limiting factors that reduce realistic risk: non-Z platforms are unaffected, non-OpenJ9 OMR consumers may not hit this path, and impact is bounded to limited memory over-read (information disclosure / instability) rather than code execution; authentication requirements are not independently confirmed beyond the vendor's PR:N claim. |
| Impact | This is a moderate, not top-tier, priority. The vendor CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:N/UI:N) rates every impact dimension as Low (VC:L/VI:L/VA:L) for a base score of 6.9, which is consistent with a CWE-125 out-of-bounds read: the primary consequence is limited information disclosure and possible instability, not full compromise. No EPSS score, no CISA KEV listing, and no public exploit code were provided, so there is no public exploit identified at time of analysis - the only code artifact supplied is the vendor fix (PR 8073), not a weaponized POC. The network attack vector is plausible because untrusted data can reach the vulnerable charset-translation path, but real-world reachability is heavily gated by preconditions the raw CVSS score does not capture: the defect only manifests in Eclipse OpenJ9 consumers of OMR running on IBM Z (s390x) processors with the specific array-translate optimization enabled. One signal to reconcile explicitly: the CVSS vector asserts AV:N/PR:N (remote, unauthenticated), yet the bug is a compiler-optimization flaw triggered by specific data content (NUL bytes in a Latin-to-IBM-1047/037 translation), so exploitability depends far more on whether attacker-influenced data flows through that path than on network position - verify data-flow exposure in your deployment rather than treating it as trivially remote. |
| Exploit ScenarioDerived | An attacker supplies input containing an embedded NUL (0x00) byte to an application running on Eclipse OpenJ9 on an IBM Z system, where that input is converted from a Latin-compatible charset (UTF-8/ISO8859-1/ASCII) to IBM-1047/037 EBCDIC. The optimized translation truncates the output at the NUL and triggers a buffer over-read, potentially leaking adjacent heap memory into the result or destabilizing the process. No public exploit code exists; this is an inferred scenario grounded in the CWE-125 over-read described in the advisory. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 14, 2026
Out-of-bounds read in Eclipse OMR 0.7.0 and later can occur when the compiler optimization for Latin-compatible charset to IBM-1047/037 EBCDIC translation mishandles NUL (0x00) bytes on IBM Z (s390x). The output byte array is truncated at the first NUL, discarding it and subsequent characters, so downstream code may read beyond the intended buffer; impact is bounded to limited information disclosure and possible instability, not code execution. This affects Eclipse OpenJ9 consumers of OMR on Z processors, non-Z platforms are not exposed, no public exploit has been identified at time of analysis, and the vendor-released fix is Eclipse OMR 0.8.0. The CVSS vector indicates PR:N (unauthenticated), and overall priority is moderate given the specific platform, data, and NUL-byte prerequisites.
RemediationAI
Upgrade to Eclipse OMR 0.8.0 or later; this is the vendor-released patch version fixing the issue. The upstream fix is in PR https://github.com/eclipse-omr/omr/pull/8073, which corrects the terminator-character hint handling. If upgrading is not immediately possible on IBM Z, reduce exposure by avoiding or sanitizing attacker-controlled data that flows through Latin-compatible charset (UTF-8, ISO8859-1, ASCII) to IBM-1047/037 EBCDIC conversions when NUL bytes may be present, and restrict untrusted input paths that exercise this translation. Disabling the affected optimization in OMR/OpenJ9 builds can eliminate the over-read path but may reduce runtime performance; non-Z platforms do not require this mitigation based on the assessed exploitation conditions.
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
Eclipse OMR provides compiler and runtime components consumed by Eclipse OpenJ9. The flaw resides in compiler/optimizer/ValuePropagationCommon.cpp in generateArrayTranslateNode(), where an array-translate optimization sets the terminator character node hint flag. The patch changes setTermCharNodeIsHint(false) to setTermCharNodeIsHint(isEncodeFromLatin1). On IBM Z, this optimization is enabled for OpenJ9 and handles conversion from Latin-compatible charsets (UTF-8, ISO8859-1, ASCII, etc.) to EBCDIC IBM-1047/037. Because NUL bytes are mishandled, the translated output is shortened at the first NUL and all following bytes are discarded, violating expected buffer length and enabling a CWE-125 out-of-bounds read. CPE cpe:2.3:a:eclipse:omr:0.7.0:*:*:*:*:*:*:* identifies the affected baseline; the faulty optimization is tied to s390x IBM Z, so other architectures generally do not trigger it. The independent assessment rates this CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L, consistent with remote triggering but limited confidentiality, integrity, and availability impact.
Know when Omr 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
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:L/VA:L/SC:L/SI:L/SA:L
Untrusted data reaching the translation path makes it network-exploitable without auth (AV:N/PR:N); over-read yields limited disclosure, output corruption, and possible crash, so C/I/A all Low, scope unchanged.
Primary rating from Vendor (eclipse).
CVSS VectorVendor: eclipse
DescriptionCVE.org
In the Eclipse OMR compiler component, since release 0.7.0, an optimization enabled for Eclipse OpenJ9 consumers of OMR on Z processors incorrectly handles NUL (0x00) characters during the Latin-compatible charset (UTF-8, ISO8859-1, ASCII, etc) to IBM-1047/037 translation sequence. This can cause the output byte array to be truncated, discarding the first NUL byte and all subsequent characters, and thereby exposing a possible buffer over-read problem. This issue is fixed in Eclipse OMR version 0.8.0.
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
A buffer overflow occurs when a program writes more data to a memory buffer than it was allocated to hold, causing the excess data to spill into adjacent memory regions.
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
Affected Products (CPE)CVE.org
Buffer size miscalculation in Eclipse OMR port library since 0.2.0. An API function returning processor feature names ha
Prior to 0.1, AIX builds of Eclipse OMR contain unused RPATHs which may facilitate code injection and privilege elevatio
Prior to 0.1, all builds of Eclipse OMR contain a bug where the loop versioner may fail to privatize a value that is pul
In Eclipse OMR versions 0.2.0 to 0.4.0, some of the z/OS atoe print functions use a constant length buffer for string co
In Eclipse OMR, from the initial contribution to version 0.4.0, some OMR internal port library and utilities consumers o
NVD
CVE.org
EPSS
GitHub
Exploit-DB