中HT-CONFIG-001Cordis 配置包含可执行 !!js 表达式
置信度 高L3 · DSH 权限语义
cordis.patch.yml:19GitHub
19!!js process.env.SLACK_BOT_TOKEN }
规则备注 · 表达式访问模块、进程或网络,超出读取注入服务的常规用法
!!js 是 DSH 的官方配置机制;只有表达式引入模块、访问进程或网络时才超出常规用法。
修复建议只读取注入的服务;需要更多能力时改为结构化配置并记录副作用。
把文件系统与 bash 提供者换成 mirage 虚拟工作区:文件工具与 shell 命令作用于挂载的资源(RAM、S3、Redis、Slack、Gmail、Notion、Postgres)而非宿主磁盘,支持按挂载点设置读/写/执行模式、按命令选择沙箱(进程内 monty、pyodide、quickjs;远程 docker、e2b、daytona),并可在虚拟终端中安装 CLI(git、gh、slack、linear、ntn、gws,或自行注册的程序树)作为命令头词。
在 21 个文件中有 5 项有效发现(置信度 ≥ 中)。bundle patch 覆盖了 2 个安全关键宿主行(bash-sandbox、pwsh-sandbox)。
| 宿主行 id | 级别 | 改动 | 含义 |
|---|---|---|---|
| fs-sandbox | 常规 | disabled: true | 关闭 fs-sandbox |
| bash-sandbox | 安全关键 | disabled: true | 关闭 Bash 沙箱 |
| pwsh-sandbox | 安全关键 | disabled: true | 关闭 PowerShell 沙箱 |
| tool-pwsh | 敏感 | disabled: true | 关闭 tool-pwsh |
| tool-fs-search | 敏感 | disabled: true | 关闭 tool-fs-search |
19!!js process.env.SLACK_BOT_TOKEN }
43override: id=bash-sandbox disabled=true
disabled bash-sandbox 是插件核心功能所需——用 mirage-shell 替换宿主 bash 提供者,且其自身按 DSH_PERMISSION_MODE 收紧挂载点为只读来强制策略,属于声明用途的必要替换而非单纯移除防护。
50override: id=pwsh-sandbox disabled=true
disabled pwsh-sandbox 同时连带禁用 tool-pwsh(因 mirage 虚拟世界不含宿主子进程能力),是移除整条不再存在的功能路径而非留下无防护的能力,符合插件替换 fs/shell 提供者的声明意图。
52override: id=tool-pwsh disabled=true
55override: id=tool-fs-search disabled=true
[](https://dshmod.com/plugins/strukto-ai-mirage-dsh)