在我们所设想的使用情况下,SubQuery 节点通常是由一个受信任的主机来管理的。而用户向节点所提交的 SubQuery 项目代码并不完全可信。
一些恶意代码很有可能攻击主机甚至破坏主机,造成同一主机内其他项目的数据损坏。因此,我们使用 VM2 Sandbox 安全机制来降低风险。
如下:
·在受隔离的系统中运行不受信任的代码,这些代码不会访问主机的网络和文件系统,除非通过我们注入 Sandbox 的公共接口。
·使用安全的调用方法,并在 Sandbox 之间交换和接受数据。
·对许多已知的攻击方法免疫
限制:
·为了限制访问某些内置模块,只有 conflict, buffer crypto,util 和 path ,上述代码是白名单。
·我们支持使用 CommonJS 和 CommonJS 库编写的第三方模块,如@polkadt/*,它们默认使用ESM。
·禁止使用 HTTP 和 WebSocket 的任何模块。
声明:该文观点仅代表作者本人,与炒币网无关。炒币网系信息发布平台,仅提供信息存储空间服务。对所包含内容的准确性、可靠性或者完整性不提供任何明示或暗示的保证,并不对文章观点负责。
提示:投资有风险,入市须谨慎。本资讯仅供参阅,不作为投资理财建议。