Roo*_*ies 13 chroot not-root-user namespace unshare
我正在尝试为最小的源代码 linux 发行版编写引导程序。
我想在一个类似 chroot 的环境中构建。这应该简化包装。在这一点上,我不关心安全性。引导程序不应需要任何非标准的第三方命令。如果不需要 root 那就太好了。
这就是为什么 fakechroot(1) fakeroot(1) chroot(1) 不是我正在寻找的。
是否可以伪造 / 使用 unshare(1) 和 /bin/sh?
是的。如果您的内核支持 user_namespaces(并且它们已启用),您可以首先“模拟 root”用户,然后该用户有权调用chroot
(作为真正的 root 用户)。(以前只需要限制到 root 用户,因为普通用户可能会提升权限(例如,通过 set-UID-root 二进制文件和 chroot 目录中的自定义库)。)
你可以在你的 shell 中试试这个:
unshare --user --map-root-user --mount-proc --pid --fork
/sbin/chroot ......
su - user1
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
5460 次 |
最近记录: |