网络大厂对外开源了Sandboxed API项目,Sandboxed API能够自动为C/C++函式库产生沙盒,在热门软件函式库产生可重用且安全的功能实作,以保护剩余软件基础设施。网络大厂还创建核心沙盒子项目Sandbox2,提供低阶沙盒原语,可以单独使用于隔离任意Linux程序。由于许多软件处理外部产生的数据,像是将用户的图片转文件,或甚至执行使用者产生的程序代码,过程通常存在不少的风险,而且 网络大厂提到,当处理这些外部数据的函式库太过复杂时,就有机会出现特定类型的安全漏洞,像是内存破坏臭虫或是解析逻辑相关的问题。
因此开发者为了预防问题发生,会使用沙盒技术来隔离这些软件,以确保解析外部数据的程序代码,只能存取必要的资源,即便在最糟的情况下,黑客取得远程攻击控制权时,沙盒技术还是能包住他们,保护其他软件基础设施。沙盒除了需要能有效抵御攻击保护操作系统外,还必须要易于开发人员使用,然而某些沙盒解决方案,却要求使用者花时间为每个项目重新定义安全边界。为此网络大厂发表了简单好用的Sandboxed API项目,讲求沙盒化一次就能重复使用。Sandboxed API是针对C语言撰写的软件函式库实作,以高阶观点来说,Sandboxed API把沙盒化的函式库,以及其呼叫者(Caller)分为两个独立的操作系统程序,主机二进制文件以及沙盒。实际上函式库呼叫则是由