dsh-pua
v0.3.27
其他
含混淆或编码代码写入文件
DSH PUA — 为 DeepSeek Harness 提供 PUA 任务推进、角色风味、验收循环和运行状态卡片 · PUA task persistence, personas, verification loops, and live status cards for DeepSeek Harness
该插件尚未翻译,显示作者原文。
源仓库暂时无法访问 多次尝试都没连上,可能是网络问题,也可能是仓库不可达。
检测报告
有一定能力。命中了若干能力模式,大多是插件正常工作时会用到的。
2需留意3一般19未命中
高关注需留意一般
能力清单
- 含混淆或编码代码
obfuscated-code需留意502 处命中lib/client.js:64`)}f.write("payload.value = newResult;"),f.write("return payload;");let te=f.compile();return(R,I)=>te(g,R,I)},n,a=Te,c=…lib/client.js:66Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let a of e.seen.entries()){let c=…lib/command.d.ts:15export declare const HELP = "\u7528\u6CD5\uFF1A\n/pua [\u4EFB\u52A1\u63CF\u8FF0]\uFF1A\u5F00\u542F PUA\uFF1B\u65E0\u63CF…lib/content.d.ts:14export declare const DISABLED_PROMPT = "## DSH PUA \u5F53\u524D\u72B6\u6001\n\u5F53\u524D\u4EFB\u52A1\u7684 PUA \u6A21\u…- 混淆本身不是恶意,但公开源码里出现大段混淆值得问一句为什么。
- 写入文件
writes-files需留意6 处命中…/upstream/hooks/runtime-state.py:189root.mkdir(mode=0o700, parents=True, exist_ok=True)…/upstream/hooks/runtime-state.py:209os.unlink(temporary_name)…/upstream/hooks/runtime-state.py:216root.mkdir(mode=0o700, parents=True, exist_ok=True)…/upstream/hooks/runtime-state.py:227lock.unlink()- 看写入位置。写自己的配置目录是正常的,写系统目录不是。
- 接触凭据或密钥
credentials一般37 处命中lib/integrity-guard.js:29/(^|\/)\.env(\.|$)|(^|\/)(secrets?|credentials?)(\.|\/|$)/iu,lib/integrity-guard.js:30"Capability-abuse risk: secrets and environment files require human gate.",lib/integrity-guard.js:43// 源码模块名(secret.ts、credentials.ts)不是凭据文件,避免普通代码库被当成敏感读取。lib/integrity-guard.js:47new RegExp(String.raw `(^|/)\.env(\.|$)|(^|/)(id_rsa|id_ed25519|private[-_]?key)(\.|$)|(^|/)(secrets?|credentials?)/|(^|…- 看它读取哪些凭据、发往哪里。用于登录自己的服务是正常的。
- 文中出现远程脚本地址
remote-url-reference一般3 处命中README.md:18[](https://nodej…README.ru.md:18[](https://nodej…README.zh-CN.md:18[](https://nodej…- 只是文本里出现了远程脚本地址,没有看到加载它的调用。多半是文档或注释;若确实可疑,搜一下这个地址在包里的其他出现位置。
- 读取文件
reads-files一般2 处命中lib/source.js:9const manifest = JSON.parse(readFileSync(new URL('upstream.json', root), 'utf8'));lib/source.js:14const bytes = readFileSync(new URL(entry.file, root));- 读文件是绝大多数插件的正常工作方式,本身不构成顾虑。
逐条扫描明细
| 能力 | 标识 | 关注度 | 命中次数 |
|---|---|---|---|
| 含混淆或编码代码 | obfuscated-code | 需留意 | 502 |
| 写入文件 | writes-files | 需留意 | 6 |
| 接触凭据或密钥 | credentials | 一般 | 37 |
| 文中出现远程脚本地址 | remote-url-reference | 一般 | 3 |
| 读取文件 | reads-files | 一般 | 2 |
这份报告的口径
扫描读的是包里的源码,全程不执行第三方代码。 本次读了 167 个文件,扫描于 2026-10-14。 命中次数只说明源码里出现过这类调用,不说明行为好坏——一个插件读写文件 500 次和 1 次 都会被记为「读取文件」。这是能力清单,不是信任评分,也不是安全结论: 没扫出来的能力可能只是写法没被规则覆盖。