CVE-2023-32611
Medium · 5.5CVSS
5.5
EPSS
0.4%
Published
Sep 14, 2023
CISA due date
—
Cloudanix analysis
A bug in a core system library can let specially made data files make programs using that library slow down or stop working.
- Exploitation
- Requires User Interaction
- Attacker needs
- User Interaction
- Complexity
- Moderate
- Impact
- Denial Of Service
- Component
- Library
- Class
- Denial of service
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
A crafted GVariant triggers excessive CPU processing during deserialization in GLib, resulting in denial of service via resource exhaustion.
Why it matters to the business
Applications built on GLib, including many desktop and system utilities, can become unresponsive or crash when processing untrusted input, disrupting user workflows and requiring restarts.
How an attack unfolds
An attacker creates a specially malformed GVariant structure and supplies it to a vulnerable GLib-based application through local file handling or input channels; the deserializer enters a prolonged computation loop, starving the system of CPU resources until the process is terminated or times out.
How to fix it
Upgrade gnome/glib (GIT) to the commit b5299ed2055aa3ccd628aceb016c1e9bda516e39 or later; rebuild and redeploy dependent applications after the update.
How to confirm the fix worked
Confirm the installed GLib version contains commit b5299ed2055aa3ccd628aceb016c1e9bda516e39; test deserialization of known-bad test cases to verify processing time remains bounded.
Typical attack path
- Identify a GLib-based application that accepts external GVariant data
- Craft a malicious GVariant payload designed to trigger the slowdown path
- Deliver the payload via local file, command-line argument, or IPC mechanism
- Trigger deserialization in the target process
- Observe sustained high CPU usage leading to application or system degradation
How to detect it
Review process accounting and system logs for sustained high CPU usage by GLib-based binaries during file or data ingestion; correlate with application crash or restart events.
What your security team should do
- Prioritize patching GLib in all environments that process untrusted GVariant data
- Monitor for high-CPU processes associated with GLib deserialization routines
- Restrict untrusted file or input sources to affected applications until patched
The record
A flaw was found in GLib. GVariant deserialization is vulnerable to a slowdown issue where a crafted GVariant can cause excessive processing, leading to denial of service.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| AlmaLinux:9 | glib2 | 0 | 2.68.4-11.el9 |
| AlmaLinux:9 | glib2-devel | 0 | 2.68.4-11.el9 |
| AlmaLinux:9 | glib2-doc | 0 | 2.68.4-11.el9 |
| AlmaLinux:9 | glib2-static | 0 | 2.68.4-11.el9 |
| AlmaLinux:9 | glib2-tests | 0 | 2.68.4-11.el9 |
| AlmaLinux:9 | mingw32-glib2 | 0 | 2.78.0-1.el9 |
| AlmaLinux:9 | mingw32-glib2-static | 0 | 2.78.0-1.el9 |
| AlmaLinux:9 | mingw64-glib2 | 0 | 2.78.0-1.el9 |
| AlmaLinux:9 | mingw64-glib2-static | 0 | 2.78.0-1.el9 |
| Debian:10 | glib2.0 | 0 | 2.58.3-2+deb10u5 |
| Debian:11 | glib2.0 | 0 | 2.66.8-1+deb11u1 |
| Debian:12 | glib2.0 | 0 | 2.74.4-1 |
| Debian:13 | glib2.0 | 0 | 2.74.4-1 |
| Red Hat:enterprise_linux:9::appstream | glib2 | 0 | 0:2.68.4-11.el9 |
| Red Hat:enterprise_linux:9::appstream | glib2-debuginfo | 0 | 0:2.68.4-11.el9 |
| Red Hat:enterprise_linux:9::appstream | glib2-debugsource | 0 | 0:2.68.4-11.el9 |
| Red Hat:enterprise_linux:9::appstream | glib2-devel | 0 | 0:2.68.4-11.el9 |
| Red Hat:enterprise_linux:9::appstream | glib2-devel-debuginfo | 0 | 0:2.68.4-11.el9 |
| Red Hat:enterprise_linux:9::appstream | glib2-doc | 0 | 0:2.68.4-11.el9 |
| Red Hat:enterprise_linux:9::appstream | glib2-static | 0 | 0:2.68.4-11.el9 |
| Red Hat:enterprise_linux:9::appstream | glib2-tests | 0 | 0:2.68.4-11.el9 |
| Red Hat:enterprise_linux:9::appstream | glib2-tests-debuginfo | 0 | 0:2.68.4-11.el9 |
| Red Hat:enterprise_linux:9::baseos | glib2 | 0 | 0:2.68.4-11.el9 |
| Red Hat:enterprise_linux:9::baseos | glib2-debuginfo | 0 | 0:2.68.4-11.el9 |
| Red Hat:enterprise_linux:9::baseos | glib2-debugsource | 0 | 0:2.68.4-11.el9 |
| Red Hat:enterprise_linux:9::baseos | glib2-devel | 0 | 0:2.68.4-11.el9 |
| Red Hat:enterprise_linux:9::baseos | glib2-devel-debuginfo | 0 | 0:2.68.4-11.el9 |
| Red Hat:enterprise_linux:9::baseos | glib2-doc | 0 | 0:2.68.4-11.el9 |
| Red Hat:enterprise_linux:9::baseos | glib2-static | 0 | 0:2.68.4-11.el9 |
| Red Hat:enterprise_linux:9::baseos | glib2-tests | 0 | 0:2.68.4-11.el9 |
| Red Hat:enterprise_linux:9::baseos | glib2-tests-debuginfo | 0 | 0:2.68.4-11.el9 |
| Red Hat:enterprise_linux:9::crb | glib2 | 0 | 0:2.68.4-11.el9 |
| Red Hat:enterprise_linux:9::crb | glib2-debuginfo | 0 | 0:2.68.4-11.el9 |
| Red Hat:enterprise_linux:9::crb | glib2-debugsource | 0 | 0:2.68.4-11.el9 |
| Red Hat:enterprise_linux:9::crb | glib2-devel | 0 | 0:2.68.4-11.el9 |
| Red Hat:enterprise_linux:9::crb | glib2-devel-debuginfo | 0 | 0:2.68.4-11.el9 |
| Red Hat:enterprise_linux:9::crb | glib2-doc | 0 | 0:2.68.4-11.el9 |
| Red Hat:enterprise_linux:9::crb | glib2-static | 0 | 0:2.68.4-11.el9 |
| Red Hat:enterprise_linux:9::crb | glib2-tests | 0 | 0:2.68.4-11.el9 |
| Red Hat:enterprise_linux:9::crb | glib2-tests-debuginfo | 0 | 0:2.68.4-11.el9 |
| Red Hat:enterprise_linux:9::crb | mingw-glib2 | 0 | 0:2.78.0-1.el9 |
| Red Hat:enterprise_linux:9::crb | mingw32-glib2 | 0 | 0:2.78.0-1.el9 |
| Red Hat:enterprise_linux:9::crb | mingw32-glib2-debuginfo | 0 | 0:2.78.0-1.el9 |
| Red Hat:enterprise_linux:9::crb | mingw32-glib2-static | 0 | 0:2.78.0-1.el9 |
| Red Hat:enterprise_linux:9::crb | mingw64-glib2 | 0 | 0:2.78.0-1.el9 |
| Red Hat:enterprise_linux:9::crb | mingw64-glib2-debuginfo | 0 | 0:2.78.0-1.el9 |
| Red Hat:enterprise_linux:9::crb | mingw64-glib2-static | 0 | 0:2.78.0-1.el9 |
| SUSE:Enterprise Storage 6 | glib2 | 0 | 2.54.3-150000.4.29.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP1-LTSS | glib2 | 0 | 2.54.3-150000.4.29.1 |
| SUSE:Linux Enterprise Server 15 SP1-LTSS | glib2 | 0 | 2.54.3-150000.4.29.1 |
| SUSE:Linux Enterprise Server for SAP Applications 15 SP1 | glib2 | 0 | 2.54.3-150000.4.29.1 |
| Ubuntu:20.04:LTS | glib2.0 | 0 | 2.64.6-1~ubuntu20.04.6 |
| Ubuntu:22.04:LTS | glib2.0 | 0 | 2.72.4-0ubuntu2.2 |
| Ubuntu:Pro:14.04:LTS | glib2.0 | 0 | 2.40.2-0ubuntu1.1+esm6 |
| Ubuntu:Pro:16.04:LTS | glib2.0 | 0 | 2.48.2-0ubuntu4.8+esm3 |
| Ubuntu:Pro:18.04:LTS | glib2.0 | 0 | 2.56.4-0ubuntu0.18.04.9+esm3 |
Related vulnerabilities
- CVE-2025-13601 A heap-based buffer overflow problem was found in glib through an incorrect calculation… Also affects glib2
- CVE-2024-52533 gio/gsocks4aproxy.c in GNOME GLib before 2.82.1 has an off-by-one error and resultant… Also affects glib2
- CVE-2024-34397 An issue was discovered in GNOME GLib before 2.78.5, and 2.79.x and 2.80.x before 2.80.1. Also affects glib2
- CVE-2026-113795 pypdf is a free and open-source pure-python PDF library. CWE-400
- CVE-2026-83400 Vulnerability in the Oracle Java SE, Oracle GraalVM for JDK, Oracle GraalVM Enterprise… CWE-400
- CVE-2026-112400 Pillow is a Python imaging library. CWE-400
- CVE-2026-111766 markdown-it is a Markdown parser. CWE-400
- CVE-2026-111759 markdown-it is a Markdown parser. CWE-400