安全扫描
OpenClaw
可疑
medium confidence该技能实现了合法的1Panel API客户端,但注册元数据中缺少了必需的凭据,且一些小不一致性扩大了攻击面——安装前请审查。
评估建议
该包大体上做了它声称的事情:一个读取型(目前)1Panel API客户端,使用TypeScript/JS编写。安装前注意:1) 代码需要ONEPANEL_BASE_URL和ONEPANEL_API_KEY(这些在注册元数据中未列出)——只提供用于读取/监控的范围内的密钥,并后续旋转它。2) CLI支持--input-file,会导致技能读取任何您传递的文件路径——不要允许代理传递任意文件路径,除非您信任它。3) 该技能可以从1Panel实例获取服务器日志和系统文件(对于此目的是预期的)——只连接到可信的1Panel实例。4) 由于元数据省略了必需的凭据,请将其视为一个信号来审计插件代码(dist/plugin.js和scripts/)并在授予机密信息之前验证配置UI。如果您需要降低风险,请要求只读API密钥并避免在运行时给予技能文件系统访问权限。...详细分析 ▾
⚠ 用途与能力
技能的名称/描述与其行为匹配:它实现了读取型1Panel API操作。然而,注册元数据声称“Required env vars: none”和“Primary credential: none”,而SKILL.md和代码都需要ONEPANEL_BASE_URL和ONEPANEL_API_KEY(加上可选的ONEPANEL_TIMEOUT_MS和ONEPANEL_SKIP_TLS_VERIFY)。注册要求与实际代码/README之间的不匹配是一个一致性问题,可能会误导用户关于机密要求的信息。
ℹ 指令范围
SKILL.md和代码将功能限制为查询/inspection端点,并明确保留mutation用于未来更改,这与描述的范围一致。CLI支持读取--input-file,当使用该标志时,代码将读取任意本地文件(node:fs/promises readFile)。模块暴露了读取服务器端日志和文件的端点(/api/v2/files/read, /api/v2/logs/system/files),这对于1Panel操作是预期的,但这意味着如果授予访问权限,技能将获取可能敏感的服务器日志。总体范围是合适的,但在授予代理运行时权限时,应考虑通过--input-file读取任意本地文件的能力。
✓ 安装机制
没有从网络下载任意代码的安装规格。存储库包括dist/下的编译JS和TypeScript源代码;package.json指向./dist/plugin.js用于OpenClaw。没有使用外部URL、安装程序或存档提取。与远程下载相比,这是低风险的。
⚠ 凭证需求
代码所需的环境变量(ONEPANEL_BASE_URL、ONEPANEL_API_KEY、可选TIMEOUT和SKIP_TLS)对于1Panel集成是合理的。问题在于注册元数据没有声明这些环境变量或主凭据——因此,用户或平台可能不会被警告需要API密钥(一个秘密)。这种疏漏是主要的比例性/红旗问题。
✓ 持久化与权限
该技能没有请求“always: true”,也不尝试修改其他技能或系统范围的设置。它提供了一个CLI和插件入口点(dist/plugin.js),但不声称超出正常操作的高级、永久特权。默认启用了自治调用,但没有与其他特权行为结合。
⚠ openclaw.plugin.json:30
安装源指向URL缩短器或原始IP。
安全有层次,运行前请审查代码。
运行时依赖
无特殊依赖
版本
latestv0.0.22026/3/6
OpenClaw 1Panel技能的初始TypeScript实现:- 添加了核心客户端、CLI入口点和模块注册脚本。- 引入了针对应用、容器、定时任务、日志、监控、节点、任务中心和网站的模块特定操作文件。- 实现了针对常见1Panel资源的认证API查询接口。- 为未来扩展保留了mutation端点定义。- 提供了详细的文档,概述了模块边界和执行指南。
● 无害
安装命令 点击复制
官方npx clawhub@latest install 1panel-skills
镜像加速npx clawhub@latest install 1panel-skills --registry https://cn.clawhub-mirror.com
技能文档
概述
使用此技能通过认证的HTTP API调用与1Panel实例交互。捆绑的资源是按模块分组的TypeScript源文件,目前实现了查询操作,保留了未来扩展的mutation端点定义。要求
- 需要一个具有目标实例访问权限的1Panel API密钥
- 在OpenClaw运行时执行TypeScript资源时,需要以下环境变量:
ONEPANEL_BASE_URL
- ONEPANEL_API_KEY
- 可选:ONEPANEL_TIMEOUT_MS
- 可选:ONEPANEL_SKIP_TLS_VERIFY=true工作流
- 选择与用户请求匹配的模块
- 从列表或搜索操作开始,识别确切的目标
- 确认目标后,读取详细信息、状态或日志
- 如果用户请求创建、更新、删除、重启、停止或其他mutation:
模块组
monitoring资源监控、仪表盘当前状态、顶部进程、历史监控数据、GPU历史记录websites网站列表/详细信息、Nginx配置读取、域名列表、HTTPS配置、SSL证书读取、网站日志读取apps应用程序目录查找、安装的应用程序列表、安装的应用程序详细信息、服务列表、端口/连接信息containers容器列表/状态/详细信息、检查、统计、流式日志读取logs操作日志、登录日志、系统日志文件列表、通用逐行日志读取cronjobs定时任务列表/详细信息、下一次执行预览、执行记录、记录日志读取task-center1Panel任务中心列表和执行计数nodes节点列表、简单节点列表、节点选项、节点摘要。一些端点可能需要Pro/XPack
资源
- references/module-groups.md 模块边界、常见入口点和保留写入范围的可读概述
- scripts/client.ts 共享的认证1Panel客户端
- scripts/cli.ts 可执行的CLI入口点用于OpenClaw或基于shell的工具调用
- scripts/index.ts 所有模块定义的注册
scripts/modules/.ts模块特定操作和保留mutation端点定义
执行注意事项
- Prefer使用CLI而让模型自己构造签名的HTTP请求
- 仓库可以出货预构建的运行时文件到
dist/,因此正常使用应直接调用node dist/scripts/cli.js ...而不需要先重建 - 只有在更改TypeScript源文件(如
plugin.ts或scripts//.ts)后,运行npm run build - OpenClaw插件加载应目标编译后的入口
dist/plugin.js,而不是TypeScript源文件 - 如果OpenClaw运行时可以直接执行TypeScript,请从scripts/index.ts导入并调用模块操作
- 如果运行时无法直接执行TypeScript,请使用TypeScript文件作为方法、路径、查询参数和请求有效负载形状的源真相
- 当前实现重点在查询和inspection操作;当您故意添加管理的写入流时,扩展保留的mutation定义
数据来源:ClawHub ↗ · 中文优化:龙虾技能库
OpenClaw 技能定制 / 插件定制 / 私有工作流定制
免费技能或插件可能存在安全风险,如需更匹配、更安全的方案,建议联系付费定制