描述
默认情况下,限制容器通过 suid 或 sgid 位获取附加权限。
安全出发点
一个进程可以在内核设置 no_new_priv。它支持 fork,clone 和 execve。no_new_priv 确保进程或者其子进程不会通过 suid 或 sgid
位获得任何其他特权。这样,很多危险的操作就降低安全风险。在守护进程级别进行设置可确保默认情况下,所有新容器不能获取新的权限。
审计方法
ps -ef | grep dockerd
结果判定
确保 --no-new-privileges 参数存在且未设置为 false。
修复措施
运行 Docker 守护进程使用如下命令:
dockerd --no-new-privileges
影响
no_new_priv 会阻止像 SELinux 这样的 LSM 访问当前进程的进程标签。
默认值
新容器不会获得新的权限。