Spyke
linux·LinuxbyChrisG

Timing Flaw in systemd Cleanup Enables Root Privilege Escalation

Yet another critical vulnerability in systemd, this time involving snapd. Ubuntu folk are affected.

"A serious security issue has been discovered in Ubuntu, and it is gaining attention in the cybersecurity community. The vulnerability is identified as CVE-2026-3888 and mainly affects Ubuntu Desktop systems from version 24.04 onwards. This flaw is dangerous because it allows an attacker with limited access to gain full root privileges. Root access means complete control over the entire system."

Timing Flaw in systemd Cleanup Enables Root Privilege Escalationhttps://cybersecurity88.com/news/ubuntu-cve-2026-3888-timing-flaw-in-systemd-cleanup-enables-root-privilege-escalation/Open linkView original on lemmy.world
programming.dev

Yet another critical vulnerability in systemd

This is a critical vulnerability in snapd, not systemd. It sounds like it could also be exploited if something other than systemd deleted the files in /tmp/. Or if /tmp/ was not mounted.

42
Cris_Colorreply
piefed.world

Is it possible they mean both snapd the program and sysd the project have a vulnerability? Is snapd built by sysd, or more of like a ubuntu extension of the sysd ecosystem that they've built themselves?

1
ChrisGreply
lemmy.world

Yet another critical vulnerability in the much vaunted systemd has been exposed by a misbehaving app - in this case snapd.

Both need patching.

-16

Read the bug in the systemd repo. meanwhile the systemd cultists will defend it to the death. Look, if you value the positive aspects of systemd but dislike the cancerous assimilation of the entire userland, dinit is a perfectly good option.

-1
piefed.social

Not a very good article. The original write-up (not linked anywhere in the article) is here: https://blog.qualys.com/vulnerabilities-threat-research/2026/03/17/cve-2026-3888-important-snap-flaw-enables-local-privilege-escalation-to-root

They also mention something else that's interesting at the bottom of the write-up:

Secondary Finding: Vulnerability in Ubuntu 25.10 uutils Coreutils

In a proactive security effort prior to the release of Ubuntu Desktop 25.10, the Qualys Threat Research Unit assisted the Ubuntu Security Team in reviewing the uutils coreutils package (a Rust rewrite of standard GNU utilities).

A race condition in the rm utility allowed an unprivileged local attacker to replace directory entries with symlinks during root-owned cron executions (specifically /etc/cron.daily/apport). Successful exploitation could lead to arbitrary file deletion as root or further privilege escalation by targeting snap sandbox directories.

The vulnerability was reported and mitigated prior to the public release of Ubuntu 25.10. The default rm command in Ubuntu 25.10 was reverted to GNU coreutils to mitigate this risk immediately. Upstream fixes have since been applied to the uutils repository.

22
lemmy.world

Wait. So the flaw was in uutils, and this article reported it as a systemd bug...?

9

And, even further: a rust implementation vulnerability too?

(Waits for C vs Rust war to start...)

4
ChrisGreply
lemmy.world

Any errant application can expose this glaring systemd flaw

0
FauxLivingreply
lemmy.world

There is no systemd flaw here.

snap-confine creates /tmp/.snap owned by root.

systemd-tmpfiles can delete this directory because it also has root privileges. It will do so if the directory is inactive for, by default, 30 days. Files can be excluded from this by adding a .conf file to /etc/tmpfiles.d/, snap-confine does not do this.

Because the files are not excluded they will be deleted. systemd-tmpfiles can do this because it is running as root.

Once they are deleted a USER can recreate /tmp/.snap with malicious code.

snap-confine never verifies that the directory is owned by root, and performs its security checks before its privileged file operations, creating a race window. Because snap-confine is setuid root, it then bind-mounts files from the attacker-controlled /tmp/.snap into the snap sandbox's filesystem, allowing an attacker to execute arbitrary code as root.

What is the systemd-tmpfiles flaw? It does exactly what it is supposed to do, and it provides a means to exclude directories from its process. snap doesn't configure systemd to ignore the directories and it doesn't perform appropriate checks on the directory's ownership.

1
ChrisGreply
lemmy.world

Exactly. systemd has a glaring security hole that had to be kludged. As the OP I posted the article to warn non technical users of the danger but systemd defenders league are predictably blind to any possible flaw in their golden calf and cannot resist the temptation to rush to battle. yawn

0

What is the security hole in systemd?

You haven't answered this.

systemd-tmpfiles exists to delete inactive files in /tmp. That's not a security flaw, that's system maintenance. It's the documented purpose of systemd-tmpfiles and it performs exactly was documented.

The security hole is in snap-confine which does not verify that its own directory is owned by root before mounting it AS ROOT. That's the security hole.

So, again, what is the security hole in systemd?

If you don't have an answer then just say so. Resorting to name calling and trying to frame this as if I'm the irrational one is absurd.

2
lemmy.world

No Dylan, don't bother fixing this shit, go straight for the boot licking commit.

10
sh.itjust.works

When I need to create scratch files I usually operate in /tmp. Almost all directories there that I saw were using randomized paths (e.g. UUIDs). I guess this is to prevent problems mentioned in the article. So, I believe this would be a vulnerability of snap, not systemd.

I use Fedora where /tmp is created as tmpfs, which lives in RAM and is cleared when the system is shut down. I wonder what's the benefit of Ubuntu's approach.

8
ChrisGreply
lemmy.world

If you think about it for even a minute this is still a glaring cve in systemd, exposed in this case, by misbehaving snapd. systemd still needed to be patched and so did snapd.

-5
villainyreply
lemmy.world

Ubuntu configures systemd-tmpfiles to delete a snapd tmp dir, snapd runs setuid root and blindly trusts/executes files from a tmp dir it does not manage the life cycle of. Where is the flaw in systemd here?

9
sh.itjust.works

I don't see how systemd is in the wrong here. Curious, what would you change about it?

3
piefed.social

how would i know if Kubuntu 25.10 is affected (based on ubuntu)?
i guess this means yes?
command 'snap' from deb snapd (2.73+ubuntu25.10.1)
as it is lower than the version mentioned in the article "Upstream snapd: versions prior to 2.75"

now the question is how do i force an update on that thing?
sudo apt upgrade did not include an update for snapd:

Upgrading:
bpftool linux-headers-generic linux-libc-dev linux-tools-common
linux-generic linux-image-generic linux-perf

Installing dependencies:
linux-headers-6.17.0-20 linux-image-6.17.0-20-generic linux-tools-6.17.0-20
linux-headers-6.17.0-20-generic linux-modules-6.17.0-20-generic linux-tools-6.17.0-20-generic

Suggested packages:
linux-tools

Not upgrading yet due to phasing:
fwupd libfwupd3

Summary:
Upgrading: 7, Installing: 6, Removing: 0, Not Upgrading: 2
Download size: 212 MB
Space needed: 421 MB / 417 GB available

edit:
i tried sudo apt install snapd but it returned:

snapd is already the newest version (2.73+ubuntu25.10.1).
snapd set to manually installed.

edit2:
or am i save because of this?:

Ubuntu 25.10 LTS: snapd versions prior to 2.73+ubuntu25.10.1

2

Switch to Devuan and have a peaceful life I guess.

Cheers!

-1

"Systemd is built badly by weaponized dunning-kruger" -- pros

exploit [happens]

World: surprised pikachu

0

You reached the end