4 Commits

Author SHA1 Message Date
Jagadeesh Krishnanjanappa
be79b8b111 fuse: CVE-2018-10906
* CVE-2018-10906-1:

fusermount: don't feed "escaped commas" into mount options

The old code permits the following behavior:

$ _FUSE_COMMFD=10000 priv_strace -etrace=mount -s200 fusermount -o 'foobar=\,allow_other' mount
mount("/dev/fuse", ".", "fuse", MS_NOSUID|MS_NODEV, "foobar=\\,allow_other,fd=3,rootmode=40000,user_id=1000,group_id=1000") = -1 EINVAL (Invalid argument)

However, backslashes do not have any special meaning for the kernel here.

As it happens, you can't abuse this because there is no FUSE mount option
that takes a string value that can contain backslashes; but this is very
brittle. Don't interpret "escape characters" in places where they don't
work.

* CVE-2018-10906-2:

fusermount: refuse unknown options

Blacklists are notoriously fragile; especially if the kernel wishes to add
some security-critical mount option at a later date, all existing systems
with older versions of fusermount installed will suddenly have a security
problem.
Additionally, if the kernel's option parsing became a tiny bit laxer, the
blacklist could probably be bypassed.

Whitelist known-harmless flags instead, even if it's slightly more
inconvenient.

Affects fuse < 2.9.8 and fuse < 3.2.5

Signed-off-by: Jagadeesh Krishnanjanappa <jkrishnanjanappa@mvista.com>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
2018-08-26 11:03:11 -07:00
Jackie Huang
90eb8fa980 fuse: upgrade to 2.9.4
Changes:
 * Remove 001-fix_exec_environment_for_mount_and_umount.patch
   which has been included in the new version

 * Add sysvinit and systemd support

 * For systemd, there is not a fuse.service since systemd provides
   sys-fs-fuse-connections.mount to mount the fuse control
   filesystem, so instead, only fuse.conf is added to modules-load.d
   to load the required fuse kernel module.

 * Add RDEPENDS on util-linux-mount

 * Add a patch to fix the return value of "--help" option

Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2015-09-23 15:39:46 +02:00
Tudor Florea
96a4d9ad7b fuse: fix for CVE-2015-3202 Privilege Escalation
fusermount in FUSE before 2.9.3-15 does not properly clear the environment before
invoking (1) mount or (2) umount as root, which allows local users to write
to arbitrary files via a crafted LIBMOUNT_MTAB environment variable that is
used by mount's debugging feature.

References:
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2015-3202
http://www.openwall.com/lists/oss-security/2015/05/21/9

Signed-off-by: Tudor Florea <tudor.florea@enea.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2015-07-30 21:03:26 +02:00
Hongxu Jia
5972198b0f fuse: move to meta-filesystems and upgrade
- Move fuse from meta-oe to meta-filesystems
- Upgrade fuse to 2.9.3

[YOCTO #4178]

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2013-08-16 12:58:31 +02:00