Commit 16fe3625 authored by Daniel Colascione's avatar Daniel Colascione Committed by Alistair Delva
Browse files

BACKPORT: selinux: teach SELinux about anonymous inodes



This change uses the anon_inodes and LSM infrastructure introduced in
the previous patches to give SELinux the ability to control
anonymous-inode files that are created using the new
anon_inode_getfd_secure() function.

A SELinux policy author detects and controls these anonymous inodes by
adding a name-based type_transition rule that assigns a new security
type to anonymous-inode files created in some domain. The name used
for the name-based transition is the name associated with the
anonymous inode for file listings --- e.g., "[userfaultfd]" or
"[perf_event]".

Example:

type uffd_t;
type_transition sysadm_t sysadm_t : anon_inode uffd_t "[userfaultfd]";
allow sysadm_t uffd_t:anon_inode { create };

(The next patch in this series is necessary for making userfaultfd
support this new interface.  The example above is just
for exposition.)

Signed-off-by: default avatarDaniel Colascione <dancol@google.com>
Signed-off-by: default avatarLokesh Gidra <lokeshgidra@google.com>
Signed-off-by: default avatarPaul Moore <paul@paul-moore.com>
(cherry picked from commit 29cd6591)

Conflicts:
    security/selinux/include/classmap.h
Compile errors:
    security/selinux/hooks.c

(1. Removed 'lockdown' mapping to be in sync with d9cb255a)
(2. Replace usage of selinux_initialized() with
selinux_state.initialized)

Signed-off-by: default avatarLokesh Gidra <lokeshgidra@google.com>
Bug: 160737021
Bug: 169683130
Change-Id: I85df2757f121cd7072e91cf3b93c09657bd36b76
parent ac920d04
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please to comment