3

是否有办法在 Windows 的沙箱下运行不受信任的代码(C 或 C++)。会阻止程序打开文件、网络连接或分叉、执行等的东西?

这将是一个小程序,它被上传到服务器,在那里它会被编译和执行,这个程序的生命周期很短。

4

1 回答 1

2

我意识到这个问题是一个老问题,但它从来没有真正得到完整的答案。当被问到这个问题时,Windows 没有那么多可用的隔离选项。不过也有一些改善。

现在解决这个问题的方法是使用Docker 或 Hyper V 容器/VM。

但在 Windows 10 之前的时代,答案是操纵 Windows vista/7 周围的进程隔离并使用单独的用户/应用程序帐户。

处理能力:

您可以操纵程序集成级别并与受限/唯一用户一起运行,因此范围有限(组策略可以进一步限制用户)。

网络访问:

文件访问:

NTFS 文件系统拥有最可配置的文件系统之一,如果您以不同的用户身份运行进程,则可以制定 ACL 策略来显着限制进程的文件访问。

资源:

最后,如果您可以访问源代码,您可能会删除或修改问题部分。

于 2020-01-27T20:36:03.937 回答