是否存在在Windows中的沙箱下运行不受信任的代码(C或C ++)的方法。有什么东西阻止程序打开文件,网络连接,分叉,执行等?
这将是一个小程序,上传到服务器,它将被编译和执行,程序将是短暂的。
答案 0 :(得分:2)
我意识到这个问题是一个古老的问题,但是它从来没有得到完整的答案。询问此问题时,Windows没有太多可用的隔离选项。但是有一些改进。
现在的答案是使用use Docker or Hyper V containers / VM。
但是在Windows 10之前的时代,答案是要操纵Windows Vista / 7周围的进程隔离并使用单独的用户/应用程序帐户。
流程能力:
您可以操纵程序Integrate level并以受限/唯一用户身份运行,因此访问范围受到限制(组策略可以进一步限制用户)。
网络访问权限:
文件访问:
NTFS文件系统具有最可配置的文件系统之一,如果您以不同的用户身份运行进程,则可以制定ACL策略以显着限制进程的文件访问。
来源:
最后,如果您有权访问源代码,则可以删除或修改有问题的部分。
答案 1 :(得分:0)
我做了一个简单的谷歌搜索,并想出了sandboxie。
当然,它似乎只是用于硬盘访问 - 但是内存方面程序应该已经沙盒化。