我想在 Windows 上设置一个在线法官(自动测试软件;获取潜在的恶意代码并在其上运行几个测试),但此类软件通常是为 *nix 系统编写的,因为在那里对代码进行沙箱处理要容易得多。目前看来我必须自己写。
- 如何编译 C++ 代码以防止除 stdin/stdout 之外的任何行为?
- 如何在只允许执行 stdio 的环境中运行可执行文件?
我考虑过从.lib
Visual Studio 标准设置中删除一些头文件,但恐怕在技术上仍然可以执行 WinAPI 调用。
另外,我可以再创建一个操作系统用户,在管理控制面板中设置一些权限,并runas
从该用户那里获得可执行文件以获得“安全”环境,但我不擅长管理,不知道是否可以提供仅程序标准输出权限。