我创build/opt/chroot ,在其中创buildbin lib和其他目录,将库,bash和perl二进制文件复制到适当的位置。 另外我把脚本放到/opt/chroot/bin/ 。
现在我可以这样运行脚本:
#chroot / opt / chroot script.pl
有两件事我是关心的:
我怎样才能避免这些安全漏洞?
Linux 上的 Chroot 不是为了安全,如果你有root权限,或者在chroot中挂载abilites,很容易出问题。
你显然应该使用su或类似的方法来删除root,只要脚本没有权限修改解释器文件就不会有问题。
要做到这一点,你需要在su的副本中添加更多的代码,并且需要PAM的核心位。
像jailkit的东西可能是一个更简单的方法来pipe理这个:
你为什么不在你的perl脚本里面chroot? 那样你就不需要在你的chroot监狱里面所有额外的东西了。
只需在脚本的某处添加chroot() http://perldoc.perl.org/functions/chroot.html ,然后添加chdir(“/”)。
之后,放弃你的特权,你被设置。