Skip to main content
CVE Vulnerability Database
Vulnerability Database/CVE-2026-58014

CVE-2026-58014: Gnome Glib DOS Vulnerability

CVE-2026-58014 is a denial of service vulnerability in Gnome Glib caused by an off-by-one error in g_key_file_get_locale_string_list. This article covers technical details, affected versions, impact, and mitigation.

Published:

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
bash
# 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.

Default Legacy - Prefooter | Experience the World’s Most Advanced Cybersecurity Platform

Experience the Most Advanced Cybersecurity Platform

See how the world’s most intelligent, autonomous cybersecurity platform can protect your organization today and into the future.