沙盒可公开访问的海湾合作委员会

时间:2012-03-22 17:36:38

标签: c++ linux gcc network-security

我想为基于Linux的Web服务添加一项功能,允许不受信任的用户将源代码上传到一个小型C ++程序,并将该代码自动保存到服务器上的文件中并使用gcc编译然后执行,捕获标准输出。 (这是一个与ideone.com或spoj.pl,或topcoder.com,或codechef.com或许多其他网站不同的功能。)

我的问题是:

Q1。如何沙箱化可执行文件以防止试图破坏文件系统或访问网络的恶意用户等?

Q2。是否有一种公平/准确的方法可以将系统资源用于流程,例如处理器时间和内存使用情况?

1 个答案:

答案 0 :(得分:1)

  1. chroot jail
  2. 的ulimit
  3. 修补内核所以socket()由你运行它的uid失败。