CT
CyberTimes
← Back to Threat Watch
cve 2026 3888ubuntusnapdCVE-2026-3888March 18, 2026 · CyberTimes Security Team

CVE-2026-3888: Ubuntu Default Installation Flaw Lets Unprivileged Attackers Escalate to Root via systemd Cleanup Timing

Qualys Threat Research Unit has disclosed CVE-2026-3888, a high-severity local privilege escalation vulnerability affecting default installations of Ubuntu Desktop 24.04 and later. The flaw allows an

Severity🟠 HIGH
CVSS Score7.8/10
ExploitedNo
Fix StatusPatch available
Default installations of Ubuntu Desktop 24.04 LTS and later where snapd is installed and systemd-tmpfiles automatic cleanup is enabled — which is true of essentially every default Ubuntu Desktop installation. Also affects Ubuntu 16.04 LTS, 18.04 LTS, 20.04 LTS, and 22.04 LTS according to CVE records. Any local user with low privileges on an unpatched Ubuntu system is a potential attacker.

Qualys Threat Research Unit has disclosed CVE-2026-3888, a high-severity local privilege escalation vulnerability affecting default installations of Ubuntu Desktop 24.04 and later. The flaw allows an unprivileged local attacker — someone with only a standard user account — to escalate their privileges to full root access by exploiting an unintended interaction between two standard Ubuntu system components: snap-confine, the setuid root binary responsible for building snap application sandboxes, and systemd-tmpfiles, the daemon responsible for automatically cleaning up temporary files and directories. Ubuntu has released patch USN-8102-1 and users should update immediately. The vulnerability affects every default Ubuntu Desktop installation because both components ship and run enabled by default.


Affected products

  • ·Ubuntu Desktop 24.04 LTS — default installation
  • ·Ubuntu Desktop 25.10 — mitigated prior to release by reverting default rm to GNU coreutils
  • ·Ubuntu 16.04 LTS, 18.04 LTS, 20.04 LTS, 22.04 LTS — affected per CVE record
  • ·snapd — all versions prior to the patch on affected Ubuntu releases
  • ·uutils coreutils — the Rust rewrite of GNU coreutils, separate race condition vulnerability discovered and mitigated before Ubuntu 25.10 release

How to Fix

Step-by-step remediation

Ubuntu has released security notice USN-8102-1 addressing CVE-2026-3888. The fix is a standard package update. Open a terminal and run sudo apt update && sudo apt upgrade — this will pull and install the patched snapd version. Confirm the update is applied by running snap version and cross-referencing the snapd version number against USN-8102-1 on Ubuntu's security notices page. Reboot after upgrading to ensure all updated components are fully active. For Ubuntu 25.10 users, the vulnerability was already mitigated before public release — the default rm command was reverted to GNU coreutils as an immediate measure, and upstream fixes have since been applied to the uutils repository. Apply all pending security updates regardless. For enterprise and institutional Ubuntu Desktop deployments, prioritise this patch for any shared or multi-user systems. The 10 to 30 day uptime window means systems that have been running continuously without a reboot since before the patch are the most exposed — patch and reboot promptly.


What happened

CVE-2026-3888 is a privilege chaining vulnerability — it exploits the interaction between two trusted, deeply privileged system components rather than a bug in a single binary. Snap-confine is the setuid root binary that builds and enforces the sandboxed execution environment for every snap application on Ubuntu. It handles mount namespace isolation, cgroup enforcement, and AppArmor policy loading. Because it runs as root to build these sandboxes, it is a high-value target — anything that can manipulate what snap-confine mounts or executes gains root-level code execution. systemd-tmpfiles is the service that manages volatile directories including /tmp. On Ubuntu 24.04, it is configured to automatically delete stale data from /tmp after 30 days of system uptime. On later Ubuntu versions, this window is 10 days. One of the directories snap-confine requires to function correctly is /tmp/.snap. When systemd-tmpfiles deletes that directory after its configured cleanup window, snap-confine's expected environment no longer exists. The attack exploits exactly this gap. An attacker with a low-privilege user account waits for the systemd-tmpfiles cleanup cycle to delete /tmp/.snap — 10 to 30 days of uptime depending on the Ubuntu version. Once the directory is deleted, the attacker immediately recreates it and populates it with malicious payloads under their control. On the next occasion that a snap application sandbox is initialised, snap-confine — running as root — blindly bind-mounts the attacker-controlled contents of that directory into the privileged execution context, granting the attacker arbitrary code execution as root.

