ekybot-connector
Skill 声称「本地运行无远程代码执行」,但实际通过 execSync 修改 OpenClaw 配置、创建 workspace 文件、安装系统服务。SKILL.md 声称「不发送对话内容」,但 poll-ekybot.js 实际将消息内容 POST 到外部 API。存在文档-行为严重不符的阴影功能。
Why this conclusion was reached
2/4 dimensions flagged4 undeclared or violating capabilities were inferred.
23 lower-risk artifacts were extracted and still need context.
The report includes 5 attack-chain steps and 2 severe findings.
Dependencies are present but no obvious high-risk issue stands out.
Attack Chain
Entry · SKILL.md:1
Escalation · scripts/ekybot-agent-sync.js:99
Escalation · scripts/setup_communication.sh:133
Escalation · scripts/install-poller.sh:68
Impact · scripts/poll-ekybot.js:157
What drove the risk score up
SKILL.md声称「无远程代码执行」但代码通过execSync修改系统配置
未声明的workspace文件创建、服务安装、gateway重启操作
AGENT_TOKEN硬编码在源码中(dd9fa892b8cd30b5...)
SKILL.md声称不发送对话内容,但实际转发消息内容到外部API
Most important evidence
文档声明与实际能力严重不符
SKILL.md声称「Runs locally on your machine — no remote code execution」,但代码中多处使用 execSync 执行 openclaw CLI 命令,包括 config set、gateway restart 等系统修改操作。
SKILL.md:104-108:104 声称不发送对话内容但实际外传
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 未声明的系统服务安装
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 Declared capability vs actual capability
scripts/ekybot-agent-sync.js:96 创建workspace目录 scripts/ekybot-agent-sync.js:9 使用execSync执行openclaw CLI scripts/send_telemetry.sh:108 收集hostname/platform等系统信息 scripts/poll-ekybot.js:157 将消息POST到Ekybot API Suspicious artifacts and egress
https://www.ekybot.com SKILL.md:10
https://www.ekybot.com/companion SKILL.md:51
https://nodejs.org install.sh:29
https://docs.openclaw.ai install.sh:35
https://clawhub.ai/regiomag/ekybot-connector install.sh:139
https://discord.com/invite/clawd install.sh:140
https://www.ekybot.com/api references/api.md:8
https://www.ekybot.com/api/workspaces/register references/api.md:246
https://www.ekybot.com/api/workspaces/ws_123/health references/api.md:257
https://www.ekybot.com/api/workspaces/ws_123/telemetry references/api.md:264
https://my-gateway.example.com references/api.md:452
https://www.ekybot.com/api/channels references/api.md:456
Dependencies and supply chain
| Package | Version | Source | Known vuln | Notes |
|---|---|---|---|---|
| node-fetch | ^3.3.2 | npm | No | 使用fetch而非XMLHttpRequest,符合现代安全实践 |
| ws | ^8.14.2 | npm | No | WebSocket库 |
| dotenv | ^16.3.1 | npm | No | 环境变量加载库 |
| chalk | ^4.1.2 | npm | No | 终端颜色输出库 |
File composition
scripts/setup_communication.sh references/api.md scripts/poll-ekybot.js references/troubleshooting.md scripts/validate_setup.sh scripts/send_telemetry.sh SKILL.md scripts/install-poller.sh