0

我需要编写一个被监禁的命令执行器,它需要执行 linux 命令,我尝试将 /bin 复制到我的新根目录,但 system()(例如 system("ls"))仍然不起作用。我已经阅读了有关复制库的信息,但是还有其他方法可以执行不涉及复制内容的 linux 命令吗?

此外(也许更重要),有一种方法可以让非 root 的被监禁进程执行 linux 命令?

谢谢,任何帮助表示赞赏

4

1 回答 1

1

您复制到 chroot 环境的二进制文件必须是静态链接的,或者您还需要复制必要的共享库 ( /lib/ /usr/lib)。

非 root 进程可以像 root 进程一样在 chroot 环境中执行,但只有 root 进程可以调用chroot(),因此您需要让 root 进程设置 chroot 环境,然后切换到非特权用户 ID。

于 2012-07-22T22:56:54.750 回答