#
3e38f438 |
| 29-Oct-2024 |
jsg <jsg@openbsd.org> |
remove unneeded includes
|
#
2cfc28ad |
| 26-Oct-2024 |
jsg <jsg@openbsd.org> |
remove unneeded forward struct declarations
|
#
89961ef8 |
| 01-Sep-2024 |
bluhm <bluhm@openbsd.org> |
Pledge "vmm" for ccp(4) ioctl(2).
Limit ccp ioctls to processes that pledge vmm. Specific psp device ioctls for AMD SEV will allowed for vmd(8).
from hshoexer@; input deraadt@ jsg@
|
#
b7a7cb6a |
| 02-Jun-2023 |
cheloha <cheloha@openbsd.org> |
pledge(2): stdio: permit restricted profil(2) for moncontrol(3)
Currently, pledged '-pg' binaries get killed in _mcleanup() when they try to disable profil(2) via moncontrol(3).
Disabling profil(2)
pledge(2): stdio: permit restricted profil(2) for moncontrol(3)
Currently, pledged '-pg' binaries get killed in _mcleanup() when they try to disable profil(2) via moncontrol(3).
Disabling profil(2) is harmless. Add profil(2) to the "stdio" pledge(2) promise and permit profil(2) calls when the scale argument is zero. Enabling profil(2) remains forbidden in pledged processes.
This gets us one step closer to making '-pg' binaries compatible with pledge(2). The next step is to decide how to exfiltrate the profiling data from the process during _mcleanup().
Prompted by semarie@. Cleaned up by deraadt@. With input from deraadt@, espie@, and semarie@.
"Looks good" deraadt@ pledge(2) pieces ok semarie@
show more ...
|
#
9a23cfc8 |
| 01-Sep-2022 |
jsg <jsg@openbsd.org> |
remove ppath_destroy() prototype; function was never committed
|
#
09de7c43 |
| 18-Jul-2022 |
jca <jca@openbsd.org> |
Restrict pledge("vminfo") callers to read-only swapctl(2) operations.
Those are the read-only operations allowed for non-root users: SWAP_NSWAP and SWAP_STATS. Users of pledge("vminfo") in base whi
Restrict pledge("vminfo") callers to read-only swapctl(2) operations.
Those are the read-only operations allowed for non-root users: SWAP_NSWAP and SWAP_STATS. Users of pledge("vminfo") in base which also call swapctl(2) with said commands: top(1) and pstat(8).
No regression spotted with top(1) and pstat(8) -s/-T.
ok deraadt@
show more ...
|
#
5c5d7832 |
| 18-Jul-2022 |
deraadt <deraadt@openbsd.org> |
Delete the YPACTIVE toggling code when "getpw" code access/open are done to /var/run/ypbind.lock. "getpw" is now only allows ypconnect(2) and the minimum unveil bypasses. Still allow open/acesss to
Delete the YPACTIVE toggling code when "getpw" code access/open are done to /var/run/ypbind.lock. "getpw" is now only allows ypconnect(2) and the minimum unveil bypasses. Still allow open/acesss to file for a little while, because getpwent/getgrent/etc were opening it unconditionally to hint for YPACTIVE. That code should be deleted before 7.2
show more ...
|
#
53c5351a |
| 17-Jul-2022 |
deraadt <deraadt@openbsd.org> |
backout last step: the path checks are too strong until everyone has a new libc..
|
#
1c3469d1 |
| 17-Jul-2022 |
deraadt <deraadt@openbsd.org> |
the PLEDGE_YPACTIVE "hack" bit related to "getpw" pledge goes away. libc no longer does accesses /var/run/ypbind.lock to trigger extra permissions for userland-opening of files & sockets to engage w
the PLEDGE_YPACTIVE "hack" bit related to "getpw" pledge goes away. libc no longer does accesses /var/run/ypbind.lock to trigger extra permissions for userland-opening of files & sockets to engage with ypserver for YP/LDAP lookups. libc now uses the super secret special ypconnect() system call to perform socket-setup. Delete some other things which are no longer reached via libc/rpc ok jmatthew, miod
show more ...
|
#
b41ef503 |
| 11-Jun-2021 |
deraadt <deraadt@openbsd.org> |
Sort ID->pledge name translation in the same order as the manual page (which are idiomatically sorted rather than numerically), so that ps(1) "-o pledge" is easier to understand. from Josh Rickmar ok
Sort ID->pledge name translation in the same order as the manual page (which are idiomatically sorted rather than numerically), so that ps(1) "-o pledge" is easier to understand. from Josh Rickmar ok semarie kn dv
show more ...
|
#
354feef1 |
| 05-Apr-2020 |
visa <visa@openbsd.org> |
Declare pledgenames[] as const.
OK deraadt@
|
#
5beb3ce7 |
| 19-Jun-2019 |
deraadt <deraadt@openbsd.org> |
the pledge STATLIE code is no longer needed, as discussed with beck. it actually isn't reached...
|
#
3ec81e34 |
| 21-Jan-2019 |
landry <landry@openbsd.org> |
Add "video" promise.
Allows a subset of ioctls on video(4) devices, subset selected from video(1) and firefox webrtc implementation.
ok semarie@ deraadt@
|
#
9dfd71d8 |
| 11-Aug-2018 |
beck <beck@openbsd.org> |
Get rid of PLEDGE_STAT, which was a hack used for unveil. We use UNVEIL_INSPECT instead in the unveil flags for the same purpose, and now add traversed vnodes of a path with UNVEIL_INSPECT instead of
Get rid of PLEDGE_STAT, which was a hack used for unveil. We use UNVEIL_INSPECT instead in the unveil flags for the same purpose, and now add traversed vnodes of a path with UNVEIL_INSPECT instead of with 0 flags and voodoo in unveil_flagmatch. This allows us to uncontort the logic of unveil_flagmatch a bunch. helpful review and ok from semarie@
show more ...
|
#
8b23add8 |
| 13-Jul-2018 |
beck <beck@openbsd.org> |
Unveiling unveil(2). This brings unveil into the tree, disabled by default - Currently this will return EPERM on all attempts to use it until we are fully certain it is ready for people to start usin
Unveiling unveil(2). This brings unveil into the tree, disabled by default - Currently this will return EPERM on all attempts to use it until we are fully certain it is ready for people to start using, but this now allows for others to do more tweaking and experimentation.
Still needs to send the unveil's across forks and execs before fully enabling.
Many thanks to robert@ and deraadt@ for extensive testing. ok deraadt@
show more ...
|
#
8ba961a7 |
| 16-Jun-2018 |
florian <florian@openbsd.org> |
Introduce "wroute" promise.
For now this allows configuring an IPv6 address on an interface and reading the net.inet6.ip6.soiikey sysctl. To be used by slaacd.
prodding & OK deraadt
|
#
6605ddc8 |
| 26-Apr-2018 |
deraadt <deraadt@openbsd.org> |
prot_exec is the correct name; spotted by landry
|
#
69dc22ff |
| 09-Jan-2018 |
mpi <mpi@openbsd.org> |
Change `so_state' and `so_error' to unsigned int such that they can be atomically read from any context.
ok bluhm@, visa@
|
#
4ea7ed56 |
| 12-Dec-2017 |
deraadt <deraadt@openbsd.org> |
pledge()'s 2nd argument becomes char *execpromises, which becomes the pledge for a new execve image immediately upon start. Also introduces "error" which makes violations return -1 ENOSYS instead of
pledge()'s 2nd argument becomes char *execpromises, which becomes the pledge for a new execve image immediately upon start. Also introduces "error" which makes violations return -1 ENOSYS instead of killing the program ("error" may not be handed to a setuid/setgid program, which may be missing/ignoring syscall return values and would continue with inconsistant state) Discussion with many florian has used this to improve the strictness of a daemon
show more ...
|
#
f46da438 |
| 29-Aug-2017 |
deraadt <deraadt@openbsd.org> |
Remove old deactivated pledge path code. A replacement mechanism is being brewed. ok beck
|
#
f8e00d7d |
| 20-Apr-2017 |
deraadt <deraadt@openbsd.org> |
only 32 bits of the pledgecode were passed up via ktrace from Anton Lindqvist ok semarie
|
#
b90d0acd |
| 23-Jan-2017 |
deraadt <deraadt@openbsd.org> |
Split pledge "ioctl" into "tape" and "bpf", and allow SIOCGIFGROUP only upon "inet". Adjust the 4 programs that care about this.
|
#
1d0044e1 |
| 03-Jul-2016 |
semarie <semarie@openbsd.org> |
introduces new promise "chown" to allow changing owner/group with *chown(2) family
it splits PLEDGE_FATTR in two ("fattr" stills grant the 2 flags, so no functional changes): - PLEDGE_CHOWN : to b
introduces new promise "chown" to allow changing owner/group with *chown(2) family
it splits PLEDGE_FATTR in two ("fattr" stills grant the 2 flags, so no functional changes): - PLEDGE_CHOWN : to be able to call *chown(2) syscalls - PLEDGE_FATTR : the rest
it introduces "chown" which grant: - PLEDGE_CHOWN : be able to call *chown(2) - PLEDGE_CHOWNUID : be able to modifying owner/group
ok deraadt@ tedu@
show more ...
|
#
a6ebf764 |
| 28-Apr-2016 |
beck <beck@openbsd.org> |
1) Split pledge whitelist path handling out of pledge_namei() and into pledge_namei_wlpath(). Call the wlpath check only at the end of namei after the namei lookup would otherwise succeed. 2) A
1) Split pledge whitelist path handling out of pledge_namei() and into pledge_namei_wlpath(). Call the wlpath check only at the end of namei after the namei lookup would otherwise succeed. 2) Add support to namei to keep the path that was looked up, without the symlinks in it, and use that path for whitelist path lookups. This means that paths in pledge whitelists will need to always be the real path to an intended file to whitelist, without symlinks. Any symlinks to the "real" file will then be allowed ok deraadt@ semarie@
show more ...
|
#
fbc2f996 |
| 09-Jan-2016 |
semarie <semarie@openbsd.org> |
drop "abort" promise, and make it the default behaviour. The current code has already setted it by default since 1.74
any pledge failure tries to make a coredump (default rules for coredump still ap
drop "abort" promise, and make it the default behaviour. The current code has already setted it by default since 1.74
any pledge failure tries to make a coredump (default rules for coredump still applies: so setuid binaries don't create them locally).
ok deraadt@
show more ...
|