Messages in this thread | | | Date | Wed, 6 May 2020 15:38:16 -0400 | From | Peter Xu <> | Subject | Re: [PATCH 2/2] Add a new sysctl knob: unprivileged_userfaultfd_user_mode_only |
| |
On Wed, Apr 22, 2020 at 05:26:32PM -0700, Daniel Colascione wrote: > +unprivileged_userfaultfd_user_mode_only > +======================================== > + > +This flag controls whether unprivileged users can use the userfaultfd > +system calls to handle page faults in kernel mode. If set to zero, > +userfaultfd works with or without UFFD_USER_MODE_ONLY, modulo > +unprivileged_userfaultfd above. If set to one, users without > +SYS_CAP_PTRACE must pass UFFD_USER_MODE_ONLY in order for userfaultfd > +to succeed. Prohibiting use of userfaultfd for handling faults from > +kernel mode may make certain vulnerabilities more difficult > +to exploit. > + > +The default value is 0.
If this is going to be added... I am thinking whether it should be easier to add another value for unprivileged_userfaultfd, rather than a new sysctl. E.g.:
"0": unprivileged userfaultfd forbidden "1": unprivileged userfaultfd allowed (both user/kernel faults) "2": unprivileged userfaultfd allowed (only user faults)
Because after all unprivileged_userfaultfd_user_mode_only will be meaningless (iiuc) if unprivileged_userfaultfd=0. The default value will also be the same as before ("1") then.
Thanks,
-- Peter Xu
| |