
Cloud Vulnerability DB
A community-led vulnerabilities database
CVE-2026-88924 is a Time-of-Check Time-of-Use (TOCTOU) race condition vulnerability in the admin backend of gvfs (GNOME Virtual File System) that enables local privilege escalation to root. The privileged gvfsd-admin daemon uses a link-following chown() call on a pathname inside a user-controlled directory, which can be exploited by swapping the socket path with a symlink to a root-owned file. The vulnerability affects gvfs versions 1.48.1 and newer, and is confirmed to affect Red Hat Enterprise Linux products. It carries a CVSS v3.1 base score of 7.0 (High) (Red Hat Advisory, GitHub Advisory).
The root cause is CWE-367 (Time-of-check Time-of-use Race Condition): the gvfsd-admin daemon creates private D-Bus sockets and calls chown() on the socket pathname without using symlink-safe alternatives (e.g., fchown() on an open file descriptor). An attacker can use inotify to detect the moment the socket is created, then atomically replace the socket path with a symbolic link pointing to an arbitrary root-owned file such as /etc/pam.d/su. The daemon subsequently follows the symlink and reassigns ownership of the targeted file to the attacker's UID, enabling modification of critical system files. Exploitation requires local access, low privileges, and the ability to win a timing race, which increases attack complexity but does not prevent reliable exploitation (Red Hat Advisory, Red Hat Bugzilla).
Successful exploitation allows an authenticated local attacker to change the ownership of arbitrary root-owned files (e.g., /etc/pam.d/su, /etc/sudoers) to their own UID, enabling unrestricted modification of those files and achieving full local privilege escalation to root. This results in complete compromise of confidentiality, integrity, and availability on the affected system. Once root is obtained, an attacker can install persistent backdoors, exfiltrate sensitive data, disable security controls, or pivot to other systems on the network (Red Hat Advisory, GitHub Advisory).
The NVD SSVC assessment classifies exploitation status as "poc" (proof-of-concept), though Feedly's analysis of the referenced GNOME GitLab issue (https://gitlab.gnome.org/GNOME/gvfs/-/issues/875) found no confirmed working exploit code in the linked content. There is no evidence of in-the-wild exploitation at this time, and the CVE is not listed in the CISA KEV catalog. The EPSS score is 0.0, reflecting low current exploitation probability. Exploitation is not automatable due to the requirement for local access and the need to win a timing race condition (Red Hat Advisory, GitHub Advisory).
gvfsd-admin daemon can be started by the attacker's user account (check Polkit rules).inotify_add_watch() (or the inotifywait tool) to monitor the user-controlled directory where gvfsd-admin creates its private D-Bus socket files.gvfsd-admin to create a new D-Bus socket in the monitored directory (e.g., by invoking a GNOME admin file operation).inotify IN_CREATE event for the socket file, atomically replace the socket path with a symbolic link pointing to a target root-owned file (e.g., /etc/pam.d/su) using rename() or similar atomic operations.gvfsd-admin daemon calls chown() on the now-replaced pathname, following the symlink and changing ownership of the target root-owned file to the attacker's UID./etc/pam.d/su) transferred to the attacker's UID, write a modified version that grants root access (e.g., adding a permissive PAM rule).su) to gain a root shell (Red Hat Bugzilla, Red Hat Advisory)./etc/pam.d/su, /etc/sudoers, or other root-owned authentication configuration files (detectable via stat or file integrity monitoring tools like AIDE or Tripwire)./etc/pam.d/, /etc/, or similar privileged paths./var/log/audit/audit.log) showing chown syscalls on sensitive files initiated by the gvfsd-admin process where the target file is not a D-Bus socket./var/log/secure, /var/log/auth.log) showing unexpected privilege escalation events (e.g., su succeeding without password).gvfsd-admin or unexpected inotifywait processes running under a non-root user account.Red Hat recommends two interim mitigations while a patch is pending: (1) adjust Polkit rules to require password authentication before gvfsd-admin can be started, preventing unprivileged users from triggering the vulnerable code path; or (2) remove execute permissions from the gvfsd-admin binary (chmod 0 /usr/libexec/gvfsd-admin) to prevent execution entirely. Additionally, administrators should monitor system file ownership and integrity using tools like AIDE or auditd rules targeting chown syscalls on sensitive files. A patch is listed as available per the GitHub Advisory, but specific fixed version numbers have not yet been published in the referenced sources (Red Hat Advisory, GitHub Advisory).
Red Hat, as the CVE Naming Authority (CNA) for this vulnerability, has published a detailed advisory and credited the researcher "lain" for reporting the issue. The vulnerability was reported via Red Hat Bugzilla (Bug 2531456) and a corresponding GNOME GitLab issue (#875). No notable public researcher commentary or significant social media discussion has been identified at this time beyond standard CVE aggregator coverage (Red Hat Advisory, Red Hat Bugzilla).
Fix availability across major Linux distributions and their releases.
bionic (esm-infra)
gvfs
devel
gvfs
focal (esm-infra)
gvfs
jammy
gvfs
noble
gvfs
resolute
gvfs
xenial (esm-infra-legacy)
gvfs
Source: This report was generated using AI
Free Vulnerability Assessment
Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.
Get a personalized demo
"Best User Experience I have ever seen, provides full visibility to cloud workloads."
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
"We know that if Wiz identifies something as critical, it actually is."