Real-World Impact

The attack requires only a local user account with standard low privileges — no administrator access, no sudo rights, and no user interaction from any other person on the system. The CVSS vector AV:L/AC:H/PR:L/UI:N/S:C/C:H/I:H/A:H reflects this: local access only, but high impact across confidentiality, integrity, and availability with a changed scope — meaning a successful exploit impacts resources beyond the vulnerable component itself. The Attack Complexity is rated High due to the time-delay mechanism — the attacker must wait for the cleanup cycle — but this is not a meaningful barrier in practice for a determined attacker with persistent local access. In multi-user environments, shared servers, developer workstations, university systems, or any Ubuntu Desktop deployment where multiple users have shell access, any one of those low-privilege users can exploit this flaw to become root on the entire system. The scope of affected systems is broad because snapd is installed and enabled in every default Ubuntu Desktop installation since Ubuntu 16.04 — this is not an optional or obscure component. Beyond CVE-2026-3888, Qualys also discovered a separate race condition in the uutils coreutils package — the Rust rewrite of standard GNU utilities — that allowed an unprivileged user to replace directory entries with symlinks during root-owned cron executions targeting /etc/cron.daily/apport. This was mitigated before the Ubuntu 25.10 release by reverting the default rm command to GNU coreutils.

Technical Details

The vulnerability was discovered by Qualys Threat Research Unit and disclosed on March 17, 2026. The root mechanism is snapd incorrectly handling operations in snap's private /tmp directory when systemd-tmpfiles is configured to automatically clean it up. The full attack chain involves waiting for the systemd-tmpfiles cleanup cycle to delete /tmp/.snap, then recreating the directory with attacker-controlled contents before snap-confine next initialises a snap sandbox and bind-mounts the directory as root. The CVSS 3.1 vector is AV:L/AC:H/PR:L/UI:N/S:C/C:H/I:H/A:H with a score of 7.8. Ubuntu's official CVE page confirms the issue and links to the Qualys advisory. The patch is available via Ubuntu Security Notice USN-8102-1. The separate uutils race condition discovered during the Ubuntu 25.10 review process has been fixed upstream in the uutils repository and the Ubuntu 25.10 default rm has been reverted to GNU coreutils as an immediate mitigation.

🛡️ Prevention Tips

CVE-2026-3888 illustrates a category of vulnerability that is increasingly common in modern Linux distributions — privilege escalation through unintended interactions between trusted components rather than exploitable bugs in individual binaries. No single component is broken in isolation. snap-confine is doing its job. systemd-tmpfiles is doing its job. The vulnerability emerges from the gap between them. This pattern is difficult to detect through standard security auditing because each component appears to function correctly on its own. The practical prevention lesson is to keep Ubuntu systems patched and rebooted regularly — not just updated. Systems with long continuous uptimes accumulate unpatched vulnerability windows and in this case literally extend the attack window by leaving systemd-tmpfiles cleanup thresholds unreached. Enable automatic security updates on Ubuntu systems using sudo dpkg-reconfigure -plow unattended-upgrades and set up automatic reboots during maintenance windows for production systems.


FAQs

How do I know if my Ubuntu system is vulnerable?

If you are running Ubuntu Desktop 24.04 LTS or any later version and have not applied the USN-8102-1 update, your system is vulnerable. Run sudo apt update && sudo apt upgrade immediately. Ubuntu 16.04, 18.04, 20.04, and 22.04 LTS are also listed as affected — apply all available security updates on those versions as well.


Does this affect Ubuntu Server or only Ubuntu Desktop?

The vulnerability specifically affects systems where snapd is installed and systemd-tmpfiles automatic cleanup is enabled. Ubuntu Desktop installs both by default. Ubuntu Server does not install snapd by default but may be affected if snapd has been installed manually. Run snap version to check if snapd is present on your server.


Read Next