NVIDIA 发布了 OpenShell 新版本,调整了安全日志格式与虚拟机沙箱运行账户的行为。负责日志采集分析或构建沙箱镜像的开发者,需要根据新日志规范与镜像中指定的账户检查集成及权限设置。

1. 安全日志接收端改用统一格式

2026 年 11 月 3 日发布的 v0.1.7 仅以事件分类标准 OCSF 的 1.8.0 格式输出安全事件。这是一种用规定字段与结构表示事件的模式。此前选择旧规范的环境在更新后,也会收到新格式的记录,即按字段整理的事件数据。

此前接收 1.1 或 1.3 记录的部署环境需要迁移。发行说明将其列为破坏兼容性的变更。如果读取日志的解析器,或查找威胁迹象的检测规则依赖旧格式的字段和结构,应先确认它们是否适配新记录。

用于选择旧规范的设置已进入弃用流程,即使赋值也会被忽略,并记录警告。不仅网关这一负责系统间通信中转的组件配置如此,通过部署 chart,即汇集安装配置的部署包,以及环境变量选择版本的方式也会得到相同处理。

验证标准也已适配新格式。发行说明指出,管理沙箱的监督程序,即管理虚拟机运行的控制程序,以及网关生成的事件,均通过了官方 OCSF 1.8.0 模式验证。同一份发行说明还表示,测试会依据 OCSF 模式服务器输出的 JSON Schema,即检验 JSON 结构有效性的规则,检查事件结构。

2. 镜像中指定的账户用于实际运行

在使用轻量级虚拟机的 MicroVM 驱动中,由镜像仓库中的镜像或包含根文件系统的 tar 文件创建的沙箱,会使用镜像内的 sandbox 账户运行。此前,用户与组标识号固定为 1000:1000。

新行为是一项修正,使运行时遵循镜像中已注明的运行账户。如果镜像的 sandbox 账户使用的用户标识号不是 UID 1000,那么由该镜像创建的新沙箱将使用该账户的 UID 运行。

同时也支持通过 run_as_user 请求使用镜像自身的 UID。对镜像构建者而言,这一变化使所选账户与实际运行一致。对于按固定编号设置文件所有权或访问权限的环境,可以依据镜像的运行账户进行检查。

3. 严格权限设置下也能启动虚拟机

虚拟机沙箱的启动问题也已修复。即使网关严格设置了用于限制新文件默认访问权限的 umask,也能启动虚拟机沙箱。发行说明以软件包中包含的 UMask=0077 为例。

这项修复与网关的文件创建权限设置有关。如果说遵循镜像账户的变更修正了沙箱内部的运行身份,那么此次修复的重点,就是让沙箱能够在权限受限的网关运行环境中启动。

4. 安装时一并检查日志集成与镜像权限

发行说明提供了以下安装命令。这是原文中为安装脚本指定目标版本的单行示例。

curl -LsSf https://raw.githubusercontent.com/NVIDIA/OpenShell/main/install.sh | OPENSHELL_VERSION=v0.1.7 sh

统一日志格式的好处在于,可以用同一规范管理采集与验证标准。采用镜像账户则让构建阶段的用户设置与运行阶段一致。相应地,依赖旧规范的日志集成,以及基于固定账户编号的权限配置,都需要迁移。

此次更新的验收标准不只是安装成功,还在于能否正确读取新日志,并使用镜像中指定的账户运行沙箱。