D

dsh-mcp-lens

github.com/labmimors/dsh-mcp-lens

v0.1.0-rc.9 模型与账号 写入文件发起网络请求R013 清单可疑

Cut MCP context and API cost in DeepSeek Harness with two model-facing tools, lazy discovery, and exact-schema calls

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

deepseekdeepseek-harnessdshdsh-pluginmcpmcp-gatewaymodel-context-protocolprogressive-disclosure
分类
model
发布
2026-08-15
版本
v0.1.0-rc.9

检测报告

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

能力清单

  • 写入文件writes-files需留意8 处命中
    • lib/index.js:403await mkdir(directory, { recursive: true });
    • lib/index.js:407await handle.writeFile(serialized, "utf8");
    • lib/index.js:411await rename(temporary, cachePath);
    • lib/index.js:414await unlink(temporary).catch(() => void 0);
    • 看写入位置。写自己的配置目录是正常的,写系统目录不是。
  • 发起网络请求network需留意2 处命中
    • lib/index.js:1340const response = await globalThis.fetch(url, init);
    • src/pool.ts:529const response = await globalThis.fetch(url, init)
    • 看请求发往哪些域名。发往作者自己的后端是常见做法。
  • R013 清单可疑manifest-obfuscation需留意1 处命中
    • 安装脚本: prepare
    • 清单被刻意写乱时,加载行为会难以预测。看原文而不是看渲染结果。
  • 接触凭据或密钥credentials一般64 处命中
    • lib/index.js:214* Headers, environment variables, URL credentials, and query values are
    • lib/index.js:215* deliberately excluded: not even a digest derived from a secret is written
    • lib/index.js:216* to cache. Endpoint path and non-secret process argv still invalidate stale
    • lib/index.js:217* tool metadata. Credential-shaped command-line flag values are redacted
    • 看它读取哪些凭据、发往哪里。用于登录自己的服务是正常的。
  • 读取文件reads-files一般2 处命中
    • lib/index.js:351bytes = await readFile(cachePath);
    • src/catalog.ts:372bytes = await readFile(cachePath)
    • 读文件是绝大多数插件的正常工作方式,本身不构成顾虑。
  • 读取环境变量reads-env一般2 处命中
    • README.md:165Authorization: !!js '`Bearer ${process.env.MCP_TOKEN}`'
    • README.zh-CN.md:165Authorization: !!js '`Bearer ${process.env.MCP_TOKEN}`'
    • 环境变量里常混有密钥。看它是否把整个 env 都读走。
  • 文中出现远程脚本地址remote-url-reference一般1 处命中
    • npm-shrinkwrap.json:2404"resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz",
    • 只是文本里出现了远程脚本地址,没有看到加载它的调用。多半是文档或注释;若确实可疑,搜一下这个地址在包里的其他出现位置。
逐条扫描明细
能力标识关注度命中次数
写入文件writes-files需留意8
发起网络请求network需留意2
R013 清单可疑manifest-obfuscation需留意1
接触凭据或密钥credentials一般64
读取文件reads-files一般2
读取环境变量reads-env一般2
文中出现远程脚本地址remote-url-reference一般1

这份报告的口径

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

依赖安全公告

这个插件声明的依赖中,有 4 条已公开的安全公告 (最高等级:中):

等级依赖包编号摘要
中@modelcontextprotocol/sdkCVE-2026-25536@modelcontextprotocol/sdk has cross-client data leak via shared server/transport instance reuse
修复版本:1.26.0 详情 →
中@modelcontextprotocol/sdkCVE-2026-104850MCP TypeScript SDK: OAuth client could send credentials to an authorization server chosen by the MCP server
修复版本:1.31.0, 2.2.0 详情 →
未分级@modelcontextprotocol/sdkCVE-2026-0621Anthropic's MCP TypeScript SDK has a ReDoS vulnerability
修复版本:1.25.2 详情 →
未分级@modelcontextprotocol/sdkCVE-2025-66414Model Context Protocol (MCP) TypeScript SDK does not enable DNS rebinding protection by default
修复版本:1.24.0 详情 →

查询的是依赖声明范围的下界(如 ^4.2.0 查 4.2.0), 不是实际安装到的版本。真正装的时候如果解析到了修复版本,就不受影响—— 所以这是「可能受影响」,不是「这个插件有漏洞」。数据来自 OSV.dev。

← 返回全部插件