Fwd: util-linux: unintentional grant of privileges by umount
Archaic <[email protected]> Mon, 12 Sep 2005 15:46:50 -0600
| Newsgroups | gmane.linux.lfs.security |
|---|---|
| Message-ID | <[email protected]> |
----- Forwarded message from David Watson <[email protected]> ----- To: [email protected] From: David Watson <[email protected]> Date: Mon, 12 Sep 2005 21:16:32 +0100 User-Agent: KMail/1.8.2 Subject: util-linux: unintentional grant of privileges by umount Affected: Linux umount command as provided in the util-linux package in versions 2.8 to 2.12q, 2.13-pre1 and 2.13-pre2. Privileges needed to exploit: local account with permission to unmount a user-mountable file system with Unix-type features (set-id bits or device nodes). Effect: removal of nosuid, nodev and other flags from the file system, thus allowing setuid and setgid bits to take effect and device nodes to be interpreted. While this may be undesirable in itself, someone who can write to the underlying device or otherwise provide its contents can use this to obtain root privileges (for example by creating a setuid-root binary in the file system and having its setuid bit take effect when run). Explanation: When mounting a user-mountable file system, the mount command always imposes the nosuid and nodev flags by default, and only the superuser or an explicit setting in the fstab entry can override this. However, I recently discovered that the umount command allowed users to remove these flags again by using the -r option. The -r option tells umount to try to remount the file system read-only if it is currently busy and cannot be unmounted fully (for example, if it is the current directory of some process). However, the file system is remounted with the MS_RDONLY ("ro") flag alone, thus clearing all its other flags, including nosuid and nodev. In the affected versions, the user who mounted the file system can use this option and easily force the unsafe remount, even if the file system is already read-only. If "users" was given in the fstab entry, then any user can do so. Workaround: edit /etc/fstab to limit the (un)mounting of filesystems appropriately, or just remove the setuid bit from umount. Fix: fixed in util-linux 2.12r-pre1 and 2.13-pre3, by refusing to accept the -r option from a non-root user. ----- End forwarded message ----- -- Archaic Want control, education, and security from your operating system? Hardened Linux From Scratch http://www.linuxfromscratch.org/hlfs -- http://linuxfromscratch.org/mailman/listinfo/lfs-security FAQ: http://www.linuxfromscratch.org/faq/ Unsubscribe: See the above information page