Ubuntu
Ubuntu - 非 root 使用者可以在 chroot 監獄中執行程序嗎?
非 root 使用者是否可以在 Ubuntu 上執行 chroot 程序?
在 Linux 上,chroot(2)系統呼叫只能由具有特權的程序進行。流程需要的能力是 CAP_SYS_CHROOT。
您不能以使用者身份進行 chroot 的原因非常簡單。假設您有一個 setuid 程序,例如 sudo,它檢查 /etc/sudoers 是否允許您做某事。現在把它和你自己的 /etc/sudoers 放在一個 chroot chroot 中。突然之間,您立即獲得了特權升級。
可以設計一個程序來 chroot 自己並將其作為 setuid 程序執行,但這通常被認為是糟糕的設計。chroot 的額外安全性不會引發 setuid 的安全問題。