安装验证:运行验证通过 (L5) · 验证于 dsh 0.2.1-rc.2 · 验证日期 安装验证详情 →
功能介绍
配合官方wps365-cli的dsh插件
安装
dsh plugin --profile web add @tryao/dsh-wps365-plugin安装方式: npm · 运行验证通过 (L5)
验证与兼容性
按插件版本分组:每张卡是该插件版本实测过的 dsh 版本与安装兼容结论(L5 优先)。只列真测过的组合——未列出 = 未实测,不推定兼容。L1–L3 为插件级静态档(与 dsh 版本无关,各 dsh 行同值):在行内「验证等级」格里与 L4/L5 并列显示、标注「静态」,证据体为插件级单份、随行内「查看检查项与证据」出现,不在各版本重复存储。
External credentials(插件级):未检测到
○ 作者未声明 dsh 版本要求 —— 安装不会因版本被拒。
| 插件版本 \ dsh | dsh 0.2.1-rc.2 当前 |
|---|---|
| 0.2.0 | ✓ |
| v0.1.4 | · |
0.2.0npm✓ 运行验证通过 12026-10-21
@tryao/dsh-wps365-plugin
✓dsh 0.2.1-rc.2当前2026-10-21L5 · 运行验证通过
- • Node.js: v24.14.0
- • DSH: 0.2.1-rc.2
- • 被测插件工件: npm · @tryao/dsh-wps365-plugin@0.2.0
ID: dsh-wps365-plugin@0.2.0@dsh0.2.1-rc.2 · 档位: l3-fullscan
签发:2026-10-21 · 有效至:2026-10-28
查看检查项与证据
已在加载器目录树中激活(150 个条目)
L1–L3 为插件级静态结论(基础门槛,全 dsh 版本相同):证据为插件级单份,不在各版本重复存储。
v0.1.4github2026-10-18
https://github.com/YiuTerran/dsh-wps365-plugin
该版本无运行时安装实测(仅静态扫描)——兼容性未知,不推定。
作者徽章
将官方徽章嵌入你的 README,展示插件的安全与安装检测状态:
`[](https://www.dsh.so/artifact/dsh-wps365-plugin/)``[](https://www.dsh.so/artifact/dsh-wps365-plugin/)`安全报告
两层自动化检查,都不是人工审核:静态扫描(逐插件规则判定)与模型驱动的动态安全审计(只覆盖静态判定 warn 及以上的插件子集,不执行插件代码)。
静态扫描 低,动态审计最高 中,按「取更严者」→ 总评级 中。
v0.2.2dsh 清单0.2.2npm2026-10-210.2.2版本一致clean · npmvet 为 AST 静态扫描(npm 发布物或 git 源码)。
静态发现(2 条)
- 严重pipeShell · shell
src/skill-catalog.js:196: '`curl -fsSL https://open-docs.wpscdn.cn/cli/install.sh | bash`' - 警告shellExec · shell
assets/wps365-docs/scripts/xlsx_edit.py:237exec(compile(code, py_file, "exec"), env) # noqa: S102 本地可信脚本
展开 4 条审计发现
- mediumxlsx_edit.py 对运行时传入的 --py 文件执行 exec()
assets/wps365-docs/scripts/xlsx_edit.py:234该路径来自智能体的 --py 参数,任何被说服传入的文件(例如刚从云文档中读取到的内嵌指令所指的文件)都会以当前用户身份执行,且可通过子进程使用 WPS 365 CLI 及其 delegated 令牌。行内 `本地可信脚本` 注释只是声明而非控制,路径也未被限制在工作目录内。
- medium图片下载文件名取自文档可控的 sourceKey,存在路径穿越
assets/wps365-docs/scripts/otl_fetch.py:119`key` 直接取自导出的 .otl 模型里的 `attrs.sourceKey`,下载地址也按同一 key 查找,因此攻击者构造的文档可同时携带二者。含 `../` 的 key 会让下载内容写到 `<out>/img` 之外(扩展名由魔数决定,仅限 .png/.jpg/.webp/.gif/.bin),在用户要求智能体读取该文档时形成受限的任意路径写入。
- low注入的技能提示要求模型把远程安装脚本直接管道进 shell
src/skill-catalog.js:193当找不到 wps365-cli 时,buildRuntimeHint 会把这段文本追加到技能正文,提示模型下载并执行远程脚本且无完整性校验。该主机被攻陷或配置错误时,会把这类会话变成用户机器上的任意代码执行。
- lowLibreOffice kit 查找会运行通配匹配到的首个 node/cli.js,无完整性校验
assets/wps365-docs/scripts/xlsx_edit.py:152搜索根包含 DSH_APP_ROOT / DSH_RESOURCES、~/.dsh/dsh-runtimes/* 以及脚本目录的上级目录(源码检出时即仓库根)。先匹配到的 `dependencies/node/bin/node`(或 `app.asar.unpacked/.../cli.js`)会被直接执行,没有属主或签名校验,搜索集中任何可写目录都可能提供被运行的二进制。
插件本身只注册内置技能;残余风险集中在随包 Python 脚本(执行 --py、附件路径穿越)以及管道安装提示。
口径:动态审计只会把风险往严重里判,不会把风险降下来(只升不降,不构成豁免);模型判错时由人工复核撤回,撤回后回到静态判定。合并判定 = 两层中更严的那一个。
免责声明:静态扫描与动态安全审计都是自动化分析,不构成安全保证。安装前请自行审查。
活跃度
最近提交 2026-10-21 · 活跃度:活跃
• 仓库创建: 2026-10-13
• 星标: ★ 0 · 复刻: 0
• 健康度: 活跃 — 近 30 天有提交
来源
作者 README
GitHub 原文 ↗展示作者仓库中的原始 README 内容,实时抓取、未做改写;优先加载中文版(README.zh-CN.md 等),无中文版时回退英文。
