Mbox是一种轻量级的沙箱机制,它允许任何用户在没有特殊权限的条件下运行程序
git clone https://github.com/tsgates/mbox
Mbox沙箱介绍
Mbox引入了一个新奇并可用的沙箱模型,当我们在沙箱中运行一个程序,Mbox会阻止程序对主机文件系统的修改。Mbox通过一个分层的沙箱文件系统和ptrace与seccomp/BPF对系统调用的干预来实现Mbox的功能,在程序运行的最后,用户可以检查沙箱文件系统的变化,并将这些变化选择性地提交给主机文件系统。
Debian条件下下载安装
wget http://pdos.csail.mit.edu/mbox/mbox-latest-amd64.deb
sudo dpkg -i mbox-latest-amd64.deb
在没有root的条件下安装软件包
mbox -R -- apt-get install git #-R: 仿真一个fakeroot环境
安全地运行一个程序
mbox -n -- wget google.com #-n 不允许远程网络访问
Checkpointing filesystem
mbox -i -- sh # -i 允许交互模式
创建一个沙箱环境
mbox -r outdir -- make # -r dir:指定沙箱的文件地址(允许程序运行的地址)
Profile-based sandbox
mbox -p build.prof -- ./configure # -p prof: enable profile-based policy
帮助
mbox -h #help