返回插件页
安全检测报告

dsh-prompt-enhancer高风险78/100

@Fishsb
工具与能力GitHub 源码安装(需 allowBuilds)代码行为与描述一致

一键提示词增强:独立 LLM 调用把模糊草稿改写为更强的提示词,不满意可撤回。

Star40GitHub · 仅用于排序
npm 周下载未发布到 npm
固定 commitfcbdd787482026-08-22
扫描时间2026-08-22 08:21 UTCHT-DSH-0.2.2

检测结论

REVIEW · HT-DSH-0.2.2 · fcbdd78

该finding位于scripts/sync-release-notes.mjs,是仓库维护者用于同步GitHub Release说明的本地发布脚本,不属于package.json files中打包分发给最终用户的插件运行时代码(lib/index.cjs等)。凭据来自维护者自行设置的GITHUB_TOKEN环境变量,且仅发往官方api.github.com接口更新自身仓库的Release正文,未涉及用户凭据或未声明的第三方目的地,行为与注释所述"发布后同步Release说明"意图一致,不构成对终端用户的安全风险。

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

检测明细

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

权限清单 · cordis patch 解析

插件安装后会改变宿主的哪些行
插入的行1
覆盖/禁用的宿主行0
!!js 表达式0
浏览器端 bundle
覆盖的宿主行
未找到 bundle patch 文件,无法判断是否覆盖宿主行。
安全关键 seam · 未改动
sandboxsandbox-policybash-sandboxpwsh-sandboxapprovalpermissioncredentialssubprocessshell-envfs-observation-policy
“未改动”只说明该插件的 patch 没有覆盖这些行;插件代码仍以宿主进程权限运行。
插入的行
dsh-prompt-enhancer · dsh-prompt-enhancer
源码中出现的外部主机
api.github.comwww.webrtc-experiment.comunpkg.comhuggingface.codashscope.aliyuncs.comuploads.github.comnssm.ccplaceholder.invalidghproxy.netgh-proxy.comghfast.top
只是字符串出现,不等于运行时一定访问;用于核对插件声称的服务商与实际目的地是否一致。

证据

