我有一个用c编写的程序,它运行chrooted,在一个监狱里,进行一些系统调用,例如system ( "ls" )
。问题是当我在监狱里运行程序时,它不会执行系统调用。我已经包含了所有必要的可执行文件库(可以使用ldd
bash命令找到它们),以及bash可执行文件(/bin/bash
)和它的库(也可以使用ldd
)。好像少了什么东西。有人知道吗?
最佳答案
根据定义,system
运行“/bin/sh-c”。
把/bin/sh
复制到chroot jail(或者链接到/bin/bash)中,你应该可以很好地去。