安全决策报告

ekybot-connector

Skill 声称「本地运行无远程代码执行」,但实际通过 execSync 修改 OpenClaw 配置、创建 workspace 文件、安装系统服务。SKILL.md 声称「不发送对话内容」,但 poll-ekybot.js 实际将消息内容 POST 到外部 API。存在文档-行为严重不符的阴影功能。

安装决策优先 来源: 手动上传 扫描时间: 2026/4/5
文件 19
IOC 23
越权项 4
发现 6
最直接的威胁证据
01
用户安装 ekybot-connector skill 初始入口 · SKILL.md
02
execSync执行openclaw CLI命令修改配置 权限提升 · scripts/ekybot-agent-sync.js
03
创建workspace目录和文件到~/.openclaw/ 权限提升 · scripts/setup_communication.sh

为什么得出这个结论

2/4 个维度触发
阻止
声明与实际能力

发现 4 项声明之外的能力或越权行为。

复核
隐藏执行与外联

提取到 23 个一般风险产物,需要结合上下文判断。

阻止
攻击链与高危发现

报告包含 5 步攻击链,另有 2 项高危或严重发现。

通过
依赖与供应链卫生

依赖结构存在,但暂未看到明显高危告警。

攻击链

01
用户安装 ekybot-connector skill

初始入口 · SKILL.md:1

02
execSync执行openclaw CLI命令修改配置

权限提升 · scripts/ekybot-agent-sync.js:99

03
创建workspace目录和文件到~/.openclaw/

权限提升 · scripts/setup_communication.sh:133

04
安装systemd/LaunchAgent系统服务实现持久化

权限提升 · scripts/install-poller.sh:68

05
消息内容通过POST外传到Ekybot API

最终危害 · scripts/poll-ekybot.js:157

风险分是怎么被拉高的

文档欺骗 +20

SKILL.md声称「无远程代码执行」但代码通过execSync修改系统配置

阴影功能 +15

未声明的workspace文件创建、服务安装、gateway重启操作

敏感凭证暴露 +10

AGENT_TOKEN硬编码在源码中(dd9fa892b8cd30b5...)

数据外传声明不符 +10

SKILL.md声称不发送对话内容,但实际转发消息内容到外部API

最关键的证据

高危 文档欺骗

文档声明与实际能力严重不符

SKILL.md声称「Runs locally on your machine — no remote code execution」,但代码中多处使用 execSync 执行 openclaw CLI 命令,包括 config set、gateway restart 等系统修改操作。

SKILL.md:104-108:104
更新文档明确声明需要 filesystem:WRITE 和 shell:WRITE 权限,或移除执行系统命令的代码路径
高危 文档欺骗

声称不发送对话内容但实际外传

SKILL.md声称「What is never sent: Actual conversation content or prompts」,但 poll-ekybot.js 会将消息内容通过 forwardToGateway 函数转发到 Ekybot API。

scripts/poll-ekybot.js:95-98:95
更新隐私声明或移除消息内容转发功能
中危 凭证窃取

硬编码 API Token 在源码中

poll-ekybot.js 和 ekybot-agent-sync.js 中硬编码了 AGENT_TOKEN,可能导致凭证泄露风险。

scripts/poll-ekybot.js:14:14
将 Token 移到配置文件或环境变量,避免硬编码
中危 权限提升

未声明的系统服务安装

install-poller.sh 会创建 systemd service 或 LaunchAgent,属于高权限系统级修改,未在 SKILL.md 中声明。

scripts/install-poller.sh:68-95:68
在文档中明确声明需要安装系统服务,或改为用户手动安装
中危 文档欺骗

未声明的配置文件写入

setup_communication.sh 会创建 SOUL.md、AGENTS.md、INTER-AGENT-PROTOCOL.md 等文件,并修改 ~/.openclaw/openclaw.json,未在声明中提及。

scripts/setup_communication.sh:133-210:133
在文档中声明会创建和修改的配置文件列表
低危 敏感访问

收集系统指纹信息

