moltspay_skill
MoltsPay 技能声称是支付工具,但其核心操作依赖于未版本锁定的 npm 包(moltspay)的全局安装与执行,setup.js 使用 execSync 执行任意命令,存在供应链风险;SKILL.md 未声明 npm 全局安装行为和外部网络请求范围。
为什么得出这个结论
2/4 个维度触发发现 3 项声明之外的能力或越权行为。
提取到 7 个一般风险产物,需要结合上下文判断。
报告包含 3 步攻击链,另有 2 项高危或严重发现。
发现 1 项需要关注的依赖或供应链线索。
攻击链
初始入口 · package.json:18
权限提升 · scripts/setup.sh:14
最终危害 · scripts/setup.js:32
风险分是怎么被拉高的
package.json postinstall 和 setup.sh/setup.js 均执行 'npm install -g moltspay',无版本锁定(^/*),moltspay 包源码未经审查
SKILL.md 描述了 moltspay CLI 命令但未声明 skill 会全局安装 moltspay npm 包,用户无法在安装前审查
setup.js 第 32 行使用 execSync('moltspay init ...') 执行未知包命令,若 moltspay 被篡改可执行任意代码
最关键的证据
npm 全局安装 moltspay 无版本锁定
setup.sh:14、setup.js:32 和 package.json postinstall 均执行 'npm install -g moltspay',未指定版本或 hash。若 moltspay 包名被抢注、账号被盗或版本被污染,安装的代码将拥有 agent 的完整 shell 执行权限。
scripts/setup.sh:14 SKILL.md 未声明 npm 全局安装行为
SKILL.md 列出了 moltspay CLI 命令(init/status/config/pay),但完全未提及 skill 会通过 npm 全局安装 moltspay 包这一核心前置步骤。用户阅读 SKILL.md 无法得知 skill 会执行 npm install -g。
SKILL.md:1 setup.js 使用 execSync 执行外部包命令
setup.js:32 调用 execSync('moltspay init --chain base ...'),若 moltspay 包被恶意替换,攻击者可在 init 命令中注入任意代码执行。setup.sh:27 通过 jq 解析 wallet.json 也存在命令注入风险(但路径由 ${HOME} 决定,攻击面较小)。
scripts/setup.js:32 未声明的 filesystem 写入
SKILL.md 未声明本 skill 会写入 ${HOME}/.moltspay/wallet.json 文件。setup.sh:27 和 setup.js:54 会在用户主目录创建 .moltspay 目录和 wallet.json,这是高度敏感的钱包文件存储位置。
scripts/setup.sh:27 package.json 无包版本锁定
moltspay-skill 自身的依赖(devDependencies/scripts)未指定版本,增加了依赖解析的不确定性。
package.json:16 声明能力 vs 实际能力
SKILL.md 未声明任何 shell 执行能力,但 scripts/setup.sh:14 和 scripts/setup.js:32 执行 npm install 和 moltspay 命令 SKILL.md 声明 GET https://moltspay.com/api/search、https://moltspay.com/api/services;实际 pay-zen7-video.sh 调用 moltspay pay https://juai8.com/zen7,符合声明范围 SKILL.md 未声明文件系统写入,但 setup.sh:27 和 setup.js:54 写入 ${HOME}/.moltspay/wallet.json setup.js 使用 os.homedir() 获取 HOME 路径(隐式依赖环境变量),未在 SKILL.md 声明 可疑产物与外联
https://juai8.com/zen7 README.md:29
https://moltspay.com/docs README.md:48
https://moltspay.com/services README.md:49
https://discord.gg/QwCJgVBxVK README.md:50
https://moltspay.com/api/search?q= SKILL.md:45
https://moltspay.com/api/services SKILL.md:46
https://juai8.com/.well-known/agent-services.json SKILL.md:52
依赖与供应链
| 包名 | 版本 | 来源 | 漏洞 | 备注 |
|---|---|---|---|---|
| moltspay | * | npm | 否 | 无版本锁定,未知发布者,通过 npm install -g 安装后拥有完整 shell 权限 |
| child_process | bundled | Node.js stdlib | 否 | Node.js 内置模块,无风险 |
| fs | bundled | Node.js stdlib | 否 | Node.js 内置模块,无风险 |
文件构成
SKILL.md scripts/setup.js scripts/setup.sh README.md package.json