SECMODEL_EXTENSIONS(9)
π SECMODEL_EXTENSIONS(9) β Kernel Developer's Manual π
okay so bestie, welcome to the secmodel_extensions(9) page from the Kernel Developer's Manual π«Ά it's literally all about the extensions security model, and yes it's giving main character energy in the kernel β¨
πΈ NAME πΈ
secmodel_extensions β extensions security model π
β¨ DESCRIPTION β¨
so secmodel_extensions implements extensions to the traditional security model based on the original 4.4BSD π they can be used to grant additional privileges to ordinary users, or enable specific security measures like curtain mode. no cap.
the extensions are described below, bestie π
π Curtain mode π
when enabled, all returned objects will be filtered according to the user-id requesting information about them, preventing users from accessing objects they do not own π periodt.
it affects the output of many commands, including fstat(1), netstat(1), ps(1), sockstat(1), and w(1) π not me checking my own processes and getting filtered, iykyk.
this extension is enabled by setting security.models.extensions.curtain or security.curtain (sysctl(7)) to a non-zero value β¨
it can be enabled at any time, but cannot be disabled anymore when the securelevel of the system is above 0 π
vibe check bestie: once that securelevel is above 0, this one is staying on β no take-backs π
π¦ Non-superuser mounts π¦
when enabled, it allows file-systems to be mounted by an ordinary user who owns the point node and has at least read access to the special device mount(8) arguments π«Ά note that the nosuid and nodev flags must be given for non-superuser mounts.
this extension is enabled by setting security.models.extensions.usermount or vfs.generic.usermount (sysctl(7)) to a non-zero value π
it can be disabled at any time, but cannot be enabled anymore when the securelevel of the system is above 0 π
another securelevel check, bestie: above 0, you cannot turn this one on anymore π
π Non-superuser control of CPU sets π
when enabled, an ordinary user is allowed to control the CPU affinity(3) of the processes and threads they own π§ slay.
this extension is enabled by setting security.models.extensions.user_set_cpu_affinity (sysctl(7)) to a non-zero value π
it can be disabled at any time, but cannot be enabled anymore when the securelevel of the system is above 0 π
same securelevel vibe: above 0, enabling is off the table, fr fr π«
π₯ Hardlink restrictions π₯
prevent hardlinks to files that the user does not own or has group access to π the way that this blocks hardlinks is honestly iconic.
to enable user ownership checks, set the sysctl(7) variable security.models.extensions.hardlink_check_uid to a non-zero value β
to enable group membership checks, set the sysctl(7) variable security.models.extensions.hardlink_check_gid to a non-zero value β
these variables can be enabled anytime, but cannot be disabled anymore when the securelevel of the system is above 0 π
securelevel above 0 = no turning these off anymore, bestie π
π SEE ALSO π
affinity(3), sched(3), sysctl(7), kauth(9), secmodel(9), secmodel_bsd44(9), secmodel_securelevel(9), secmodel_suser(9)
π«Ά AUTHORS π«Ά
Elad Efrat <elad@NetBSD.org>
kisses π β this one came from Debian, dated March 27, 2022. mwah, bestie π
π¦ where this page comes from
- nixpkgs unstable: netbsd-source 11.0
- Copyright (c) 2011 The NetBSD Foundation, Inc
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms