早期版本的 Android 具有设置了标志run-as
的 at 可执行文件setuid
,因此它运行为root
,但较新的版本取消了这一点。发生了什么变化?用户如何shell
影响用户更改?
我快速浏览了一下来源但我的linux编码能力很弱。
答案1
改变的是 runas 不是切换到 root 用户,而是使用 SETUID 和 SETGID 运行能力它们基于可执行文件的扩展属性。这些可以使用 setcap 命令进行设置。
早期版本的 Android 具有设置了标志run-as
的 at 可执行文件setuid
,因此它运行为root
,但较新的版本取消了这一点。发生了什么变化?用户如何shell
影响用户更改?
我快速浏览了一下来源但我的linux编码能力很弱。
改变的是 runas 不是切换到 root 用户,而是使用 SETUID 和 SETGID 运行能力它们基于可执行文件的扩展属性。这些可以使用 setcap 命令进行设置。