扫描报告
55 /100
pumpclaw-agent
Generate customer-ready Telegram polling bots + Express-style web server integrating Pump.fun Tokenized Agent payments
代码存在明确的文档-行为不符:SKILL.md声明"永不签署交易"但实际在buildAndPayInvoice中执行了tx.sign();同时未声明将用户私钥(Base58)存储于SQLite数据库。
谨慎使用
1) 修正SKILL.md文档,移除"never sign transactions"声明或删除签名代码;2) 添加私钥存储的安全警告;3) 生产环境应使用HSM/密钥管理服务替代数据库存储私钥。
攻击链 3 步
◎
入口 通过SKILL.md获取项目信息,伪装成合法的Telegram+Pump.fun支付模板
SKILL.md:1⬡
提权 部署该模板后,服务器持有所有用户存款钱包的Base58编码私钥
assets/template/src/server.js:55◉
影响 数据库被攻破后,攻击者可解码私钥并控制所有用户存款钱包(SOL/代币)
assets/template/src/server.js:52安全发现 5 项
| 严重性 | 安全发现 | 位置 |
|---|---|---|
| 高危 | SKILL.md声明与代码行为不符:交易签名 文档欺骗 | assets/template/src/server.js:119 |
| 高危 | SKILL.md未声明私钥存储行为 文档欺骗 | assets/template/src/server.js:55 |
| 中危 | 用户私钥在服务器端生成 敏感访问 | assets/template/src/server.js:52 |
| 中危 | 依赖版本未锁定 供应链 | assets/template/package.json:12 |
| 低危 | 票据验证逻辑允许小额欺骗 权限提升 | assets/template/src/server.js:74 |
| 资源类型 | 声明权限 | 推断权限 | 状态 | 证据 |
|---|---|---|---|---|
| 文件系统 | READ | READ | ✓ 一致 | scripts/stamp_template.sh:29 tar复制模板目录 |
| 命令执行 | NONE | NONE | — | 无shell命令执行 |
| 网络访问 | READ | READ | ✓ 一致 | server.js:188 fastify.listen仅绑定127.0.0.1 |
| 数据库 | WRITE | WRITE | ✗ 越权 | server.js:55-60 未在SKILL.md声明SQLite存储deposit_secret_b58 |
10 项发现
中危 外部 URL 外部 URL
http://127.0.0.1:3033 assets/template/README-FAST.md:4 中危 外部 URL 外部 URL
http://127.0.0.1:3033/health assets/template/README.md:19 中危 外部 URL 外部 URL
https://opencollective.com/fastify assets/template/package-lock.json:111 中危 外部 URL 外部 URL
https://paulmillr.com/funding/ assets/template/package-lock.json:275 中危 外部 URL 外部 URL
https://www.patreon.com/feross assets/template/package-lock.json:758 中危 外部 URL 外部 URL
https://feross.org/support assets/template/package-lock.json:762 中危 外部 URL 外部 URL
https://opencollective.com/express assets/template/package-lock.json:987 中危 外部 URL 外部 URL
https://dotenvx.com assets/template/package-lock.json:1079 中危 钱包地址 加密货币钱包地址
3j5fMGzUMCxWBJ3dV3a7Wz8y2f assets/template/package-lock.json:1141 中危 外部 URL 外部 URL
https://paypal.me/kozjak assets/template/package-lock.json:1768 目录结构
11 文件 · 114.6 KB · 3298 行 JSON 2f · 2239L
JavaScript 4f · 858L
Markdown 4f · 160L
Shell 1f · 41L
├─
▾
assets
│ └─
▾
template
│ ├─
▾
src
│ │ ├─
server.cjs
JavaScript
│ │ ├─
server.js
JavaScript
│ │ ├─
standalone-telegram.cjs
JavaScript
│ │ └─
telegram-bot.cjs
JavaScript
│ ├─
package-lock.json
JSON
│ ├─
package.json
JSON
│ ├─
README-FAST.md
Markdown
│ └─
README.md
Markdown
├─
▾
references
│ └─
PUMP_TOKENIZED_AGENTS.md
⚠
Markdown
├─
▾
scripts
│ └─
stamp_template.sh
Shell
└─
SKILL.md
Markdown
依赖分析 5 项
| 包名 | 版本 | 来源 | 已知漏洞 | 备注 |
|---|---|---|---|---|
@pump-fun/agent-payments-sdk | 3.0.0 | npm | 否 | ^前缀版本范围 |
@solana/web3.js | ^1.98.0 | npm | 否 | ^前缀版本范围 |
better-sqlite3 | ^12.6.2 | npm | 否 | ^前缀版本范围 |
dotenv | ^17.3.1 | npm | 否 | ^前缀版本范围 |
fastify | ^5.8.2 | npm | 否 | ^前缀版本范围 |
安全亮点
✓ 有API Token认证机制保护端点
✓ 使用@fastify/rate-limit进行速率限制
✓ 使用zod进行严格的输入验证
✓ 服务器仅绑定127.0.0.1而非0.0.0.0
✓ 使用事务确认机制处理区块链交易
✓ 有防重放的invoice状态管理