D

dsh-bigfish

github.com/gosomea/dsh-bigfish

v0.6.0 技能包 含混淆或编码代码写入文件发起网络请求

Adaptive DSH companion with replaceable, extensible character packs

该插件尚未翻译,显示作者原文。

deepseekdeepseek-harnessdshvirtual-petcompanionskillsanimation
分类
skill
发布
2026-10-08
版本
v0.6.0

检测报告

有一定能力。命中了若干能力模式,大多是插件正常工作时会用到的。
4需留意3一般17未命中
高关注需留意一般

能力清单

  • 含混淆或编码代码obfuscated-code需留意33 处命中
    • lib/index.js:22if (bytes.length > limits.archive || bytes.length < 22) throw Error(limits.archive === MAX_ARCHIVE ? "\u89D2\u8272\u5305…
    • lib/index.js:32if (count > 256 || count !== v.getUint16(end + 8, true) || at + centralSize !== end) throw Error("ZIP \u76EE\u5F55\u65E0…
    • lib/index.js:41if (!safePath(path) || Object.hasOwn(files, path) || flags & 1 || ![0, 8].includes(method) || expanded > limits.expanded…
    • lib/index.js:160if (p.format !== "dsh-pet" || p.formatVersion !== 1) throw Error("\u4E0D\u652F\u6301\u7684\u89D2\u8272\u5305\u534F\u8BAE…
    • 混淆本身不是恶意,但公开源码里出现大段混淆值得问一句为什么。
  • 写入文件writes-files需留意11 处命中
    • lib/index.js:288await mkdir(directory, { recursive: true });
    • lib/index.js:3503await writeFile(temp, data);
    • lib/index.js:3504await rename(temp, path);
    • lib/index.js:3506await unlink(temp).catch(() => {
    • 看写入位置。写自己的配置目录是正常的,写系统目录不是。
  • 发起网络请求network需留意2 处命中
    • lib/index.js:4593scoped.effect(() => scoped.connection.fetch.register({ path: "/api/bigfish-pets", methods: ["GET", "POST"], requestBody:…
    • lib/index.js:4594scoped.effect(() => scoped.connection.fetch.register({ path: "/api/bigfish-pets-upload", methods: ["POST"], requestBody:…
    • 看请求发往哪些域名。发往作者自己的后端是常见做法。
  • 动态执行代码dynamic-code需留意1 处命中
    • lib/index.js:3967schema.callback = new Function("return " + schema.callback)();
    • 看 eval / new Function 的入参来自哪里。常量字符串和用户输入是两回事。
  • 动态加载模块dynamic-import一般22 处命中
    • lib/index.js:3534async import(bytes) {
    • lib/index.js:3689return Response.json(await store.import(await boundedBody(request)));
    • …/src/client/backup-settings.d.ts:4}): import("react/jsx-runtime").JSX.Element;
    • …src/client/behavior-preview.d.ts:8}): import("react/jsx-runtime").JSX.Element;
    • 动态导入本身无害,但会让依赖关系难以静态审阅。
  • 读取文件reads-files一般9 处命中
    • lib/index.js:3492await readFile(join(this.directory, "catalog.json"), "utf8")
    • lib/index.js:3525return new Uint8Array(await readFile(join(this.directory, filename)));
    • lib/index.js:3529await readFile(join(this.directory, key + ".dshpet"))
    • bin/install-skill.mjs:16for (const entry of (await readdir(join(root, prefix), { withFileTypes: true })).sort((a,b)=>a.name.localeCompare(b.name…
    • 读文件是绝大多数插件的正常工作方式,本身不构成顾虑。
  • 读取环境变量reads-env一般2 处命中
    • lib/index.js:3481process.env.DSH_HOME ?? join(homedir(), ".dsh"),
    • bin/install-skill.mjs:27const root = resolve(skillsDir ?? join(process.env.DSH_HOME || join(homedir(), '.dsh'), 'skills'));
    • 环境变量里常混有密钥。看它是否把整个 env 都读走。
逐条扫描明细
能力标识关注度命中次数
含混淆或编码代码obfuscated-code需留意33
写入文件writes-files需留意11
发起网络请求network需留意2
动态执行代码dynamic-code需留意1
动态加载模块dynamic-import一般22
读取文件reads-files一般9
读取环境变量reads-env一般2

这份报告的口径

扫描读的是包里的源码,全程不执行第三方代码。 本次读了 128 个文件,扫描于 2026-10-15。 命中次数只说明源码里出现过这类调用,不说明行为好坏——一个插件读写文件 500 次和 1 次 都会被记为「读取文件」。这是能力清单,不是信任评分,也不是安全结论: 没扫出来的能力可能只是写法没被规则覆盖。

依赖安全公告

已查询这个插件声明的全部依赖,没有匹配到已公开的安全公告。(含 DSH 框架包在内的 @deepseek-ai/* 不作查询——那是运行时自己的问题,不是插件的。)

← 返回全部插件