🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

插件权限透视 lencedinn/dsh-plugin-permissions

DeepSeek Harness
lencedinn9 天前有提交已提供中文文档扫描:含敏感能力

静态扫描已装插件,列出其访问的主机、敏感文件与路由

29.3/100
综合分
0
GitHub 星标
—
npm 周下载
—/5
用户评分

数据截至 2026/11/2 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add lencedinn/dsh-plugin-permissions
该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:仅索引
是什么[目录]—
dsh 原生插件 · market
暂无时间戳·判据 →
装得上吗[实装验证]—
本站尚未做安装检查
暂无时间戳·判据 →
安全吗[自动扫描]—
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
数据截至 2026/11/05·判据 →
还在维护吗[仓库]✓
活跃:最近一次提交在 9 天前
暂无时间戳·判据 →
图例:✓ 通过! 需注意— 未判定 / 无数据· 「未判定」= 本站尚无数据,不代表插件有问题
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →

可信度证据

安全扫描自动 · 静态分析源码
v2.7.0
🔵 扫描:含敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。

读写/删除本地文件发起外部网络请求
查看扫描证据(共 9 处,展示前 7 条)
  • 读取本地文件
    index.js:111
    if (statSync(absolute).size > MAX_FILE_BYTES) return findings;
  • 读取本地文件
    index.js:112
    text = readFileSync(absolute, 'utf8');
  • 读取本地文件
    index.js:181
    entries = readdirSync(dir, { withFileTypes: true });
  • 读取本地文件
    index.js:193
    stat = lstatSync(absolute);
  • 读取本地文件
    index.js:217
    manifest = JSON.parse(readFileSync(join(profileDir, 'package.json'), 'utf8'));
  • 读取本地文件
    index.js:240
    return statSync(real).isDirectory() ? real : undefined;
  • 发起网络请求
    client.js:150
    const response = await fetch(url, { headers: { accept: 'application/json' } });
扫描于 2026/11/5(0 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

社区实装还没有人打卡 · 装过的第一个就是你
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

为每个已安装的 DSH 插件生成静态权限卡片:访问哪些主机、读取哪些敏感文件、开放哪些路由。只读审计,不运行插件代码。

README

由 DeepSeek 最新模型翻译生成
dsh-plugin-permissions 你的每个 DSH 插件到底能碰到什么? DSH 配置档就是一堆第三方代码,跑在你的用户权限下。这个插件读取每个已安装的包,把它变成一张权限卡片:对外访问的主机、它点名的本地敏感存储、它开放的 HTTP 路由、它启动的进程,以及它在运行时执行的安装。 纯静态、只读——从不导入或运行插件代码。 报告内容 | 类别 | 卡片显示什么 | | 主机 | 代码里出现的每个外部域名,分组并计数 | | 敏感读取 | 凭据存储、会话日志、浏览器 cookie 文件、SSH 密钥、API token | | 路由 | webServer.register() 的路径,prefix 路由单独标出 | | 执行 | 子进程、shell、PowerShell、Python 子进程 | | 运行时安装 | 包记录里看不到的下载 | | 安装脚本 | preinstall / postinstall / prepare 钩子 | 每条发现都带上它来自哪个文件、哪一行,所以卡片只是读代码的起点,不是判决书。发现描述的是能力,不是意图:一个跟 GitHub 通信的插件本身并不可疑。关键在于,「我的哪些插件能读我的 token」这个问题,现在几秒钟就能回答,而不是花一下午。 面板 左侧栏 → 插件透视 / Plugin Permissions。
展开完整文档(README 剩余 1 节)
dsh-plugin-permissions

你的每个 DSH 插件到底能碰到什么?

DSH 配置档就是一堆第三方代码,跑在你的用户权限下。这个插件读取每个已安装的包,把它变成一张权限卡片:对外访问的主机、它点名的本地敏感存储、它开放的 HTTP 路由、它启动的进程,以及它在运行时执行的安装。

纯静态、只读——从不导入或运行插件代码。

报告内容

| 类别 | 卡片显示什么 |
| 主机 | 代码里出现的每个外部域名,分组并计数 |
| 敏感读取 | 凭据存储、会话日志、浏览器 cookie 文件、SSH 密钥、API token |
| 路由 | webServer.register() 的路径,prefix 路由单独标出 |
| 执行 | 子进程、shell、PowerShell、Python 子进程 |
| 运行时安装 | 包记录里看不到的下载 |
| 安装脚本 | preinstall / postinstall / prepare 钩子 |

每条发现都带上它来自哪个文件、哪一行,所以卡片只是读代码的起点,不是判决书。发现描述的是能力,不是意图:一个跟 GitHub 通信的插件本身并不可疑。关键在于,「我的哪些插件能读我的 token」这个问题,现在几秒钟就能回答,而不是花一下午。

面板

左侧栏 → 插件透视 / Plugin Permissions。每个包一张卡片,已启用的排在前面:

┌───────────────────────────────────────────────────────────────┐
│ plugin-name 1.2.3 已启用 [高] │ │ 3 域名 · 1 路由 · 1 敏感读取 │ │ │ │ 域名 api.example.net cdn.example.net … │ │ 路由 prefix /api/plugin-name │ │ 发现 [敏感读取] index.js:42 读取了凭据文件 … │ └───────────────────────────────────────────────────────────────┘

- 顶部 —— 扫描了多少个包、多少个高风险,外加一个 Rescan 按钮。
- 筛选标签 —— 全部 / 高风险 / 有网络 / 有路由。
- 搜索 —— 匹配包名、主机、路由和发现文本。
- 展开 —— 前几条发现始终可见;展开后显示全部发现及其 file:line。
- 空包和干净的包会明说:没有主机、没有路由、没有发现。

工具

智能体通过一个工具看到同一份扫描结果,所以聊天里的回答和屏幕上的卡片永远一致:

plugin_permissions({ plugin: "some-plugin" })
plugin_permissions({ category: "sensitive" })

安装

dsh plugin --profile web add github:lencedinn/dsh-plugin-permissions

桌面应用请用 --profile desktop。新安装的包会在下次页面加载时被识别;如果面板图标没出现,刷新一次。

范围与限制

- 扫描配置档已安装的依赖。随 harness 一起发布的 @deepseek-ai/ 包会跳过;@local/ 包会包含,并标记为 local。
- 跳过 node_modules、dist、dev、test、docs,以及超过 1.5 MB 的文件。
- 基于正则、静态分析:只报告代码命名了什么,不报告运行时实际做了什么。压缩后的 bundle 或动态拼接的 URL 都可能藏住目标地址。
- 扫描路由拒绝跨域请求,因为扫描结果会暴露本地路径和源码片段。

配置

| 字段 | 默认值 | 含义 |
| profileDir | 自动检测 | 要扫描其 node_modules 的配置档。 |
| includeOurs | true | 是否包含 @local/* 包。 |
| exclude | [] | 要跳过的包名,精确匹配。 |

开发

node dev/smoke.mjs # fixture profile: scanner, risk verdict, route guards
node dev/scan.mjs [profile] # print the scan for a real profile

许可证

MIT
预览分享卡片长什么样 ↓lencedinn/dsh-plugin-permissions
分享 · DeepSeek Harness Hub
lencedinn/dsh-plugin-permissions

静态扫描已装插件,列出其访问的主机、敏感文件与路由

这个插件是你维护的吗?
作者本人可认领并核对本条目;认领通过后,详情页会显示「作者已认领」标记。
认领条目 →
回到顶部