Zum Hauptinhalt springen
K

dsh-skill-security-inspector

kakapengta/dsh-skill-security-inspector

一个可直接链接到 DeepSeek Harness(DSH)Web profile 的独立安全检查插件。在安装或使用不受信任的 Skill 前,先执行浏览器本地粗检,再由用户决定是否调用 DSH 已配置的大模型进行结构化复核。

Installation

dsh plugin --profile web add github:kakapengta/dsh-skill-security-inspector

README

DSH Skill Security Inspector

DSH Skill Security Inspector

English | 简体中文

一个可直接安装到 DeepSeek Harness(DSH)Web profile 的独立安全检查插件。在安装或使用不受信任的 Skill 前,先执行浏览器本地粗检,再由用户决定是否调用 DSH 已配置的大模型进行结构化复核。检查方法与检查内容参考了 Cisco 的 skill-scanner

⚠️no-known-risk 只表示现有规则未发现已知问题,不是安全保证,规则匹配无法覆盖所有语义改写,重要 Skill 仍应人工复核~

特性

  • 独立主侧边栏入口。
  • 拖入 Skill 文件夹或 ZIP;不会安装、导入或执行其中的代码。
  • 本地确定性规则覆盖提示词注入、诱导泄密、危险命令、凭据、数据外传、混淆、供应链和权限风险。
  • 最近 3 次检查历史保存在当前浏览器;不保存原始文件或模型送审片段。
  • 大模型复核默认关闭,必须由用户明确启动。
  • 可选模型、推理强度、中英文提示词、送审范围和字符预算。
  • 模型必须逐条判断粗检项为确认、误报或不确定,并单独报告新增风险。

快速开始

本仓库已经提交可运行的 lib/ bundle,不需要在仓库内安装依赖或构建。克隆后用 file: 把实际绝对路径传给 DSH:

git clone https://github.com/kakapengta/DSH-Skill-Security-Inspector.git

cd /ABSOLUTE/PATH/TO/deepseek-harness
pnpm dsh plugin --profile web add file:/ABSOLUTE/PATH/TO/DSH-Skill-Security-Inspector
pnpm dsh --profile web --port 3080

以后正常启动只需要最后一条命令。插件仓库更新后,重新执行一次 plugin add file:...,再停止并启动 DSH,使 profile 刷新预构建 package。

使用方法

  1. 在 DSH 主侧边栏打开“Skill 安全检查”。
  2. 拖入 Skill 文件夹或 ZIP。
  3. 点击“开始检查”,先查看本地粗检结果。
  4. 如需语义复核,打开大模型开关,确认模型、语言、范围和预计 token 后再点击“运行大模型复核”。
  5. 可导出 JSON 报告,或从“最近检查”回看最近 3 份报告。

可使用 tests/fixtures/all-rules-skill 验证全部现有内容规则;使用 tests/fixtures/missing-root-skill 验证根目录 SKILL.md 缺失检查。测试内容只作为文本读取,绝不会执行。

全部规则样例运行结果

all-rules-skill 运行结果

检查范围

类别示例
Skill 结构根目录缺少 SKILL.md、敏感 package 文件
提示词注入覆盖上级指令、伪造 system/developer、越狱模式
凭据风险硬编码令牌、私钥头、读取 .env/SSH/云凭据
危险命令下载后执行、动态代码、递归删除、危险权限修改
数据外传Webhook、隧道、反向 shell、远端提交本地数据
混淆Base64 解码执行、PowerShell encoded command
供应链latest、主分支 URL、未固定安装
权限不受限制的文件系统、Shell、网络或工具访问

规则集中在 src/scanner.ts,精确回归断言位于 tests/scanner.client.spec.ts

两阶段架构

不受信任的 Skill
        │
        ▼
浏览器本地规则扫描 ──► 统一、已遮罩的发现项
        │
        └── 用户明确开启并确认范围 ──► DSH 模型结构化复核
                                            │
                                            ▼
                                逐条判断 + 新增风险 + JSON 报告

默认智能送审范围包含根 SKILL.md、粗检命中位置附近文本和脚本短前缀,默认最多 8,000 字符。类似凭据的文件名会被排除,识别到的 token 和私钥内容会被遮罩。

隐私与本地历史

  • 粗检完全在浏览器中进行。
  • 大模型复核关闭时,不发送 Skill 内容。
  • 本地历史仅保存报告元数据、已遮罩发现项和模型结论,最多 3 份。
  • 原始文件字节、完整 Skill 文本和模型送审片段不会写入历史。
  • 历史使用浏览器 localStorage,可随时在界面清空。
  • no-known-risk 只表示现有规则未发现已知问题,不是安全保证。

项目结构

.
├── .github/workflows/     # GitHub 仓库安全检查
├── assets/                # README 图片资源
├── lib/                   # 已构建、可直接运行的 Host/Client bundle
├── licenses/              # 内嵌依赖的法定许可文本
├── src/                   # TypeScript/React 源码与规则
├── tests/                 # 单元测试和惰性攻击样例
├── CHANGELOG.md           # 版本变更记录
├── cordis.patch.yml       # DSH Host 插件覆盖层
├── package.json           # DSH 插件 manifest
├── README.en.md           # English documentation
└── README.md              # 中文说明

限制

  • 当前版本不包含 YARA、字节码反汇编、PDF/Office 提取、完整 AST 数据流、OSV、VirusTotal 或沙箱行为分析。
  • ZIP64 和加密 ZIP 会被拒绝,其他压缩格式需要先在插件外解压。
  • 不支持的二进制或超限内容会使结果成为“检查不完整”。
  • 规则匹配无法覆盖所有语义改写,重要 Skill 仍应人工复核。

Ähnliche Plugins