49
Timing Flaw in systemd Cleanup Enables Root Privilege Escalation
(cybersecurity88.com)
From Wikipedia, the free encyclopedia
Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).
Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.
Community icon by Alpár-Etele Méder, licensed under CC BY 3.0
This is not a systemd flaw. This is a snap bug.
e:f;b
Any errant application can expose this glaring systemd flaw
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.
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
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.