为特定用户临时更改 ptrace_scope

为特定用户临时更改 ptrace_scope

ptrace_scope是一个 sysctl 值 ( ),设置为 1 时会阻止在非子进程上/proc/sys/kernel/yama/ptrace_scope使用。这通常被认为是良好的安全实践。ptrace

不幸的是,能够以开发人员的身份跟踪进程(并附加到正在运行的进程,因此不是子进程)非常有用。sudo与该功能一起使用CAP_SYS_PTRACE允许一个人附加到任何正在运行的进程,而不仅仅是用户拥有的进程。在共享开发机上,可能不希望允许所有进程ptrace通过sudo,因为这实际上允许以任何用户身份运行任意代码。

我想做的是允许用户 sudo (或以其他方式要求身份验证)来 ptrace 非子进程,但不允许他们 ptrace 任意进程。本质上是允许他们ptrace_scope在临时的、身份验证保护的基础上自行更改。

这可能吗?

相关内容