🗑️ 原仓库已删除或转为私有。本页为收录时的存档信息,仅供参考,安装命令可能已不可用。
安装验证:生态插件:`dsh plugin add` 装得上,但未声明 dsh.bundle、不挂载任何插件能力——L1-L5 插件安装验证阶梯不作评级依据;安全扫描照常执行。安装验证详情 →
功能介绍
DSH Grok Bot dispatch plugin (public). Private deploy config is not in this repo.
安装
dsh plugin --profile web add github:semantic-craft/dsh-grokbot-dispatch安装方式: GitHub · 运行验证未定论 (L5 unknown)
验证与兼容性○ 生态插件
按插件版本分组:每张卡是该插件版本实测过的 dsh 版本与安装兼容结论(L5 优先)。只列真测过的组合——未列出 = 未实测,不推定兼容。L1–L3 为插件级静态档(与 dsh 版本无关,各 dsh 行同值):在行内「验证等级」格里与 L4/L5 并列显示、标注「静态」,证据体为插件级单份、随行内「查看检查项与证据」出现,不在各版本重复存储。
External credentials(插件级):未检测到
未采集到插件清单 —— 无法得知作者声明的版本范围。
| 插件版本 \ dsh | dsh 0.2.1-rc.2 当前 | dsh 0.2.1-alpha.4 |
|---|---|---|
| d4bc71 | ○ | ○ |
| 0d1f0b | · | · |
d4bc71github○ 生态插件 22026-10-19
https://github.com/semantic-craft/dsh-grokbot-dispatch
○dsh 0.2.1-rc.2当前2026-10-19生态插件
- • Node.js: v24.14.0
- • DSH: 0.2.1-rc.2
- • 被测插件工件: github · https://github.com/semantic-craft/dsh-grokbot-dispatch(版本未标注)
ID: dsh-grokbot-dispatch@d4bc71@dsh0.2.1-rc.2 · 档位: l4-sandbox
签发:2026-10-19 · 有效至:2026-10-26
查看检查项与证据
本次为 L5 Web 冒烟专项扫描,该档位不在范围内;结果见更早的标准档记录
本次为 L5 Web 冒烟专项扫描,该档位不在范围内;结果见更早的标准档记录
↳ 沿用自更早记录 dsh-grokbot-dispatch@0d1f0b@dsh0.2.1-alpha.4(l3-fullscan)
未出现在 Web 档 loader 清单中
L1–L3 为插件级静态结论(基础门槛,全 dsh 版本相同):证据为插件级单份,不在各版本重复存储。
○dsh 0.2.1-alpha.42026-10-18生态插件
- • Node.js: v24.14.0
- • DSH: 0.2.1-alpha.4
- • 被测插件工件: github · https://github.com/semantic-craft/dsh-grokbot-dispatch(版本未标注)
ID: dsh-grokbot-dispatch@d4bc71@dsh0.2.1-alpha.4 · 档位: l4-sandbox
签发:2026-10-18 · 有效至:2026-10-25
查看检查项与证据
本次为 L5 Web 冒烟专项扫描,该档位不在范围内;结果见更早的标准档记录
本次为 L5 Web 冒烟专项扫描,该档位不在范围内;结果见更早的标准档记录
↳ 沿用自更早记录 dsh-grokbot-dispatch@0d1f0b@dsh0.2.1-alpha.4(l3-fullscan)
未出现在 Web 档 loader 清单中
L1–L3 为插件级静态结论(基础门槛,全 dsh 版本相同):证据为插件级单份,不在各版本重复存储。
0d1f0blocal2026-10-18
生态插件:`dsh plugin add` 装得上,但未声明 dsh.bundle、不挂载任何插件能力——等级位显示 L5 · 生态插件。
作者徽章
将官方徽章嵌入你的 README,展示插件的安全与安装检测状态:
`[](https://www.dsh.so/artifact/dsh-grokbot-dispatch/)`安全报告
两层自动化检查,都不是人工审核:静态扫描(逐插件规则判定)与模型驱动的动态安全审计(只覆盖静态判定 warn 及以上的插件子集,不执行插件代码)。
静态扫描 低,动态审计最高 中,按「取更严者」→ 总评级 中。
—aef37460a8a9git2026-10-19aef37460a8a9版本一致clean · gitvet 为 AST 静态扫描(npm 发布物或 git 源码)。
静态发现(9 条)
- 警告shellExec · shell
plugin/config.js:39const out = execFileSync(bin, ['status', '--json'], { timeout: 3000, stdio: ['ignore', 'pipe', 'ignore'] }); - 警告childProcess · code-exec
plugin/core.js:224const child = spawn(cfg.dsh, ['--profile', cfg.profile, '--json', promptText], { cwd: spec.cwd, env, stdio: ['ignore', 'pipe', 'pipe'], deta - 警告fsWrite · files
plugin/core.js:153fs.writeFileSync(tmp, JSON.stringify(job, null, 2), { mode: 0o600 }); - 警告fsWrite · files
plugin/core.js:234fs.writeFileSync(path.join(store.dir, `${id}.events.jsonl`), stdout, { mode: 0o600 }); - 警告fsWrite · files
plugin/index.js:313else { fs.mkdirSync(cfg.stateDir, { recursive: true, mode: 0o700 }); fs.writeFileSync(marker, String(process.pid), { mode: 0o600 }); } - 警告fsWrite · files
plugin/job-map.js:61fs.writeFileSync(tmp, JSON.stringify(data, null, 2), { mode: 0o600 }); - 警告fsWrite · files
plugin/job-map.js:186fs.writeFileSync(fd, JSON.stringify({ pid: process.pid, startedAt: new Date().toISOString() })); - 警告fsWrite · files
plugin/log.js:19try { rotate(); fs.appendFileSync(file, line, { mode: 0o600 }); } catch {} - 警告shellExec · shell
plugin/transport.js:49execFile(file, args, {
展开 3 条审计发现
- medium入站 /v1/jobs 允许调用方自选 permission_mode,默认 danger-full-access
plugin/core.js:40任何白名单内的 tailnet 对端(或拿到共享 Bearer 密钥的人)都能向 /v1/jobs 提交任意文本且指定 permission_mode='danger-full-access',会话代理将以完全文件系统/网络权限、无审批地执行工具调用,作用范围是 ~/Projects 下未被默认 /finance/i 拒绝规则命中的目录;该最宽松模式既是默认值又没有单独配置上限,一旦密钥泄露即等于任意代码执行。
- low绑定 IP 可未认证访问 /health,泄露配置诊断信息
plugin/index.js:138本机任意进程连接该 tailnet 绑定地址时 remoteAddress==cfg.host,可绕过 Bearer 校验读取 health():包含 checkCompat 的错误/告警(密钥路径、projectsRoot、peer keyFile 路径)、传输方式与 runner 信息,为本地无特权进程提供侦察信息;不泄露任务数据。
- low共享密钥无对端身份,可伪造任意任务结果并读取全部映射
plugin/index.js:172/v1/callbacks 对任意 16 位十六进制 job_id 都接受结果并写入持久映射,不校验调用方是否派发过该任务;/v1/job-map 又返回全部条目(含已存的出站任务文本)。任一被攻陷的白名单对端即可覆盖其他任务的状态/结果并读取其他调度内容。
仅绑定 tailnet 的调度服务,绑定地址、IP 白名单与 Bearer 密钥校验完备;主要残留风险是请求方可自选 danger-full-access 执行代理,以及 /health 的本地信息泄露。
口径:动态审计只会把风险往严重里判,不会把风险降下来(只升不降,不构成豁免);模型判错时由人工复核撤回,撤回后回到静态判定。合并判定 = 两层中更严的那一个。
免责声明:静态扫描与动态安全审计都是自动化分析,不构成安全保证。安装前请自行审查。
活跃度
最近提交 2026-10-17 · 活跃度:活跃
• 仓库创建: 2026-10-15
• 星标: ★ 0 · 复刻: 0
• 健康度: 活跃 — 近 30 天有提交
来源
作者 README
GitHub 原文 ↗展示作者仓库中的原始 README 内容,实时抓取、未做改写;优先加载中文版(README.zh-CN.md 等),无中文版时回退英文。
