Chromium浏览器的超级用户权限

Jue*_*gen 7 linux ps chrome privileges software-updates

apt-get install chromium在 Debian 12 上运行后,
ps alx | grep -e ^F -e ^5.*chromium返回:

F   UID     PID    PPID PRI  NI    VSZ   RSS WCHAN  STAT TTY        TIME COMMAND
5  1000 3452315 3452313  20   0 33884428 16712 do_sys S  ?          0:00 /usr/lib/chromium/chromium --type=zygote --crashpad-handler-pid=3452306 --enable-crash-reporter=,built on Debian 12.4, running on Debian 12.4 --change-stack-guard-on-fork=enable
Run Code Online (Sandbox Code Playgroud)

此命令在 LUbuntu 18 之后执行(在其 中apt-get install chromium-browser执行):
snap install chromium/var/lib/dpkg/info/chromium-browser.preinst

F   UID     PID    PPID PRI  NI    VSZ   RSS WCHAN  STAT TTY        TIME COMMAND
5  1000  197953  197951  20   0 33909972 1228 do_sys S   ?          0:00 /snap/chromium/2729/usr/lib/chromium-browser/chrome --type=zygote --crashpad-handler-pid=197944 --enable-crash-reporter=,snap --change-stack-guard-on-fork=enable
Run Code Online (Sandbox Code Playgroud)

其中标志F5表示根据所使用的超级用户权限man ps

为什么 Chromium 浏览器在通过常规包管理安装并由非特权用户运行时需要并获得超级用户权限?

ChatGPT 说这将用于安装或更新,但我不相信,因为我使用常规安装,更新将在 Debian 或Ubuntu 上apt-get完成。unattended-upgradessnapd

MC6*_*020 8

顺便提一句 :

\n
\n

其中标志 F 值 5 表示根据\nman ps 使用的超级用户权限。

\n
\n

确实但不仅如此:5 = 1 + 4

\n
\n

PROCESS FLAGS\n这些值的总和显示在“F”列中,该列由标志输出说明符提供:

\n
           1    forked but didn\'t exec\n           4    used super-user privileges\n
Run Code Online (Sandbox Code Playgroud)\n
\n

forked but did\t exec标志确认--type=zygote 您列出的 chrome 进程中设置的参数实际上已被考虑在内,成功使其成为zygote 进程

\n

此外,请注意过去时态“ used ”的使用意味着该报告不反映有关可能在进程初始化后立即删除的功能的当前状态。(一旦不再需要特权,进程就立即放弃特权,这被认为是最佳实践)

\n
\n

出于明显的安全原因,Chromium 将诉诸沙箱
\n除了现在非常旧的内核的情况外,它将使用用户命名空间沙箱技术。受精卵进程负责设置它。

\n
\n

在安全方面,Zygote 负责设置和记录命名空间沙箱。

\n
\n

尽管该技术基于非特权命名空间,但负责设置它的进程实际上需要特权CAP_SYS_CHROOT功能,但前提是沙箱完全投入使用。

\n

因此,简而言之:该进程实际上需要超级用户功能,以便\xe2\x80\xa6 启用所有运行非特权\xe2\x80\xa6 ;-) 的进程,并且一旦设置了适当的环境,就会删除它们。

\n