nosuid 对已安装文件系统内可执行文件的影响

nosuid 对已安装文件系统内可执行文件的影响

让大家知道,我几乎不明白 setuid/setgid/whatever 是什么。我思考它与程序执行的用户身份有关。这让我想到nosuid

Android 4.3 中的安全增强,谷歌说

The /system partition is now mounted nosuid for zygote-spawned processes,
preventing Android applications from executing setuid programs.

对我来说,说 Linux 中的文件系统“为”任何东西挂载是没有意义的,就好像它的挂载方式可以与进程或可执行文件相关一样。如果Android设备上的系统分区是用 挂载的nosuid,那么系统的任何核心可执行文件如何以root身份运行,而它们需要在启动的最早阶段执行此操作?

答案1

同一文档中较早的可能相关行:

没有 setuid/setgid 程序。向 Android 系统文件添加了对文件系统功能的支持,并删除了所有 setuid/setguid 程序。这减少了根攻击面和潜在安全漏洞的可能性。

关于你的最后一个问题:

如果Android设备上的系统分区是用nosuid挂载的,那么系统的任何核心可执行文件如何以root身份运行,而它们需要在启动的最早阶段执行此操作?

nosuid并不能阻止root来自正在运行的进程。这是不是与 相同noexec。它只是阻止suid可执行文件上的位生效,根据定义,这意味着用户无法运行有权执行用户无权执行的操作的应用程序。

这里还相关的是对“受精卵”实际上是什么的理解;尝试阅读https://android.stackexchange.com/a/77308

免责声明:我不是 Android 专家。

相关内容