0
当我在
chroot
监狱中放置了一个进程后,它可以访问libc.so
位于jail之外的库。为什么或者如何?chroot进程如何访问其库依赖关系?如果我们有一个指向jail外的文件的软链接,我们可以访问主文件吗?
我们可以在多线程应用程序中使用
chroot
吗?或者如果我们从一个线程改变根目录,整个过程的根目录会改变?我读过
chroot
函数没有提供真正的安全环境,在Linux上有没有其他解决方案?
当我在chroot
监狱中放置了一个进程后,它可以访问libc.so
位于jail之外的库。为什么或者如何?chroot进程如何访问其库依赖关系?
如果我们有一个指向jail外的文件的软链接,我们可以访问主文件吗?
我们可以在多线程应用程序中使用chroot
吗?或者如果我们从一个线程改变根目录,整个过程的根目录会改变?
我读过chroot
函数没有提供真正的安全环境,在Linux上有没有其他解决方案?
chroot
之前,它仍然有它打开,就像它自己的二进制文件。但是,chroot
是特权操作,所以调用它的进程可能会改变标识并执行实际进程,除非它在chroot中可用,否则将无法访问libc.so
。chroot
之外的文件。
我不确定lxc是否更安全,root仍然可以在/上挂载任何设备。 – 2011-08-24 18:26:23