send_telemetry.sh 收集 hostname、platform、CPU usage 等系统信息并上传。

scripts/send_telemetry.sh:108-123:108
明确告知用户收集哪些系统信息

声明能力 vs 实际能力

文件系统 阻止
声明 NONE
推断 WRITE
scripts/ekybot-agent-sync.js:96 创建workspace目录
命令执行 阻止
声明 NONE
推断 WRITE
scripts/ekybot-agent-sync.js:9 使用execSync执行openclaw CLI
环境变量 阻止
声明 NONE
推断 READ
scripts/send_telemetry.sh:108 收集hostname/platform等系统信息
网络访问 阻止
声明 READ
推断 WRITE
scripts/poll-ekybot.js:157 将消息POST到Ekybot API

可疑产物与外联

中危 外部 URL
https://www.ekybot.com

SKILL.md:10

中危 外部 URL
https://www.ekybot.com/companion

SKILL.md:51

中危 外部 URL
https://nodejs.org

install.sh:29

中危 外部 URL
https://docs.openclaw.ai

install.sh:35

中危 外部 URL
https://clawhub.ai/regiomag/ekybot-connector

install.sh:139

中危 外部 URL
https://discord.com/invite/clawd

install.sh:140

中危 外部 URL
https://www.ekybot.com/api

references/api.md:8

中危 外部 URL
https://www.ekybot.com/api/workspaces/register

references/api.md:246

中危 外部 URL
https://www.ekybot.com/api/workspaces/ws_123/health

references/api.md:257

中危 外部 URL
https://www.ekybot.com/api/workspaces/ws_123/telemetry

references/api.md:264

中危 外部 URL
https://my-gateway.example.com

references/api.md:452

中危 外部 URL
https://www.ekybot.com/api/channels

references/api.md:456

依赖与供应链

包名版本来源漏洞备注
node-fetch ^3.3.2 npm 使用fetch而非XMLHttpRequest,符合现代安全实践
ws ^8.14.2 npm WebSocket库
dotenv ^16.3.1 npm 环境变量加载库
chalk ^4.1.2 npm 终端颜色输出库

文件构成

19 个文件 · 3951 行
Shell 9 个文件 · 2013 行Markdown 5 个文件 · 1366 行JavaScript 2 个文件 · 498 行JSON 3 个文件 · 74 行
需关注文件 · 8
scripts/setup_communication.sh Shell · 515 行
https://ekybot.com
references/api.md Markdown · 475 行
https://www.ekybot.com/api · https://www.ekybot.com/api/workspaces/register · https://www.ekybot.com/api/workspaces/ws_123/health · https://www.ekybot.com/api/workspaces/ws_123/telemetry · https://my-gateway.example.com · https://www.ekybot.com/api/channels · https://www.ekybot.com/api/messages
scripts/poll-ekybot.js JavaScript · 292 行
http://127.0.0.1:18789
references/troubleshooting.md Markdown · 350 行
https://www.ekybot.com/api/workspaces/YOUR_ID/health · https://www.ekybot.com/api/workspaces/YOUR_ID/telemetry · [email protected]
scripts/validate_setup.sh Shell · 282 行
https://www.ekybot.com/api/workspaces/$workspace_id/health
scripts/send_telemetry.sh Shell · 258 行
https://www.ekybot.com/api/workspaces/$WORKSPACE_ID/telemetry
SKILL.md Markdown · 182 行
https://www.ekybot.com · https://www.ekybot.com/companion
scripts/install-poller.sh Shell · 166 行
http://www.apple.com/DTDs/PropertyList-1.0.dtd · https://www.ekybot.com/api/agents
其他文件 · ekybot-agent-sync.js · start_telemetry.sh · INTER-AGENT-PROTOCOL.md · health_check.sh

安全亮点

代码结构清晰,主要功能是合法的代理-云端通信桥接
使用 HTTPS 进行网络通信
配置文件使用 chmod 600 保护 API key
有健康检查和验证脚本
支持卸载功能