扫描报告
55 /100
baidu-netdisk-skill
百度网盘文件管理 for OpenClaw - OAuth 2.0 一键授权,支持列表/搜索/下载/上传
硬编码加密密钥导致声称的 AES-256 加密形同虚设,文档-行为存在欺骗,依赖无版本锁定存在供应链风险,但无主动恶意行为证据。
谨慎使用
1. 立即将 ENCRYPTION_KEY 替换为用户提供的密钥或从密钥管理服务获取;2. 在 SKILL.md 中完整声明 filesystem 路径访问和 env 读取;3. 锁定所有依赖版本并定期审查已知漏洞;4. 移除 README 中的付费订阅推广链接。
安全发现 6 项
| 严重性 | 安全发现 | 位置 |
|---|---|---|
| 高危 | 硬编码加密密钥使 AES-256 加密承诺失效 文档欺骗 | src/auth.js:18 |
| 高危 | 内置加密密钥使已加密 Token 可被批量解密 凭证窃取 | src/baidu-api.js:20 |
| 中危 | npm 依赖无版本锁定 供应链 | package.json:38 |
| 中危 | skill.json 声明 tools: ['exec'] 但代码无任何 exec 调用 文档欺骗 | skill.json:18 |
| 中危 | 未声明的敏感文件路径访问 权限提升 | src/auth.js:35 |
| 低危 | README.md 包含付费订阅推广内容 文档欺骗 | README.md:337 |
| 资源类型 | 声明权限 | 推断权限 | 状态 | 证据 |
|---|---|---|---|---|
| 文件系统 | NONE | READ | ✓ 一致 | src/auth.js:35 使用 Conf 库读取 ~/.config/configstore/baidu-netdisk-skill.json; src/b… |
| 网络访问 | READ | READ | ✓ 一致 | 仅调用 pan.baidu.com 和 openapi.baidu.com,与 skill.json 声明的 externalDomains 一致 |
| 环境变量 | NONE | READ | ✓ 一致 | src/auth.js:17-18, src/baidu-api.js:20-21 读取 ENCRYPTION_KEY/BAIDU_API_KEY/BAIDU_… |
| 命令执行 | NONE | NONE | — | skill.json 声明 tools: ['exec'] 但代码中无任何 child_process.exec/spawn/popen 调用 |
27 项发现
中危 外部 URL 外部 URL
https://img.shields.io/badge/License-MIT-yellow.svg README.md:5 中危 外部 URL 外部 URL
https://opensource.org/licenses/MIT README.md:5 中危 外部 URL 外部 URL
https://img.shields.io/badge/Node.js-%3E%3D18.0.0-green.svg README.md:6 中危 外部 URL 外部 URL
https://nodejs.org/ README.md:6 中危 外部 URL 外部 URL
https://img.shields.io/badge/ClawHub-Skill-blue.svg README.md:7 中危 外部 URL 外部 URL
https://clawhub.ai/ README.md:7 中危 外部 URL 外部 URL
https://img.shields.io/badge/Security-Self--Audited-brightgreen.svg README.md:8 中危 外部 URL 外部 URL
https://img.shields.io/badge/Privacy-No%20Data%20Collection-success.svg README.md:9 中危 外部 URL 外部 URL
https://pan.baidu.com/union/console README.md:150 中危 外部 URL 外部 URL
https://clawhub.ai/niukesi/baidu-netdisk-skill TODO.md:60 中危 外部 URL 外部 URL
https://pan.baidu.com/union/apply docs/QUICKSTART.md:7 中危 外部 URL 外部 URL
https://openapi.baidu.com/oauth/2.0/authorize? docs/QUICKSTART.md:30 中危 外部 URL 外部 URL
https://openapi.baidu.com/oauth/2.0/token?grant_type=authorization_code&code=你的 docs/QUICKSTART.md:40 中危 外部 URL 外部 URL
https://opencollective.com/eslint package-lock.json:43 中危 外部 URL 外部 URL
https://www.patreon.com/feross package-lock.json:331 中危 外部 URL 外部 URL
https://feross.org/support package-lock.json:335 中危 外部 URL 外部 URL
https://eslint.org/version-support package-lock.json:723 中危 外部 URL 外部 URL
https://opencollective.com/fastify package-lock.json:925 中危 外部 URL 外部 URL
https://openapi.baidu.com/oauth/2.0/authorize?response_type=code&client_id=$ src/auth.js:54 中危 外部 URL 外部 URL
https://openapi.baidu.com/oauth/2.0/token src/auth.js:80 中危 外部 URL 外部 URL
https://pan.baidu.com/rest/2.0/xpan src/baidu-api.js:40 中危 外部 URL 外部 URL
https://pan.baidu.com/union/doc/pksg0s9ns src/baidu-api.js:99 中危 外部 URL 外部 URL
https://pan.baidu.com/rest/2.0/xpan/nas src/baidu-api.js:103 中危 外部 URL 外部 URL
https://pan.baidu.com/rest/2.0/xpan/file src/baidu-api.js:131 提示 邮箱 邮箱地址
[email protected] README.md:299 提示 邮箱 邮箱地址
[email protected] SECURITY.md:161 提示 邮箱 邮箱地址
[email protected] package-lock.json:1085 目录结构
13 文件 · 121.0 KB · 3972 行 JSON 4f · 2271L
Markdown 5f · 907L
JavaScript 3f · 686L
Shell 1f · 108L
├─
▾
docs
│ └─
QUICKSTART.md
Markdown
├─
▾
src
│ ├─
auth.js
JavaScript
│ ├─
baidu-api.js
JavaScript
│ └─
index.js
JavaScript
├─
_meta.json
JSON
├─
package-lock.json
JSON
├─
package.json
JSON
├─
README.md
Markdown
├─
SECURITY.md
Markdown
├─
skill.json
JSON
├─
SKILL.md
Markdown
├─
test-local.sh
Shell
└─
TODO.md
Markdown
依赖分析 6 项
| 包名 | 版本 | 来源 | 已知漏洞 | 备注 |
|---|---|---|---|---|
axios | ^1.6.0 | npm | 否 | semver caret 范围,未锁定版本;需关注已知漏洞报告 |
crypto-js | ^4.2.0 | npm | 否 | semver caret 范围,未锁定版本;本项目用于 AES 加密 |
commander | ^11.1.0 | npm | 否 | semver caret 范围,未锁定版本 |
conf | ^10.2.0 | npm | 否 | semver caret 范围,未锁定版本;存储配置到 ~/.config |
ora | ^5.4.1 | npm | 否 | semver caret 范围,未锁定版本 |
chalk | ^4.1.2 | npm | 否 | semver caret 范围,未锁定版本 |
安全亮点
✓ 代码结构清晰,核心功能(文件列表/搜索/上传/下载)与文档描述一致
✓ 仅调用百度官方 API(pan.baidu.com, openapi.baidu.com),无第三方追踪
✓ 无主动的恶意行为证据(无反向 shell、无 base64 编码执行、无凭证外传)
✓ OAuth 2.0 授权流程设计合理,不存储用户明文密码
✓ Token 刷新机制实现正确,refreshAccessToken 方法有效
✓ test-local.sh 提供本地测试支持,辅助安全验证