前言¶
DeepSeek Harness(DSH)采用“一切皆插件”的架构。在引入第三方插件时,开发者往往难以在运行前评估其潜在风险,或者无法直观地判断插件是否越权。dsh-plugin-guard 插件通过静态代码分析、依赖审查和 AI 在线审计,对已安装的插件进行安全体检,并以绿/黄/红三级面板呈现结果。
这是什么¶
这是一个 DeepSeek Harness Web GUI 的插件安全体检工具。它在不执行插件代码的前提下,读取已安装第三方插件的源码与元数据,帮助判断插件的功能范围、是否存在越权行为以及风险等级,最后生成一份分级报告。
核心功能¶
静态扫描与依赖审查¶
插件会对已安装的插件源码进行静态扫描,识别 17 类风险能力,包括危险 API(如子进程、eval、vm、shell)、密钥泄露、高熵载荷以及下载即执行等。同时,它会审查依赖项,标出非 npm 来源(如 git:、file:、URL)以及命中可疑关键词(如 miner、stealer、backdoor)的依赖。
安装脚本与权限评分¶
插件会单独审查 preinstall、install 和 postinstall 脚本,特别关注其中的下载即执行行为。它还会根据 dsh.plugin.json 的 entry.inject 和 package.json 的 dsh.client.inject 对插件声明的宿主服务权限进行评分,并检测“能力与声明面不匹配”的情况(例如代码使用了高危能力,但声明的权限却很轻量)。
版本监控与告警¶
插件会保存基线数据,持续监控已安装插件。如果检测到新安装、版本变化或相比上次扫描新增了风险能力/声明权限,面板会打标提示。
AI 在线审计与分级¶
插件结合代码、版本和多层互联网声誉(npm 元数据、OSV.dev、恶意报告、GitHub 信号)进行 AI 二次判定。AI 审计结束后会重新定级:malicious 为红,suspicious 为黄,safe 为绿,inconclusive 不低于静态等级。AI 与静态不一致时,面板会显式标注。
声誉佐证¶
声誉佐证包括 npm registry 元数据(包龄、弃用标记)、OSV.dev 权威记录、互联网恶意/攻击报告检索以及 GitHub 仓库信号。GitHub Token 可提升 API 限额。
技能审计(SafeSkill)¶
插件对接微步在线 SafeSkill 平台,支持对已安装的 DSH Skills 进行多引擎扫描(LLM / 静态 / 动态)。SafeSkill 额度用尽时,可使用默认模型进行本地 AI 审查。
安装与启用¶
前提¶
- 机器上已安装 DSH 并能正常运行
dsh web。 - 机器上装有
pnpm(dsh plugin内部需要它来安装插件)。
安装¶
执行以下命令安装插件:
dsh plugin --profile <name> add @guojin-ai/dsh-plugin-guard
将 <name> 替换为你要审计的 profile 名称。安装完成后,重启 dsh。
启用与查看¶
重启 dsh 后,在 Web GUI 的 设置 → 插件安全体检 路径下,即可看到安全报告。
使用指南¶
查看报告¶
面板顶部显示汇总统计。每行代表一个已安装插件,包含风险等级徽章、插件名、版本、风险分、命中规则、声明权限等。展开某一行可以看到自上次扫描的变更、命中的风险规则、声明的宿主服务权限以及可疑依赖。
AI 审计¶
点击插件行内的 “AI 审计” 按钮,查看判定结论(safe/suspicious/malicious/inconclusive)与建议。审计结果有缓存机制(内容指纹+版本+TTL),新负面信号会强制重审。
SafeSkill 扫描¶
在面板顶部配置 SafeSkill API Key 后,点击 “扫描全部技能”,插件会将已安装的 DSH Skills 打包上传至 SafeSkill 平台,并拉取多引擎扫描报告。
注意事项¶
- 包名匹配:DSH 装载行的
name必须与package.json的@guojin-ai/dsh-plugin-guard完全一致,否则客户端 bundle 会被静默丢弃。 - 数据存储:GitHub Token 和 SafeSkill Key 只保存在本机,不上传。
- 平台独立性:SafeSkill 是独立外部平台,扫描结果由微步在线提供。
结语¶
dsh-plugin-guard 通过静态分析、依赖审查和 AI 审计,为 DSH 插件使用提供了可视化的安全评估手段。它适合在引入第三方插件前或定期巡检时使用,帮助开发者识别潜在的供应链风险。