阅读API挂钩,例如sandboxie挂钩Windows内核过滤所有对文件系统的api调用,并将结果重定向到沙箱,你可以挂钩API并过滤它,只传递有效参数,返回无效调用的错误
对于API挂钩,你会在网上找到很多材料,试试codeproject.com
答案可能是特定于语言的。不幸的是,大多数语言没有内置的沙箱功能。但函数式语言往往足够强大,可以从头开始构建而不需要扩展该语言。
在 Tcl 中,基本机制是创建从属解释器:
interp create -safe sandbox
interp eval sandbox $set_up_code
set result [interp eval sandbox $unsafe_code]
Run Code Online (Sandbox Code Playgroud)