-
-
Notifications
You must be signed in to change notification settings - Fork 15.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[18.03] Security backport for fuse (CVE-2018-10906) #48757
[18.03] Security backport for fuse (CVE-2018-10906) #48757
Conversation
No attempt on x86_64-darwin (full log) The following builds were skipped because they don't evaluate on x86_64-darwin: fuse, fuse3 Partial log (click to expand)
|
Success on aarch64-linux (full log) Attempted: fuse, fuse3 Partial log (click to expand)
|
Success on x86_64-linux (full log) Attempted: fuse, fuse3 Partial log (click to expand)
|
Hm, unfortunately this seems to break
|
We could settle for setting: meta.knownVulnerabilities = [ "CVE-2018-10906: vulnerable to a restriction bypass when SELinux is active." ]; |
Hey @c0bw3b thanks for the suggestion, I wasn't aware of this attribute. However according to the nixpkgs manual Nix would refuse to install fuse:
That would be problematic because fuse will be installed by default on NixOS (IIRC). Unfortunately I don't have much time for this ATM (didn't thought it would break Xen), but I'll try something else and if that doesn't work I'll test if GrahamcOfBorg can build it (just to be sure). But luckily it's only a local exploit and SELinux needs to be active so the impact should be limited (but of course that doesn't mean we should completely ignore it). |
Stop using bin/mount.fuse from fuse3 for fuse2 (mount.fuse from fuse3 isn't guaranteed to remain backwards compatible). (cherry picked from commit c00b5bf)
(cherry picked from commit 085eab7)
(cherry picked from commit d3e3e13)
(cherry picked from commit fa6941f)
Upstream changelog: - SECURITY UPDATE: In previous versions of libfuse it was possible to for unprivileged users to specify the allow_other option even when this was forbidden in /etc/fuse.conf. The vulnerability is present only on systems where SELinux is active (including in permissive mode). - The fusermount binary has been hardened in several ways to reduce potential attack surface. Most importantly, mountpoints and mount options must now match a hard-coded whitelist. It is expected that this whitelist covers all regular use-cases. - Added a test of seekdir to test_syscalls. - Fixed readdir bug when non-zero offsets are given to filler and the filesystem client, after reading a whole directory, re-reads it from a non-zero offset e. g. by calling seekdir followed by readdir. (cherry picked from commit 46cd782)
Upstream changelog: - SECURITY UPDATE: In previous versions of libfuse it was possible to for unprivileged users to specify the allow_other option even when this was forbidden in /etc/fuse.conf. The vulnerability is present only on systems where SELinux is active (including in permissive mode). - libfuse no longer segfaults when fuse_interrupted() is called outside the event loop. - The fusermount binary has been hardened in several ways to reduce potential attack surface. Most importantly, mountpoints and mount options must now match a hard-coded whitelist. It is expected that this whitelist covers all regular use-cases. - Fixed rename deadlock on FreeBSD. (cherry picked from commit ec1082c)
3c5ebd7
to
228acdc
Compare
I've found the issue, it should work now. |
@GrahamcOfBorg build xen |
No attempt on aarch64-linux (full log) The following builds were skipped because they don't evaluate on aarch64-linux: xen Partial log (click to expand)
|
No attempt on x86_64-darwin (full log) The following builds were skipped because they don't evaluate on x86_64-darwin: xen Partial log (click to expand)
|
No attempt on x86_64-darwin (full log) The following builds were skipped because they don't evaluate on x86_64-darwin: fuse, fuse3 Partial log (click to expand)
|
Success on aarch64-linux (full log) Attempted: fuse, fuse3 Partial log (click to expand)
|
Success on x86_64-linux (full log) Attempted: fuse, fuse3 Partial log (click to expand)
|
Success on x86_64-linux (full log) Attempted: xen Partial log (click to expand)
|
SSHFS still works and the other rebuilds I've checked where all successful. |
[18.03] Security backport for fuse (CVE-2018-10906)
Motivation for this change
Delayed security backport for CVE-2018-10906. SSHFS works, I'm currently testing some rebuilds.
Things done
sandbox
innix.conf
on non-NixOS)nix-shell -p nox --run "nox-review wip"
./result/bin/
)nix path-info -S
before and after)