The fusermount binary in FUSE does not properly clear the environment before invoking mount or umount as root that allows a local user to overwrite arbitrary files.
|Package||sys-fs/fuse on all architectures|
|Affected versions||< 2.9.4|
|Unaffected versions||>= 2.9.4|
FUSE provides an interface for filesystems implemented in userspace.
The fusermount binary calls setuid(geteuid()) to reset the RUID when it invokes /bin/mount so that it can use privileged mount options that are normally restricted if RUID != EUID. FUSE does not properly clear environment variables before invoking mount or umount as root allowing this to be passed to operations using elevated privileges such as LIBMOUNT_MTAB that is used by the mount commands debugging feature.
The FUSE vulnerability allows a local, unprivileged user to overwrite arbitrary files on the system.
There is no known work around at this time.
All FUSE users should upgrade to the latest version:
# emerge --sync # emerge --ask --oneshot --verbose ">=sys-fs/fuse-2.9.4"
March 09, 2016
March 09, 2016: 1