33 项有效 · 按严重度排序 · 严重项不折叠
HT-RUNTIME-001动态代码执行
置信度 高L2 · 静态分析
lib/client.cjs:49GitHub
49new Function(
规则备注 · 动态执行与编码解码出现在同一语句,是典型的载荷隐藏模式
模型研判功能所需

new Function 求值的是构建期内嵌的固定 client 端源码字符串(由 build-client.mjs 生成),闭包 React/host/styles/executor,属于该插件动态加载客户端半部的标准打包手法,非远程/用户输入代码。

动态字符串在插件权限下变成代码,使静态审查和输入边界难以成立。
修复建议使用静态模块和受约束的配置解析器,避免执行动态字符串。
HT-RUNTIME-001动态代码执行
置信度 中L2 · 静态分析
lib/index.cjs:397GitHub
397new Function(
模型研判功能所需

BODY 是同文件内硬编码的 host 端插件体字符串,new Function('harness', BODY)(harness) 用于动态求值自身打包代码而非外部输入,是同类 dual-bundle 架构的必要环节。

动态字符串在插件权限下变成代码,使静态审查和输入边界难以成立。
修复建议使用静态模块和受约束的配置解析器,避免执行动态字符串。
HT-RUNTIME-001动态代码执行
置信度 中L2 · 静态分析
lib/sys.cjs:96GitHub
96new Function(
模型研判功能所需

pureText 取自本地 BODY 常量中 ==PURE-BEGIN==/==PURE-END== 标记间的自身纯函数片段,用于 host/client 共享实现,输入固定非外部可控。

动态字符串在插件权限下变成代码,使静态审查和输入边界难以成立。
修复建议使用静态模块和受约束的配置解析器,避免执行动态字符串。
HT-RUNTIME-001动态代码执行
置信度 中L2 · 静态分析
scripts/build-client.mjs:146GitHub
146new Function(
模型研判功能所需

该 new Function 调用只是构建脚本用模板字符串生成写入 lib/client.cjs 的源码文本(${embedded} 为占位插值),构建时不会真正执行外部代码,是产出上面同一动态求值模式的生成器。

动态字符串在插件权限下变成代码,使静态审查和输入边界难以成立。
修复建议使用静态模块和受约束的配置解析器,避免执行动态字符串。
HT-DATA-001同一模块同时接触凭据与网络
置信度 中L2 · 静态分析
scripts/release.mjs:23GitHub
23credential access at line 23 + outbound network at line 53
模型研判功能所需

GITHUB_TOKEN 取自维护者本地环境变量,仅用于向官方 api.github.com 发起 Release 相关请求,属于发布脚本自身预期行为,且该脚本不在 npm 包 files 列表中,不随插件分发给终端用户。

同一执行边界同时拥有秘密读取和对外发送能力,已形成直接的数据外传路径;对模型接入类插件这通常是功能本身。
修复建议拆分能力边界、限定目的域名,并证明不会发送凭据值。
HT-DATA-001同一模块同时接触凭据与网络
置信度 中L2 · 静态分析
scripts/sync-release-notes.mjs:14GitHub
14credential access at line 14 + outbound network at line 24
模型研判功能所需

该脚本不在package.json的files列表中,不随插件分发给终端用户,是维护者本地发布工具:读取自身GITHUB_TOKEN环境变量并发往官方api.github.com更新Release说明,符合注释所述用途。

同一执行边界同时拥有秘密读取和对外发送能力,已形成直接的数据外传路径;对模型接入类插件这通常是功能本身。
修复建议拆分能力边界、限定目的域名,并证明不会发送凭据值。
低等级发现 27 项 · 计入结论但不改变状态展开
HT-EXEC-001直接创建宿主子进程
置信度 中L2 · 静态分析
lib/asr-deploy.cjs:14GitHub
14node:child_process
修复建议通过 DSH 受控执行边界运行命令,并公开参数与审批策略。
HT-EXEC-001直接创建宿主子进程
置信度 中L2 · 静态分析
lib/asr-models.cjs:13GitHub
13node:child_process
修复建议通过 DSH 受控执行边界运行命令,并公开参数与审批策略。
HT-EXEC-001直接创建宿主子进程
置信度 中L2 · 静态分析
lib/asr-models.cjs:272GitHub
272spawnSync
修复建议通过 DSH 受控执行边界运行命令,并公开参数与审批策略。
HT-EXEC-001直接创建宿主子进程
置信度 中L2 · 静态分析
lib/index.cjs:25GitHub
25spawnSync
修复建议通过 DSH 受控执行边界运行命令,并公开参数与审批策略。
HT-EXEC-001直接创建宿主子进程
置信度 中L2 · 静态分析
lib/index.cjs:25GitHub
25node:child_process
修复建议通过 DSH 受控执行边界运行命令,并公开参数与审批策略。
HT-EXEC-001直接创建宿主子进程
置信度 中L2 · 静态分析
lib/maintain-lib.cjs:12GitHub
12spawnSync
修复建议通过 DSH 受控执行边界运行命令,并公开参数与审批策略。
HT-EXEC-001直接创建宿主子进程
置信度 中L2 · 静态分析
lib/maintain-lib.cjs:12GitHub
12node:child_process
修复建议通过 DSH 受控执行边界运行命令,并公开参数与审批策略。
HT-EXEC-001直接创建宿主子进程
置信度 中L2 · 静态分析
lib/net-proxy.cjs:15GitHub
15spawnSync
修复建议通过 DSH 受控执行边界运行命令,并公开参数与审批策略。
HT-EXEC-001直接创建宿主子进程
置信度 中L2 · 静态分析
lib/net-proxy.cjs:15GitHub
15node:child_process
修复建议通过 DSH 受控执行边界运行命令,并公开参数与审批策略。
HT-EXEC-001直接创建宿主子进程
置信度 中L2 · 静态分析
lib/platform-service.cjs:24GitHub
24spawnSync
修复建议通过 DSH 受控执行边界运行命令,并公开参数与审批策略。
HT-EXEC-001直接创建宿主子进程
置信度 中L2 · 静态分析
lib/platform-service.cjs:24GitHub
24node:child_process
修复建议通过 DSH 受控执行边界运行命令,并公开参数与审批策略。
HT-EXEC-001直接创建宿主子进程
置信度 中L2 · 静态分析
lib/shortcut-win.cjs:20GitHub
20spawnSync
修复建议通过 DSH 受控执行边界运行命令,并公开参数与审批策略。
HT-EXEC-001直接创建宿主子进程
置信度 中L2 · 静态分析
lib/shortcut-win.cjs:20GitHub
20node:child_process
修复建议通过 DSH 受控执行边界运行命令,并公开参数与审批策略。
HT-EXEC-001直接创建宿主子进程
置信度 中L2 · 静态分析
lib/stage-install.cjs:14GitHub
14spawnSync
修复建议通过 DSH 受控执行边界运行命令,并公开参数与审批策略。
HT-EXEC-001直接创建宿主子进程
置信度 中L2 · 静态分析
lib/stage-install.cjs:14GitHub
14node:child_process
修复建议通过 DSH 受控执行边界运行命令,并公开参数与审批策略。
HT-EXEC-001直接创建宿主子进程
置信度 中L2 · 静态分析
lib/sys.cjs:7GitHub
7child_process
修复建议通过 DSH 受控执行边界运行命令,并公开参数与审批策略。
HT-EXEC-001直接创建宿主子进程
置信度 中L2 · 静态分析
lib/sys.cjs:11GitHub
11spawnSync
修复建议通过 DSH 受控执行边界运行命令,并公开参数与审批策略。
HT-EXEC-001直接创建宿主子进程
置信度 中L2 · 静态分析
lib/updater-host.cjs:33GitHub
33spawnSync
修复建议通过 DSH 受控执行边界运行命令,并公开参数与审批策略。
HT-EXEC-001直接创建宿主子进程
置信度 中L2 · 静态分析
lib/updater-host.cjs:33GitHub
33node:child_process
修复建议通过 DSH 受控执行边界运行命令,并公开参数与审批策略。
HT-EXEC-001直接创建宿主子进程
置信度 中L2 · 静态分析
scripts/asr-deploy.mjs:9GitHub
9spawnSync
修复建议通过 DSH 受控执行边界运行命令,并公开参数与审批策略。
HT-EXEC-001直接创建宿主子进程
置信度 中L2 · 静态分析
scripts/asr-deploy.mjs:9GitHub
9node:child_process
修复建议通过 DSH 受控执行边界运行命令,并公开参数与审批策略。
HT-EXEC-001直接创建宿主子进程
置信度 中L2 · 静态分析
scripts/release.mjs:12GitHub
12execFileSync
修复建议通过 DSH 受控执行边界运行命令,并公开参数与审批策略。
HT-EXEC-001直接创建宿主子进程
置信度 中L2 · 静态分析
scripts/release.mjs:12GitHub
12node:child_process
修复建议通过 DSH 受控执行边界运行命令,并公开参数与审批策略。
HT-EXEC-001直接创建宿主子进程
置信度 中L2 · 静态分析
scripts/sync-runtime.mjs:11GitHub
11execFileSync
修复建议通过 DSH 受控执行边界运行命令,并公开参数与审批策略。
HT-EXEC-001直接创建宿主子进程
置信度 中L2 · 静态分析
scripts/sync-runtime.mjs:11GitHub
11node:child_process
修复建议通过 DSH 受控执行边界运行命令,并公开参数与审批策略。
HT-EXEC-001直接创建宿主子进程
置信度 中L2 · 静态分析
scripts/voice-verify.mjs:11GitHub
11spawnSync
修复建议通过 DSH 受控执行边界运行命令,并公开参数与审批策略。
HT-EXEC-001直接创建宿主子进程
置信度 中L2 · 静态分析
scripts/voice-verify.mjs:11GitHub
11node:child_process
修复建议通过 DSH 受控执行边界运行命令,并公开参数与审批策略。
低置信度命中 16 项 · 不计入结论展开
HT-RUNTIME-001动态代码执行
置信度 低L2 · 静态分析
lib/index.cjs:38GitHub
38new Function(
规则备注 · 出现在字符串或注释中
模型研判功能所需

BODY 是同文件内硬编码的 host 端插件体字符串,new Function('harness', BODY)(harness) 用于动态求值自身打包代码而非外部输入,是同类 dual-bundle 架构的必要环节。

修复建议使用静态模块和受约束的配置解析器,避免执行动态字符串。
HT-RUNTIME-001动态代码执行
置信度 低L2 · 静态分析
plugin-host.js:44GitHub
44new Function(
规则备注 · 出现在字符串或注释中
修复建议使用静态模块和受约束的配置解析器,避免执行动态字符串。
HT-RUNTIME-001动态代码执行
置信度 低L2 · 静态分析
scripts/sync-prompts.mjs:7GitHub
7new Function(
规则备注 · 出现在字符串或注释中
修复建议使用静态模块和受约束的配置解析器,避免执行动态字符串。
HT-RUNTIME-001动态代码执行
置信度 低L2 · 静态分析
src/host/app.js:5GitHub
5new Function(
规则备注 · 出现在字符串或注释中
修复建议使用静态模块和受约束的配置解析器,避免执行动态字符串。
HT-EXEC-001直接创建宿主子进程
置信度 低L2 · 静态分析
test/a4-drill.cjs:28GitHub
28spawnSync
规则备注 · 位于测试、示例或文档目录
修复建议通过 DSH 受控执行边界运行命令,并公开参数与审批策略。
HT-EXEC-001直接创建宿主子进程
置信度 低L2 · 静态分析
test/a6-drill.cjs:8GitHub
8execFileSync
规则备注 · 位于测试、示例或文档目录
修复建议通过 DSH 受控执行边界运行命令,并公开参数与审批策略。
HT-EXEC-001直接创建宿主子进程
置信度 低L2 · 静态分析
test/a6-drill.cjs:8GitHub
8node:child_process
规则备注 · 位于测试、示例或文档目录
修复建议通过 DSH 受控执行边界运行命令,并公开参数与审批策略。
HT-RUNTIME-001动态代码执行
置信度 低L2 · 静态分析
test/bundle-smoke.test.cjs:3GitHub
3new Function(
规则备注 · 出现在字符串或注释中;位于测试、示例或文档目录
修复建议使用静态模块和受约束的配置解析器,避免执行动态字符串。
HT-RUNTIME-001动态代码执行
置信度 低L2 · 静态分析
test/bundle-smoke.test.cjs:40GitHub
40new Function(
规则备注 · 位于测试、示例或文档目录
修复建议使用静态模块和受约束的配置解析器,避免执行动态字符串。
HT-EXEC-001直接创建宿主子进程
置信度 低L2 · 静态分析
test/e2e-restart.cjs:20GitHub
20spawnSync
规则备注 · 位于测试、示例或文档目录
修复建议通过 DSH 受控执行边界运行命令,并公开参数与审批策略。
HT-EXEC-001直接创建宿主子进程
置信度 低L2 · 静态分析
test/e2e-restart.cjs:20GitHub
20node:child_process
规则备注 · 位于测试、示例或文档目录
修复建议通过 DSH 受控执行边界运行命令,并公开参数与审批策略。
HT-RUNTIME-001动态代码执行
置信度 低L2 · 静态分析
test/lib.test.cjs:24GitHub
24new Function(
规则备注 · 位于测试、示例或文档目录
修复建议使用静态模块和受约束的配置解析器,避免执行动态字符串。
HT-RUNTIME-001动态代码执行
置信度 低L2 · 静态分析
test/lib.test.cjs:264GitHub
264new Function(
规则备注 · 位于测试、示例或文档目录
修复建议使用静态模块和受约束的配置解析器,避免执行动态字符串。
HT-EXEC-001直接创建宿主子进程
置信度 低L2 · 静态分析
test/maintain.test.cjs:13GitHub
13spawnSync
规则备注 · 位于测试、示例或文档目录
修复建议通过 DSH 受控执行边界运行命令,并公开参数与审批策略。
HT-EXEC-001直接创建宿主子进程
置信度 低L2 · 静态分析
test/maintain.test.cjs:13GitHub
13node:child_process
规则备注 · 位于测试、示例或文档目录
修复建议通过 DSH 受控执行边界运行命令,并公开参数与审批策略。
HT-RUNTIME-001动态代码执行
置信度 低L2 · 静态分析
test/voice-persist.test.cjs:330GitHub
330new Function(
规则备注 · 位于测试、示例或文档目录
修复建议使用静态模块和受约束的配置解析器,避免执行动态字符串。

依赖漏洞 · L1

已查询 OSV.dev:package-lock.json 中的生产依赖,0 个已知漏洞
开发依赖及其传递链不计入;只覆盖 OSV 收录的公开漏洞;是否可被利用取决于插件如何使用该依赖。

身份与来源

GitHubFishsb/dsh-prompt-enhancer固定 commitfcbdd78748ad · 2026-08-22内容摘要sha256:ccb0e69908462534npm无 npm 身份可核对repository 字段未检查发布来源证明未检查发布包 ↔ 源码未比对收录日期2026-08-14

宿主能力

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

检测覆盖

源码获取已完成
manifest 解析解析失败
bundle 配置未声明
依赖锁定有锁文件
已知漏洞查询已完成
来源身份不适用
发布包 ↔ 源码比对未比对
模型研判已完成
隔离动态运行未执行
人工复核未执行
2026-08-22 08:21 UTC高风险
HT-DSH-0.2.2 · fcbdd78
策略升级到 HT-DSH-0.2.2
2026-08-21 11:20 UTC高风险
HT-DSH-0.2.1 · 3fd60f6
策略升级到 HT-DSH-0.2.1
2026-08-21 10:48 UTC高风险
HT-DSH-0.2.0 · 3fd60f6
首次扫描

徽章

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

已知限制与申诉

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