pkexec chmod 0755 的结果是什么

pkexec chmod 0755 的结果是什么

据我所知,快速缓解 CVE-2021-4034 的一种方法是 chmod 0755 /usr/bin/pkexec (即从中删除 SUID 位)。

我不清楚这在现实世界中的具体后果是什么。 (并且,查看我的 Ubuntu 20.04 安装,当我将 polkit 更新到没有错误的版本时,似乎会发生这种情况)。

答案1

删除 setuid 位的实际后果pkexec是,它停止为 root 以外的任何人工作(而 root 不需要pkexec)。

首先要做的事情之一pkexec检查其有效用户ID是否为root

  /* check for correct invocation */
  if (geteuid () != 0)
    {
      g_printerr ("pkexec must be setuid root\n");
      goto out;
    }

如果情况并非如此,则会出错。

这种缓解措施的好处是pkexec停止对 root 以外的所有人(包括恶意行为者)起作用。但任何依赖pkexec并以非 root 身份运行的内容也将停止工作,因此更好的解决方案是安装更新版本(从您的发行版中安装,就像您所做的那样)。

如果无法升级,不妨删除pkexec(二进制文件,而不是包含的包)。有些程序支持多种提升权限的方式;如果他们pkexec首先尝试,如果它存在但不起作用,他们就会失败,而如果他们根本找不到它,他们可以尝试另一种方法。

相关内容