CVE-2026-56788: RTKLIB Out-of-Bounds Read in RINEX Processing
RTKLIB, an open-source GNSS/GPS processing toolkit, contains a flaw that crashes the application when it encounters RINEX observation files with unrecognized code types. An attacker can craft malicious RINEX files that trigger the crash and potentially expose sensitive data from the application's memory. The vulnerability affects versions through 2.4.3 and requires user interaction—someone must open or process the malicious file—but no special privileges are needed.
Source data · NVD / CISA · public domain
- CVSS
- 3.1 · 4.4 MEDIUM · CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:L/I:N/A:L
- Weaknesses (CWE)
- CWE-125
- Affected products
- 1 configuration(s)
- Published / Modified
- 2026-06-25 / 2026-07-14
NVD description (verbatim)
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.
3 reference(s) · View on NVD →
SEC.co analysis · AI-assisted, reviewed against source
Technical summary
CVE-2026-56788 is an out-of-bounds read vulnerability (CWE-125) in the getcodepri function of RTKLIB. The function fails to validate observation codes present in RINEX files before indexing into the codepris lookup table. When an unrecognized code is encountered, negative array indexing occurs, reading from memory locations outside the intended buffer. This results in denial of service through reliable application crashes and potential information disclosure of adjacent global data structures in memory.
Business impact
Organizations relying on RTKLIB for geodetic surveys, GNSS data processing, or position analysis face operational disruption if attackers distribute crafted RINEX files through legitimate data sharing channels. The memory disclosure risk, though limited by the local attack vector, could expose coordinate data, timestamps, or other adjacent global state. For survey firms, construction, agriculture, or research teams using RTKLIB in production workflows, denial of service translates to project delays and rework.
Affected systems
RTKLIB through version 2.4.3 is affected. This includes standalone applications, embedded integrations in surveying software, and command-line tools that parse RINEX observation files. Any deployment processing untrusted or semi-trusted RINEX input is at risk. The vulnerability does not require network access or elevated privileges to trigger.
Exploitability
Exploitability is straightforward but constrained by attack surface. An attacker must craft a RINEX observation file containing unrecognized code types and convince or trick a user into processing it with a vulnerable RTKLIB version. No authentication, network access, or privilege escalation is required. The reliability of the crash makes denial of service predictable. However, the requirement for user interaction (UI:R in CVSS) and local system access (AV:L) limits the attack scope in most environments.
Remediation
Upgrade RTKLIB to a patched version that validates observation codes before table lookup. Verify against the official RTKLIB project repository for the exact patched version number and release date. Until patching is feasible, restrict processing of RINEX files to trusted sources and educate users not to open RINEX files from untrusted channels.
Patch guidance
Consult the RTKLIB project repository (GitHub or official source) for the earliest available patch. Apply updates to all systems and integrations using RTKLIB, including surveying software, embedded tools, and data processing pipelines. Test patched versions against your standard RINEX workflows to ensure compatibility before full deployment.
Detection guidance
Monitor for repeated application crashes in RTKLIB or dependent tools when processing RINEX files, especially those from external or newly introduced sources. Log RINEX file sources and validate file integrity where possible. Memory monitoring tools may detect the out-of-bounds read behavior in controlled environments. Alert on error messages related to unrecognized observation codes.
Why prioritize this
This vulnerability merits timely but not emergency remediation. The CVSS score of 4.4 (MEDIUM) reflects the dual impact of denial of service and limited information disclosure, offset by the local and user-interaction constraints. The vulnerability is not tracked as an actively exploited KEV, suggesting real-world attacks are not yet widespread. However, denial of service in critical surveying or GNSS workflows justifies prompt patching, and the memory disclosure aspect warrants proactive attention for teams handling sensitive coordinate or timing data.
Risk score, explained
The CVSS 3.1 score of 4.4 is derived from: local attack vector (AV:L), low attack complexity (AC:L), no privilege requirement (PR:N), required user interaction (UI:R), unchanged scope (S:U), low confidentiality impact (C:L) from potential memory disclosure, no integrity impact (I:N), and low availability impact (A:L) from denial of service. The score reflects a real but limited threat; the user-interaction and local-access requirements prevent widespread remote exploitation.
Frequently asked questions
Can this vulnerability be exploited remotely?
No. The attack requires local file system access and user interaction to process a crafted RINEX file. An attacker cannot trigger the vulnerability over a network without first convincing a user to download and open a malicious RINEX file.
What data can be disclosed from the memory leak?
The out-of-bounds read accesses adjacent global data in memory near the codepris table. This may include RINEX parsing state, coordinate buffers, or other global structures. The exact content depends on memory layout and runtime state, but sensitive GNSS data or timestamps could potentially be exposed.
Are there workarounds if I cannot patch immediately?
Yes. Restrict RINEX file processing to trusted sources, validate files before opening them if possible, and educate users not to open RINEX attachments or files from untrusted channels. Monitor for application crashes and keep backups of critical GNSS data.
Does this affect all RTKLIB users equally?
No. Users processing only trusted, in-house RINEX files face minimal risk. Teams receiving RINEX files from external partners, public databases, or third-party sources face greater exposure. Integrated software using RTKLIB may have different risk profiles depending on how they validate input.
This analysis is based on publicly available vulnerability data as of the publication date. Patch availability, version details, and vendor advisories should be verified directly with the RTKLIB project before remediation. SEC.co does not provide warranty or guarantee regarding the completeness or currency of this information. Organizations must conduct independent risk assessment relative to their infrastructure and data sensitivity. Source: NVD (public-domain), retrieved 2026-08-04. Analysis generated by SEC.co (claude-haiku-4-5).
Related vulnerabilities
- CVE-2020-9711MEDIUMAdobe Acrobat Reader Out-of-Bounds Read Memory Disclosure
- CVE-2020-9713MEDIUMAdobe Acrobat Reader Memory Disclosure Vulnerability
- CVE-2025-15661MEDIUMlibssh2 Out-of-Bounds Heap Read in SFTP Symlink Handling
- CVE-2025-70101MEDIUMlwext4 1.0.0 Out-of-Bounds Read Denial of Service
- CVE-2026-0127MEDIUMAndroid Out-of-Bounds Read in Communication Processor – Impact & Patch Guidance
- CVE-2026-0128MEDIUMAndroid RTCP Out-of-Bounds Read Information Disclosure
- CVE-2026-0136MEDIUMAndroid Modem Out-of-Bounds Read Denial of Service
- CVE-2026-0140MEDIUMAndroid RTP Integer Overflow Information Disclosure Vulnerability