Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessCraft RINEX file with unknown observation codes
-
DeliveryDeliver file to target system or upload to processing pipeline
-
ExploitUser or automation triggers RTKLIB processing
-
Executiongetcodepri encounters unrecognized code
-
PersistNegative array index into codepris table
-
ImpactOut-of-bounds read causes crash (DoS) or leaks adjacent global memory
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 that a user or automated process actively open or pass a crafted RINEX file to an RTKLIB-linked application - confirmed by UI:P in the CVSS 4.0 vector, meaning passive user interaction (e.g., opening a file or triggering a processing pipeline) is mandatory. The attack vector is local (AV:L), meaning the malicious file must be present on the local filesystem or accessible to the RTKLIB process; remote network exploitation is not indicated. No authentication or privileges are required (PR:N) once file access is established. The specific triggering condition is the presence of unrecognized RINEX observation codes in the input file - standard, well-formed RINEX files with known observation types do not trigger the flaw. Limiting factors: the local file processing requirement eliminates unauthenticated remote attack paths; a user or pipeline must explicitly process the crafted file; and exploitation is constrained to the RTKLIB process memory space with no subsequent-system scope change. Automated RINEX ingestion pipelines consuming externally sourced or user-uploaded data files represent the highest-risk deployment scenario. |
| Impact | The CVSS 4.0 base score of 4.8 reflects a moderate-severity local vulnerability with user interaction required (AV:L/UI:P). The attack surface is constrained: exploitation requires a user or automated process to open or pass a crafted RINEX file to RTKLIB. Confidentiality impact is low (VC:L), limited to potential disclosure of adjacent global memory; integrity is unaffected (VI:N); availability impact is low (VA:L), manifesting as a reliable crash. No subsequent-system impact is indicated (SC:N/SI:N/SA:N). A publicly available PoC (GitHub issue #797) lowers the exploitation barrier, but the local/user-interaction constraint significantly narrows the real-world attack surface compared to network-exploitable flaws. EPSS data was not provided, preventing a probability-of-exploitation comparison. The CVE is not in the CISA KEV catalog, suggesting no confirmed in-the-wild exploitation at time of analysis. The primary realistic risk is in automated RINEX ingestion pipelines processing externally sourced data files - interactive user workflows are lower risk due to the UI:P constraint. |
| Exploit ScenarioDerived | An attacker crafts a RINEX observation file containing deliberately unrecognized observation type codes and delivers it to a target environment where RTKLIB processes external RINEX data - such as an RTK positioning service ingesting uploaded survey files or an automated geodetic pipeline. When the file is processed, getcodepri computes a negative array index into codepris, triggering an out-of-bounds read that crashes the application and may disclose adjacent global memory contents to the attacker. A public proof-of-concept is available at the upstream GitHub issue tracker, reducing the skill required to reproduce the crash. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Jun 25, 2026
Out-of-bounds read in RTKLIB through 2.4.3 exposes users to denial of service and potential memory disclosure when processing maliciously crafted RINEX observation files. The getcodepri function fails to validate unrecognized observation codes, performing negative array indexing into the codepris table - producing reliable crashes and leaking adjacent global data segments. A publicly available proof-of-concept exists via the upstream GitHub issue tracker; this CVE is not listed in the CISA KEV catalog, and no EPSS data was provided in available intelligence.
RemediationAI
No vendor-released patch has been identified at time of analysis - the upstream fix reference points to a GitHub issue (#797) rather than a tagged release, so a released patched version is not independently confirmed. Users should monitor the RTKLIB repository at https://github.com/tomojitakasu/RTKLIB for a new tagged release beyond 2.4.3 that addresses this issue. As immediate compensating controls: disable or restrict RTKLIB-based tools from ingesting RINEX files sourced from untrusted or external parties - this is the most effective near-term mitigation, with the trade-off of disrupting automated external data feeds. Implement upstream input validation to reject RINEX files containing non-standard observation codes before they reach the getcodepri parser. Sandbox RTKLIB processes using OS-level isolation (containers, seccomp profiles, AppArmor policies) to limit blast radius of a crash or memory read - this does not prevent exploitation but reduces impact. Monitoring process crashes on RTKLIB deployments can serve as an exploitation indicator.
Affected VersionsENISA
Affected Packages
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
RTKLIB is an open-source GNSS (GPS/GNSS) signal processing library developed by Tomoji Takasu, widely used in RTK positioning, geodetic survey pipelines, and navigation research. RINEX (Receiver Independent Exchange Format) is the de facto standard for exchanging raw satellite observation data, and RTKLIB's getcodepri function is responsible for mapping RINEX observation code strings to internal priority indices in the codepris lookup table. When an unrecognized observation type is encountered, the function computes a negative index rather than returning a safe default, triggering a CWE-125 (Out-of-Bounds Read) condition. The CPE cpe:2.3:a:tomojitakasu:rtklib:*:*:*:*:*:*:*:* covers all versions through 2.4.3 without exception. The root cause is absent input validation on the observation code lookup path - a classic array indexing flaw in a C-based parser.
Know when Rtklib 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:L/AC:L/AT:N/PR:N/UI:P/VC:L/VI:N/VA:L/SC:N/SI:N/SA:N
Local file processing with mandatory user interaction, no privileges required, low confidentiality from adjacent memory read, low availability from reliable crash, no integrity impact.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
DescriptionCVE.org
RTKLIB through 2.4.3 contains an out-of-bounds read vulnerability in getcodepri function when processing unrecognized RINEX observation codes, allowing attackers to trigger denial of service. Crafted RINEX files with unknown observation types cause negative array indexing into the codepris table, resulting in reliable crashes and potential memory disclosure of adjacent global data.
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.
Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.
Out-of-bounds write in RTKLIB's decode_type1033 function affects all versions through 2.4.3, where unclamped length coun
Denial-of-service memory corruption in RTKLIB through version 2.4.3 lets an attacker crash GNSS post-processing applicat
Off-by-one out-of-bounds read in RTKLIB's decode_ssr3 function (src/rtcm3.c:1446) allows unauthenticated remote attacker
EUVD-2026-39530
GHSA-m65p-fp8q-q43h
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB