CVE-2026-58014 Overview
CVE-2026-58014 is an off-by-one error [CWE-193] in the GNOME GLib library. The flaw resides in the g_key_file_get_locale_string_list function within gkeyfile.c. Parsing a key file that contains an empty value triggers a one-byte out-of-bounds access. When the access crosses a page boundary, it causes a denial of service through a process crash. GLib underpins the GNOME desktop and countless Linux applications, making the attack surface wide across Red Hat Enterprise Linux 6 through 10 and upstream GLib distributions.
Critical Impact
A remote, unauthenticated attacker can deliver a crafted key file that causes an out-of-bounds read and application crash, resulting in denial of service on any process that parses untrusted GLib key files.
Affected Products
- GNOME GLib (upstream, all versions prior to the fixed release)
- Red Hat Enterprise Linux 6, 7, 8, 9, and 10
- Downstream Linux distributions and applications linking against vulnerable GLib
Discovery Timeline
- 2026-06-30 - CVE-2026-58014 published to NVD
- 2026-07-01 - Last updated in NVD database
Technical Details for CVE-2026-58014
Vulnerability Analysis
The vulnerability is an off-by-one error [CWE-193] in GLib's key file parser. GLib exposes GKeyFile, an INI-style configuration parser used by GNOME components, system services, and third-party applications. The g_key_file_get_locale_string_list function retrieves localized string list values from a parsed key file.
When the parser processes an entry containing an empty value, index calculations for the value buffer walk one byte past the allocated region. This produces a one-byte out-of-bounds read. In most heap layouts the extra byte falls within an allocated page and the fault goes unnoticed. When the trailing byte lands on a page boundary that is not mapped, the process receives a SIGSEGV and terminates.
Root Cause
The root cause is incorrect length arithmetic in the value list parser. The function computes a terminator or delimiter position without accounting for the zero-length value case. The result is a read at buffer[length] where length equals the allocation size, violating C string boundary semantics.
Attack Vector
Exploitation requires an attacker to deliver a crafted key file to any application that calls g_key_file_get_locale_string_list. The attack vector is network-reachable in scenarios where applications parse remote configuration files, .desktop entries, or user-uploaded settings. Authentication and user interaction are not required. The primary impact is availability loss, though the out-of-bounds read may also expose adjacent memory bytes in some builds.
No public proof-of-concept exploit has been observed. The vulnerability is not listed in the CISA Known Exploited Vulnerabilities catalog.
Detection Methods for CVE-2026-58014
Indicators of Compromise
- Unexpected SIGSEGV crashes in processes linking libglib-2.0 while parsing key files or .desktop files
- Core dumps referencing g_key_file_get_locale_string_list or g_key_file_parse_value_as_string in the call stack
- Malformed .desktop, .ini, or GLib key files containing keys with empty locale-tagged values arriving from untrusted sources
Detection Strategies
- Inventory installed GLib package versions across Linux hosts and compare against fixed versions listed in the Red Hat advisory
- Monitor application logs for repeated GLib parser errors or crash-restart loops in services that consume configuration files
- Inspect key files ingested from user or network sources for entries matching the pattern key[locale]= followed by an empty value
Monitoring Recommendations
- Enable systemd core dump collection and alert on repeated crashes in GLib-linked processes
- Track file integrity on directories containing .desktop files, MIME associations, and application configuration paths
- Correlate crash telemetry with recent file writes to configuration directories to identify targeted delivery attempts
How to Mitigate CVE-2026-58014
Immediate Actions Required
- Apply the GLib security update from your Linux distribution as soon as it becomes available
- Prioritize patching on hosts that parse externally supplied key files, including desktop systems and configuration management endpoints
- Restrict write access to directories from which applications load .desktop and GLib key files
Patch Information
Red Hat has published advisory guidance at the Red Hat CVE-2026-58014 Advisory. Upstream tracking is available in the GNOME GLib Issue #3930 and the Red Hat Bug Report #2492255. Install the fixed GLib package for your operating system release and restart services that link the library.
Workarounds
- Avoid processing GLib key files from untrusted network sources until patches are applied
- Run applications that parse untrusted key files under sandboxing frameworks such as bwrap, firejail, or systemd unit hardening options like MemoryDenyWriteExecute and ProtectSystem
- Validate key file contents with an allowlist parser before passing them to GLib in high-risk services
# Verify installed GLib version and apply the vendor update on Red Hat Enterprise Linux
rpm -q glib2
sudo dnf update glib2
sudo systemctl restart <affected-service>
Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

