我在大学局域网中有一个门户,人们可以在其中将代码上传到C/C++中的编程难题。我想使门户网站安全,以便人们无法通过其提交的代码进行系统调用。可能有几种解决方法,但是我想知道是否可以通过设置一些巧妙的gcc标志来做到这一点。默认情况下,libc似乎包含<unistd.h>
,它似乎是声明系统调用的基本文件。有没有一种方法可以告诉gcc/g++在编译时“忽略”该文件,以便无法访问unistd.h中声明的任何函数?
最佳答案
chroot("/var/jail/empty"); setuid(65534);
不够好的某些特殊原因(假设65534具有合理的限制)?
关于linux - 使用gcc/g++时禁止系统调用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5186377/