]> git.ipfire.org Git - thirdparty/linux.git/commit
selinux: fix overlayfs mmap() and mprotect() access checks
authorPaul Moore <paul@paul-moore.com>
Thu, 1 Jan 2026 22:19:18 +0000 (17:19 -0500)
committerPaul Moore <paul@paul-moore.com>
Fri, 3 Apr 2026 20:53:50 +0000 (16:53 -0400)
commit82544d36b1729153c8aeb179e84750f0c085d3b1
tree2eda539531d462ab150f58a41451fd4516e78df9
parent6af36aeb147a06dea47c49859cd6ca5659aeb987
selinux: fix overlayfs mmap() and mprotect() access checks

The existing SELinux security model for overlayfs is to allow access if
the current task is able to access the top level file (the "user" file)
and the mounter's credentials are sufficient to access the lower
level file (the "backing" file).  Unfortunately, the current code does
not properly enforce these access controls for both mmap() and mprotect()
operations on overlayfs filesystems.

This patch makes use of the newly created security_mmap_backing_file()
LSM hook to provide the missing backing file enforcement for mmap()
operations, and leverages the backing file API and new LSM blob to
provide the necessary information to properly enforce the mprotect()
access controls.

Cc: stable@vger.kernel.org
Acked-by: Amir Goldstein <amir73il@gmail.com>
Signed-off-by: Paul Moore <paul@paul-moore.com>
security/selinux/hooks.c
security/selinux/include/objsec.h