sudo 如何实现改变进程的权限?

Tim*_*Tim 1 sudo uid

  1. man sudo

    sudo 执行命令时,安全策略指定命令的执行环境。通常,真实有效的用户和组以及 ID 被设置为与目标用户的 ID 匹配,如密码数据库中指定的那样,并且组向量基于组数据库进行初始化(除非指定了 -P 选项)。

    为什么sudo改变有效和真实的用户/组ID来与目标用户的,而不是只是有效的用户/组ID?

    有效的用户/组 ID 是否不是唯一需要获得目标用户权限的 ID?

  2. 来自https://unix.stackexchange.com/a/333245/674

    更改进程的有效用户和组 ID 只是更改进程权限的一种方式,sudo.conf 中定义的安全策略可以使用上述列表中的任何其他类型的参数。

    要更改权限,除了更改有效用户/组 ID 之外,还有其他方法吗?这些是什么?

谢谢。

我的问题的灵感来自“sudo”是否在更改进程的有效用户和组 ID 方面起作用?

Ste*_*itt 5

  1. sudo更改真实和有效用户 ID 以限制结果进程的权限。更改有效 id足以授予新进程所请求用户的权限,但仅这样做会留下一个巨大的漏洞:setuid然后可用于承担调用用户的权限。为了避免这种情况,sudo也要设置真实的用户 ID。

  2. 的可能性列表中给出sudo手册页和你指的答案引用。其中一些会影响子进程的权限:SELinux 角色和类型、Solaris 项目和权限以及 BSD 登录类。