扫描报告
45 /100
1panel
Comprehensive 1Panel server management skill for AI agents — 580+ API endpoints
The skill is a legitimate 1Panel API client with no direct malicious code, but its SKILL.md severely under-reports exposed capabilities (exec_command, file write, SSH management, process kill) that are not declared in the documented command surface.
谨慎使用
Add exec_command, file write/delete, SSH key management, process kill, and host management to SKILL.md if they are intended features. If these capabilities are unintentional leakage from the underlying API library, restrict the CLI entry point to only the documented commands.
安全发现 8 项
| 严重性 | 安全发现 | 位置 |
|---|---|---|
| 中危 | Undeclared arbitrary command execution via 1Panel Terminal API 文档欺骗 | src/tools/system.ts:17 |
| 中危 | Undeclared filesystem write and delete operations 文档欺骗 | src/api/files.ts:70 |
| 中危 | Undeclared SSH credential and key management 文档欺骗 | src/tools/host.ts:3 |
| 中危 | Undeclared process kill capability 文档欺骗 | src/tools/system.ts:17 |
| 中危 | SKILL.md claims 580+ API endpoints but CLI exposes ~12 commands 文档欺骗 | SKILL.md:1 |
| 低危 | Unpinned dependency versions in package.json 供应链 | package.json:28 |
| 低危 | OPENCLAW_INSTALL.md contains 'rm -rf ~' command 文档欺骗 | OPENCLAW_INSTALL.md:175 |
| 低危 | No input validation or path restrictions on file operations 权限提升 | src/api/files.ts:30 |
| 资源类型 | 声明权限 | 推断权限 | 状态 | 证据 |
|---|---|---|---|---|
| 网络访问 | NONE | READ | ✓ 一致 | ONEPANEL_HOST env var, BaseAPI makes HTTP requests to 1Panel server |
| 文件系统 | NONE | WRITE | ✗ 越权 | src/api/files.ts:FileAPI.save() — file write not declared in SKILL.md |
| 命令执行 | NONE | WRITE | ✗ 越权 | src/tools/system.ts:exec_command — arbitrary command execution via 1Panel Termin… |
| 环境变量 | NONE | READ | ✓ 一致 | ONEPANEL_API_KEY, ONEPANEL_HOST, ONEPANEL_PORT, ONEPANEL_PROTOCOL read from env |
| 技能调用 | READ | READ | ✓ 一致 | SKILL.md defines CLI commands |
| 数据库 | NONE | WRITE | ✗ 越权 | src/api/database.ts — create/delete/operate databases, not declared in SKILL.md |
| 浏览器 | NONE | NONE | — | No browser access found |
| 剪贴板 | NONE | NONE | — | No clipboard access found |
1 严重 1 高危 7 项发现
严重 危险命令 危险 Shell 命令
rm -rf ~ OPENCLAW_INSTALL.md:175 高危 API 密钥 疑似硬编码凭证
API_KEY="your-1panel-api-key" OPENCLAW_INSTALL.md:37 中危 外部 URL 外部 URL
https://img.shields.io/npm/v/1panel-skill.svg README.md:3 中危 外部 URL 外部 URL
https://www.npmjs.com/package/1panel-skill README.md:3 中危 外部 URL 外部 URL
https://img.shields.io/badge/License-MIT-yellow.svg README.md:4 中危 外部 URL 外部 URL
https://opensource.org/licenses/MIT README.md:4 中危 外部 URL 外部 URL
https://1panel.cn/ README.md:390 目录结构
89 文件 · 274.5 KB · 7826 行 TypeScript 75f · 5671L
Markdown 7f · 1320L
Python 3f · 476L
JavaScript 2f · 286L
JSON 2f · 73L
├─
▾
scripts
│ ├─
1panel.mjs
JavaScript
│ ├─
generate_all_apis_fixed.py
Python
│ ├─
generate_all_apis.py
Python
│ ├─
generate_apis.py
Python
│ └─
generate-api.cjs
JavaScript
├─
▾
src
│ ├─
▾
api
│ │ ├─
ai.ts
TypeScript
│ │ ├─
apps.ts
TypeScript
│ │ ├─
backup.ts
TypeScript
│ │ ├─
backupaccount.ts
TypeScript
│ │ ├─
base.ts
TypeScript
│ │ ├─
clam.ts
TypeScript
│ │ ├─
composes.ts
TypeScript
│ │ ├─
container.ts
TypeScript
│ │ ├─
cronjobs.ts
TypeScript
│ │ ├─
dashboard.ts
TypeScript
│ │ ├─
database.ts
TypeScript
│ │ ├─
device.ts
TypeScript
│ │ ├─
disk.ts
TypeScript
│ │ ├─
fail2ban.ts
TypeScript
│ │ ├─
file.ts
TypeScript
│ │ ├─
files.ts
TypeScript
│ │ ├─
firewall.ts
TypeScript
│ │ ├─
ftp.ts
TypeScript
│ │ ├─
gpu.ts
TypeScript
│ │ ├─
host.ts
TypeScript
│ │ ├─
images.ts
TypeScript
│ │ ├─
index.ts
TypeScript
│ │ ├─
logs.ts
TypeScript
│ │ ├─
monitor.ts
TypeScript
│ │ ├─
networks.ts
TypeScript
│ │ ├─
node.ts
TypeScript
│ │ ├─
ollama.ts
TypeScript
│ │ ├─
openresty.ts
TypeScript
│ │ ├─
php.ts
TypeScript
│ │ ├─
process.ts
TypeScript
│ │ ├─
recyclebin.ts
TypeScript
│ │ ├─
runtime.ts
TypeScript
│ │ ├─
settings.ts
TypeScript
│ │ ├─
snapshot.ts
TypeScript
│ │ ├─
ssh.ts
TypeScript
│ │ ├─
system.ts
TypeScript
│ │ ├─
task.ts
TypeScript
│ │ ├─
terminal.ts
TypeScript
│ │ ├─
volumes.ts
TypeScript
│ │ └─
website.ts
TypeScript
│ ├─
▾
tools
│ │ ├─
ai.ts
TypeScript
│ │ ├─
app.ts
TypeScript
│ │ ├─
backup.ts
TypeScript
│ │ ├─
clam.ts
TypeScript
│ │ ├─
compose.ts
TypeScript
│ │ ├─
container.ts
TypeScript
│ │ ├─
cronjob.ts
TypeScript
│ │ ├─
database.ts
TypeScript
│ │ ├─
device.ts
TypeScript
│ │ ├─
disk.ts
TypeScript
│ │ ├─
fail2ban.ts
TypeScript
│ │ ├─
file.ts
TypeScript
│ │ ├─
firewall.ts
TypeScript
│ │ ├─
ftp.ts
TypeScript
│ │ ├─
gpu.ts
TypeScript
│ │ ├─
host.ts
TypeScript
│ │ ├─
image.ts
TypeScript
│ │ ├─
index.ts
TypeScript
│ │ ├─
network.ts
TypeScript
│ │ ├─
node.ts
TypeScript
│ │ ├─
ollama.ts
TypeScript
│ │ ├─
openresty.ts
TypeScript
│ │ ├─
php.ts
TypeScript
│ │ ├─
recyclebin.ts
TypeScript
│ │ ├─
runtime.ts
TypeScript
│ │ ├─
snapshot.ts
TypeScript
│ │ ├─
system.ts
TypeScript
│ │ ├─
task.ts
TypeScript
│ │ ├─
volume.ts
TypeScript
│ │ └─
website.ts
TypeScript
│ ├─
▾
types
│ │ └─
config.ts
TypeScript
│ ├─
▾
utils
│ │ └─
auth.ts
TypeScript
│ ├─
client-advanced.ts
TypeScript
│ ├─
client.ts
TypeScript
│ └─
index.ts
TypeScript
├─
API_COVERAGE_FINAL.md
Markdown
├─
API_COVERAGE_REPORT.md
Markdown
├─
IMPLEMENTATION_PLAN.md
Markdown
├─
OPENCLAW_INSTALL.md
Markdown
├─
package.json
JSON
├─
PROGRESS.md
Markdown
├─
README.md
Markdown
├─
SKILL.md
Markdown
└─
tsconfig.json
JSON
依赖分析 3 项
| 包名 | 版本 | 来源 | 已知漏洞 | 备注 |
|---|---|---|---|---|
@types/node | ^20.19.37 | npm | 否 | Version not pinned, uses caret range |
typescript | ^5.9.3 | npm | 否 | Version not pinned, uses caret range |
none (runtime) | N/A | npm | 否 | Zero runtime dependencies — only Node.js standard library used |
安全亮点
✓ No direct shell execution on the host machine — all operations route through the 1Panel REST API
✓ No obfuscation, base64-encoded payloads, or anti-analysis techniques detected
✓ No credential harvesting beyond the ONEPANEL_API_KEY which is necessary for the service
✓ No external network exfiltration or C2 communication — all requests target the configured 1Panel server
✓ No reverse shell, backdoor, or persistence mechanisms found in the codebase
✓ No hidden instructions in HTML comments or other steganographic patterns
✓ Clean auth implementation using MD5(token,timestamp) signature, matching 1Panel's expected protocol
✓ No malicious dependencies — package.json has zero runtime dependencies, only TypeScript dev tooling
✓ No npm scripts that execute remote content (no curl|bash, wget|sh patterns)
✓ Codebase is a well-structured TypeScript library, consistent with a legitimate API client