[ANNOUNCE] util-linux v2.41.6

From: Karel Zak

Date: Wed Sep 02 2026 - 04:38:26 EST



The util-linux release v2.41.6 is now available at

http://www.kernel.org/pub/linux/utils/util-linux/v2.41

Feedback and bug reports, as always, are welcomed.

Karel


util-linux 2.41.6 Release Notes
===============================

Security fixes:

CVE-2026-76642 - mount(8) post-mount hooks execute after helper failure.
When an external mount.<type> helper exits nonzero, post-mount hooks
(X-mount.idmap, X-mount.owner/group/mode) still execute as if the
mount had succeeded, allowing privileged operations on the
pre-existing target filesystem.

CVE-2026-78410 - mount(8) TOCTOU race on source path.
In restricted (SUID, non-root) mode, the source path is
canonicalized with realpath() as euid=0, following symlinks through
user-writable directories. Additionally, open_tree() follows
symlinks in intermediate path components. A local attacker can
redirect a privileged mount or post-mount ownership change to an
arbitrary path.

CVE-2026-78408 - nsenter(1), unshare(1) file descriptor leak.
File descriptors in nsenter and unshare were not created with
O_CLOEXEC, potentially leaking them across exec. Added O_CLOEXEC
as defense in depth.

wall(1), write(1) - hostname escape sequence injection.
The CVE-2024-28085 fix sanitized only message bodies; the banner
headers still interpolated the system hostname without sanitization.
An unprivileged user can inject terminal escape sequences via a user
namespace hostname.
Additional fix for CVE-2024-28085.
Reported-by: Skyler Ferrante

Changes between v2.41.5 and v2.41.6:

lib/fileutils:
- add ul_openat_resolve() openat2 wrapper (by Karel Zak)

libmount:
- skip post-mount hooks after failed mount helper [CVE-2026-76642] (by Karel Zak)
- pin source path with openat2() for restricted users [CVE-2026-78410] (by Karel Zak)
- restrict source path canonicalization for non-root users [CVE-2026-78410] (by Karel Zak)
- add mnt_open_tree() helper for safe tree opening (by Karel Zak)

loopdev:
- use openat2(RESOLVE_NO_SYMLINKS) for backing file (by Karel Zak)

nsenter, unshare:
- add O_CLOEXEC to all open() calls [CVE-2026-78408] (by Karel Zak)

tests:
- (lsfd) add a function checking the availability of UDPLite socket (by Masatake YAMATO)
- (lsfd/option-inet) make UDPLite related test case skippable (by Masatake YAMATO)
- (lsfd/mkfds-udp*) make UDPLite related test cases skippable (by Masatake YAMATO)

wall, write:
- sanitize hostname in banner header (by Karel Zak)