🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

插件安检机 BotonJ/dsh-plugin-sentinel

DeepSeek Harnessv0.0.1
BotonJ81 天前有提交已提供中文文档扫描:含敏感能力

安装社区插件前先做静态安全审计,输出风险报告

30.8/100
综合分
1
GitHub 星标
—
npm 周下载
—/5
用户评分

数据截至 2026/10/5 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

自动兼容检查有告警:npm 同名包「dsh-plugin-sentinel」归属 dushaobindoudou/dsh-plugin,装到的可能不是本插件。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add BotonJ/dsh-plugin-sentinel
该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:仅索引
是什么
dsh 原生插件 · market
装得上吗
静态安装检查有提示项,装前建议看一眼 README
L4 · 真实安装等级说明 →
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
更新放缓:最近一次提交在 81 天前
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →
社区实装还没有人打卡 · 装过的第一个就是你
安装兼容性检查⚠ 装前注意

npm 同名包「dsh-plugin-sentinel」归属 dushaobindoudou/dsh-plugin,装到的可能不是本插件

展开查看检查明细 ↓

以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。

✓npm 包dsh-plugin-sentinel @ 0.0.1
✓Node 引擎未声明 engines.node
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明

验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/10/13 04:26:35

安全扫描自动 · 静态分析源码
v2.7.0
🔵 扫描:含敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。

读写/删除本地文件
查看扫描证据(共 5 处,展示前 5 条)
  • 读取本地文件
    src/index.js:69
    const st = await stat(resolved).catch(() => null)
  • 读取本地文件
    src/index.js:76
    const bytes = new Uint8Array(await readFile(resolved))
  • 读取本地文件
    src/audit.js:225
    const dirents = await readdir(abs, { withFileTypes: true })
  • 读取本地文件
    src/audit.js:234
    const buf = await readFile(absPath)
  • 读取本地文件
    src/audit.js:286
    manifest = JSON.parse(await readFile(manifestPath, 'utf8'))
扫描于 2026/11/4(0 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

功能亮点

  • 安装前静态审计
  • 解析插件包
  • 输出风险报告

DSH 插件安全审计器——对 DeepSeek Harness 插件包做安装前静态审计。零依赖,内存中解析 tar,词法剥离扫描器。

README

由 DeepSeek 最新模型翻译生成
dsh-plugin-sentinel 🔒 Awesome DSH Plugin DSH 插件安检机 — 给 DeepSeek Harness 装一台插件安检机:安装任何社区插件之前先做纯静态安全审计,输出结构化风险报告,按严重度排序。 官方文档对 GitHub 安装方式的警告原话:prepare 脚本授权是 "permission to execute the package's code on your machine at install time, outside any sandbox the agent runs under"。DSH 生态 24 小时收录 288+ 社区插件——这台安检机就是为了让「先过安检再安装」成为一句话的事。
展开完整文档(README 剩余 1 节)
dsh-plugin-sentinel 🔒

Awesome DSH Plugin

DSH 插件安检机 — 给 DeepSeek Harness 装一台插件安检机:安装任何社区插件之前先做纯静态安全审计,输出结构化风险报告,按严重度排序。

官方文档对 GitHub 安装方式的警告原话:prepare 脚本授权是 "permission to execute the package's code on your machine at install time, outside any sandbox the agent runs under"。DSH 生态 24 小时收录 288+ 社区插件——这台安检机就是为了让「先过安检再安装」成为一句话的事。

安装

dsh plugin --profile <你的profile> add github:<你的fork>/dsh-plugin-sentinel
或本地安装
dsh plugin --profile <你的profile> add ./dsh-plugin-sentinel

装好后对 DSH 说:

- 「帮我装 github:xxx/yyy 这个插件」→ 模型会先调 audit_plugin 过安检,block 则拒绝安装并说明风险
- 「巡检我当前 profile 装过的插件安不安全」→ audit_installed

提供的工具

| 工具 | 用途 |
| audit_plugin | 审计插件目录或 .tgz 压缩包:安装期脚本、动态执行、凭据读取、网络外传、patch 层 !!js 表达式、静默禁用安全行、路径穿越、软链接… |
| audit_installed | 巡检 profile 内全部社区 bundle(官方 @deepseek-ai/ 内置包标记 trusted 跳过) |

结论分级:pass(通过)/ review(需人工审查)/ block(建议拒绝)。风险分权重 critical=10 / high=5 / medium=2 / low=1。

安全设计:安检机自身的攻击面为零

| 决策 | 理由 |
| 零 npm 依赖、零安装脚本、零构建 | package.json 没有 scripts、没有 dependencies;从 GitHub 安装不需要 pnpm allowBuilds 授权,不存在安装期执行 |
| 原生 JSON-Schema ToolDefinition 注册(MCP 工具同款路径) | 全部源码只 import Node 内置模块,不依赖任何运行时包 |
| 纯 JS tar 解析(node:zlib + 手写 ustar/pax/GNU-longname) | .tgz 审计全程在内存完成,被审计的恶意代码不落盘;全程不用 child_process |
| 词法剥离扫描:先剥注释/字符串再匹配危险 API;模板 ${} 插值内的代码保留 | 字符串和注释里写着 eval( 不算证据(防误报);藏在插值里的代码跑不掉(防漏报) |
| 组合规则 | process.env 读取 × 网络出站 = 凭据外传特征(critical);编码载荷 × 动态执行(critical);shell × 网络(critical) |

审计覆盖(v0.1 规则表)

- package.json:安装期 lifecycle 脚本(critical)、伪装插件、运行时依赖
- JS/TS 源码:child_process、eval/new Function/vm、网络出站、process.env、文件写入、动态 require、homedir 探测
- 字符串字面量:敏感路径(.ssh/.env/云凭据/DSH credentials)、外部 URL、长编码载荷(混淆特征)
- cordis.patch.yml:!!js 配置表达式(加载期宿主执行,critical)、disabled: true 静默禁用 sandbox/approval/guard 行(critical)、重配置安全行(high)、伪装安全行 id(high)
- tarball 结构:路径穿越(critical)、软链接(high)、异常档案

局限(诚实地写)

- 词法扫描器不是完整 AST——针对蓄意构造的规避手法(如把代码藏进插值内的伪注释)可能漏报;它面向捕获真实世界的常见恶意模式,不承诺对抗性完备。规则表在 src/rules.js,欢迎补充。
- review/block 是「值得人看一眼/建议拒绝」,最终决定权在人。

开发

node --test test/.test.js # 27 个用例:扫描器/规则/解析器/tar/注册契约/端到端

MIT License.
预览分享卡片长什么样 ↓BotonJ/dsh-plugin-sentinel
分享 · DeepSeek Harness Hub
BotonJ/dsh-plugin-sentinel

安装社区插件前先做静态安全审计,输出风险报告

这是你的仓库?认领条目

回到顶部