扫描报告
42 /100
moltspay_skill
Pay for AI services via MoltsPay protocol using USDC on Base chain
MoltsPay 技能声称是支付工具,但其核心操作依赖于未版本锁定的 npm 包(moltspay)的全局安装与执行,setup.js 使用 execSync 执行任意命令,存在供应链风险;SKILL.md 未声明 npm 全局安装行为和外部网络请求范围。
谨慎使用
1. 立即在 package.json 中将 moltspay 锁定到已知可信版本;2. SKILL.md 应明确声明 'npm install -g moltspay' 这一高危操作;3. 审查 moltspay npm 包的源码和发布历史,确认为可信包;4. 考虑将安装步骤从运行时移至部署时,避免在用户环境执行未知代码。
攻击链 3 步
◎
入口 用户安装/触发 skill,package.json postinstall 或 setup.sh/setup.js 执行 npm install -g moltspay(无版本锁定)
package.json:18⬡
提权 攻击者通过 npm 包劫持(抢注/账户被盗/恶意版本)发布恶意版 moltspay,agent 运行时自动安装
scripts/setup.sh:14◉
影响 恶意 moltspay 包在 init/status/pay 命令中植入代码,窃取钱包私钥、收割环境变量或建立持久化后门
scripts/setup.js:32安全发现 5 项
| 严重性 | 安全发现 | 位置 |
|---|---|---|
| 高危 | npm 全局安装 moltspay 无版本锁定 供应链 | scripts/setup.sh:14 |
| 高危 | SKILL.md 未声明 npm 全局安装行为 文档欺骗 | SKILL.md:1 |
| 中危 | setup.js 使用 execSync 执行外部包命令 代码执行 | scripts/setup.js:32 |
| 中危 | 未声明的 filesystem 写入 文档欺骗 | scripts/setup.sh:27 |
| 低危 | package.json 无包版本锁定 供应链 | package.json:16 |
| 资源类型 | 声明权限 | 推断权限 | 状态 | 证据 |
|---|---|---|---|---|
| 命令执行 | NONE | WRITE | ✗ 越权 | SKILL.md 未声明任何 shell 执行能力,但 scripts/setup.sh:14 和 scripts/setup.js:32 执行 npm ins… |
| 网络访问 | READ | READ | ✓ 一致 | SKILL.md 声明 GET https://moltspay.com/api/search、https://moltspay.com/api/service… |
| 文件系统 | NONE | WRITE | ✗ 越权 | SKILL.md 未声明文件系统写入,但 setup.sh:27 和 setup.js:54 写入 ${HOME}/.moltspay/wallet.json |
| 环境变量 | NONE | READ | ✗ 越权 | setup.js 使用 os.homedir() 获取 HOME 路径(隐式依赖环境变量),未在 SKILL.md 声明 |
7 项发现
中危 外部 URL 外部 URL
https://juai8.com/zen7 README.md:29 中危 外部 URL 外部 URL
https://moltspay.com/docs README.md:48 中危 外部 URL 外部 URL
https://moltspay.com/services README.md:49 中危 外部 URL 外部 URL
https://discord.gg/QwCJgVBxVK README.md:50 中危 外部 URL 外部 URL
https://moltspay.com/api/search?q= SKILL.md:45 中危 外部 URL 外部 URL
https://moltspay.com/api/services SKILL.md:46 中危 外部 URL 外部 URL
https://juai8.com/.well-known/agent-services.json SKILL.md:52 目录结构
7 文件 · 9.9 KB · 364 行 Markdown 2f · 175L
Shell 3f · 87L
JavaScript 1f · 66L
JSON 1f · 36L
├─
▾
scripts
│ ├─
ensure-wallet.sh
Shell
│ ├─
pay-zen7-video.sh
Shell
│ ├─
setup.js
JavaScript
│ └─
setup.sh
Shell
├─
package.json
JSON
├─
README.md
Markdown
└─
SKILL.md
Markdown
依赖分析 3 项
| 包名 | 版本 | 来源 | 已知漏洞 | 备注 |
|---|---|---|---|---|
moltspay | * | npm | 否 | 无版本锁定,未知发布者,通过 npm install -g 安装后拥有完整 shell 权限 |
child_process | bundled | Node.js stdlib | 否 | Node.js 内置模块,无风险 |
fs | bundled | Node.js stdlib | 否 | Node.js 内置模块,无风险 |
安全亮点
✓ 代码逻辑简单清晰,无混淆、无 base64 编码执行
✓ 未发现凭证收割、环境变量遍历、SSH/AWS 密钥访问等敏感文件操作
✓ 未发现反向 shell、C2 通信、数据外泄的明确证据
✓ 钱包文件存储在标准用户目录,未外传
✓ 脚本有基本的错误处理(set -e、try-catch)