安全决策报告

gateway-monitor-installer

功能完整的 OpenClaw Gateway 监控安装工具,安装逻辑清晰、无恶意行为,但存在文档-实现差异(未声明 API 服务器和配置恢复功能)及 restore-config 端点可修改系统配置的隐患。

安装决策优先 来源: ClawHub 扫描时间: 2026/4/6
文件 6
IOC 3
越权项 3
发现 4

为什么得出这个结论

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

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

复核
隐藏执行与外联

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

通过
攻击链与高危发现

没有形成明确的恶意路径。

复核
依赖与供应链卫生

没有完整依赖信息,供应链判断需要保留弹性。

风险分是怎么被拉高的

文档-实现差异 +15

SKILL.md 仅声明安装/卸载,实际包含完整 API 服务器(gateway-monitor-server.js)、配置恢复等未声明功能

restore-config 端点 +10

/api/restore-config 可通过 HTTP 请求覆盖 ~/.openclaw/openclaw.json,无额外鉴权机制

本地 API 绑定 0.0.0.0 +5

服务器监听 0.0.0.0:18990 而非仅 localhost,扩展网络攻击面

最关键的证据

中危 文档欺骗

SKILL.md 未声明 API 服务器功能

SKILL.md 仅描述 install/uninstall/update 功能,但 gateway-monitor-server.js 实现完整的本地 API 服务器(监听 18990 端口),提供日志流、网关状态、会话上下文等 API 端点,属于明显的文档-行为差异。

SKILL.md:1
补全 SKILL.md 文档,声明实际包含的 API 服务器和所有端点功能。
中危 权限提升

/api/restore-config 可修改系统配置文件

restore-config 端点允许通过 GET ?confirm=true 覆盖 ~/.openclaw/openclaw.json。虽然仅限于备份文件,但攻击者(如 XSS、本地网络窃听)可触发配置恢复,可能影响 Gateway 行为。

assets/bin/gateway-monitor-server.js:580
添加额外鉴权(如会话 token 检查)或限制为 localhost 来源。
低危 敏感访问

读取 MiniMax 凭证配置文件

代码从 ~/.openclaw/agents/main/agent/auth-profiles.json 读取 API key 用于外部请求。凭证仅发送至 minimaxi.com,但端点响应中 keyMasked 会暴露脱敏 key。

assets/bin/gateway-monitor-server.js:215
确保本地 API 仅限受信任应用访问;考虑不在 API 响应中返回 keyMasked。
低危 权限提升

API 服务器监听 0.0.0.0 扩展攻击面

gateway-monitor-server.js 绑定 0.0.0.0:18990 而非 127.0.0.1,使同一网络内其他设备可访问本地 API。

assets/bin/gateway-monitor-server.js:700
考虑绑定 127.0.0.1 限制为本地访问,除非需要远程监控。

声明能力 vs 实际能力

文件系统 通过
声明 WRITE
→
推断 WRITE
install.sh:22-24, gateway-monitor-server.js:restore-config
命令执行 通过
声明 WRITE
→
推断 WRITE
install.sh:50-54 launchctl commands
网络访问 阻止
声明 NONE
→
推断 READ
gateway-monitor-server.js:MINIMAX_REMAINS_URL fetch
环境变量 阻止
声明 NONE
→
推断 READ
gateway-monitor-server.js:MINIMAX_CP_KEY env read
credential 阻止
声明 NONE
→
推断 READ
gateway-monitor-server.js:MINIMAX_AUTH_PROFILE_PATH read

可疑产物与外联

中危 外部 URL
http://127.0.0.1:18990

SKILL.md:40

中危 外部 URL
https://www.minimaxi.com/v1/api/openplatform/coding_plan/remains

assets/bin/gateway-monitor-server.js:28

中危 外部 URL
http://127.0.0.1:18990/api/summary

scripts/status.sh:25

依赖与供应链

没有结构化依赖告警。

文件构成

6 个文件 · 1527 行
JavaScript 1 个文件 · 1321 行Shell 4 个文件 · 159 行Markdown 1 个文件 · 47 行
需关注文件 · 3
assets/bin/gateway-monitor-server.js JavaScript · 1321 行
/api/restore-config 可修改系统配置文件 · 读取 MiniMax 凭证配置文件 · API 服务器监听 0.0.0.0 扩展攻击面 · https://www.minimaxi.com/v1/api/openplatform/coding_plan/remains
SKILL.md Markdown · 47 行
SKILL.md 未声明 API 服务器功能 · http://127.0.0.1:18990
scripts/status.sh Shell · 28 行
http://127.0.0.1:18990/api/summary
其他文件 · install.sh · gateway-watchdog.sh · uninstall.sh

安全亮点

代码结构清晰,无混淆或隐藏执行逻辑
无 base64 编码、eval() 动态执行或反向 shell 等高危指标
launchctl 操作符合 macOS 系统管理规范
restore-config 仅操作备份文件,降低破坏风险
maskKey() 函数对 API key 进行脱敏处理
包含完整的错误处理和超时机制
使用 set -euo pipefail 强化 Shell 脚本安全性