0

我在这里阅读了这些描述: https ://kubernetes.io/docs/concepts/policy/pod-security-policy/#privilege-escalation

而且我仍然很困惑这些是否相同但相反的设置?例如,在 OpenShift 的restrictedSCC 中,我们将SETUID其作为RequiredDropCapabilities. 同时,在同一个 SCC 中,我们有allowPrivilegeEscalation=true。

一个不允许在其他用户下启动进程,而另一个允许该进程?

这是我在allowPrivilegeEscalation=true 上读到的:

这默认为允许,以免破坏 setuid 二进制文件

对于SETUID:

setuid() 设置调用进程的有效用户ID

(来自http://man7.org/linux/man-pages/man2/setuid.2.html

有人可以向我解释一下吗?

4

1 回答 1

0

setuid 二进制文件是在其文件权限中具有 4000 位标志的文件。虽然我们通常只使用三个八进制数字(744 或 600 等)来谈论 Unix 文件权限,但接下来的位通常用于 suid、sgid 和 sticky。suid 可执行文件会自动设置为文件所有者的 ID。这就是像 sudo 这样的工具的工作方式,它们需要提升的权限,但由非特权用户运行。

于 2020-02-01T12:21:44.373 回答