安全决策报告

BeatClaw

BeatClaw 技能存在供应链攻击风险:通过 426 错误处理流程可远程覆盖 SKILL.md,凭证通过 API 传输存在外泄风险,但文档已声明部分风险。

安装决策优先 来源: ClawHub 扫描时间: 2026/9/12
文件 3
IOC 9
越权项 2
发现 5
最直接的威胁证据
01
用户安装 BeatClaw 技能 初始入口 · SETUP.md
02
426 错误触发远程 SKILL.md 下载 权限提升 · SKILL.md
03
攻击者控制 beatclaw.com 域名推送恶意 SKILL.md 覆盖本地文件 最终危害 · SKILL.md

为什么得出这个结论

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

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

复核
隐藏执行与外联

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

阻止
攻击链与高危发现

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

复核
依赖与供应链卫生

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

攻击链

01
用户安装 BeatClaw 技能

初始入口 · SETUP.md:6

02
426 错误触发远程 SKILL.md 下载

权限提升 · SKILL.md:45

03
攻击者控制 beatclaw.com 域名推送恶意 SKILL.md 覆盖本地文件

最终危害 · SKILL.md:43

风险分是怎么被拉高的

远程 SKILL.md 覆盖机制 +20

426 错误处理时执行 curl 下载远程 SKILL.md 并覆盖本地文件,无完整性验证

凭证通过 API 传输 +15

Suno/MVSEP API keys、PayPal 邮箱、API tokens 通过 update-agent-settings 端点传输

curl|bash 安装模式 +8

SETUP.md 展示 curl -fsSL URL | bash 安装方式,无签名验证

硬编码 API 密钥 +5

SKILL.md 包含硬编码的 Supabase REST API key

最关键的证据

高危 供应链

远程 SKILL.md 覆盖机制存在供应链攻击风险

426 错误处理流程要求代理执行 curl 下载远程 SKILL.md 并覆盖本地文件。攻击者若控制 beatclaw.com 域名或中间人攻击,可植入恶意指令覆盖技能定义。skill-card.md 已声明此风险但无实际缓解措施。

SKILL.md:45
在覆盖前验证下载内容的 GPG 签名或 SHA256 哈希;仅在可信网络环境下执行更新。
中危 凭证窃取

API 密钥通过 update-agent-settings 端点传输

Suno API key、MVSEP API key 通过 update-agent-settings 端点传输到 beatclaw.com 平台。凭证理论上应仅用于调用外部 API,但传输路径和存储安全性未知。

SKILL.md:92
确认平台是否记录或存储这些密钥;考虑使用环境变量替代 API 密钥传输。
中危 文档欺骗

文档未声明 shell 写入权限

SKILL.md 声明为纯文档型技能,但 426 错误处理流程实际需要 shell:WRITE 权限来执行 curl 下载和文件覆盖操作,与声称的能力不符。

SKILL.md:43
在 SKILL.md 权限声明部分明确列出 shell:WRITE 和 filesystem:WRITE 权限。
低危 供应链

curl|bash 安装模式缺乏完整性验证

SETUP.md 展示的安装命令使用 curl -fsSL URL | bash 模式,无签名验证或哈希校验。

SETUP.md:6
提供安装脚本的 SHA256 哈希供验证。
低危 敏感访问

硬编码 API 密钥暴露

SKILL.md 包含硬编码的 Supabase REST API key,可能被意外泄露。

SKILL.md:77
使用环境变量替代硬编码密钥。

声明能力 vs 实际能力

网络访问 通过
声明 READ
→
推断 READ
SKILL.md 全文:所有 API 调用均为外部网络请求
命令执行 阻止
声明 NONE
→
推断 WRITE
SKILL.md 426 错误处理:curl -fsSL https://www.beatclaw.com/skill > <your-skills-dir>/beatclaw/SKILL.md
文件系统 阻止
声明 NONE
→
推断 WRITE
SKILL.md 426 错误处理:覆盖本地 SKILL.md 文件
环境变量 通过
声明 NONE
→
推断 READ
SKILL.md 无声明,但实际通过 update-agent-settings 存储敏感环境信息

可疑产物与外联

中危 外部 URL
https://beatclaw.com/skill

SETUP.md:9

中危 外部 URL
https://mvsep.com/user-api

SETUP.md:62

中危 外部 URL
https://www.beatclaw.com/skill

SKILL.md:38

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

SKILL.md:76

中危 外部 URL
https://alxzlfutyhuyetqimlxi.supabase.co

SKILL.md:90

中危 外部 URL
https://beatclaw.com

SKILL.md:245

中危 外部 URL
https://beatclaw.com.

SKILL.md:255

中危 外部 URL
https://clawhub.ai/user/youngpietro

skill-card.md:9

中危 外部 URL
https://clawhub.ai/youngpietro/skills/beatclaw

skill-card.md:39

依赖与供应链

没有结构化依赖告警。

文件构成

3 个文件 · 380 行
Markdown 3 个文件 · 380 行
需关注文件 · 3
SKILL.md Markdown · 255 行
远程 SKILL.md 覆盖机制存在供应链攻击风险 · API 密钥通过 update-agent-settings 端点传输 · 文档未声明 shell 写入权限 · 硬编码 API 密钥暴露 · https://www.beatclaw.com/skill · https://sunoapi.org · https://alxzlfutyhuyetqimlxi.supabase.co · https://beatclaw.com · https://beatclaw.com.
skill-card.md Markdown · 61 行
https://clawhub.ai/user/youngpietro · https://clawhub.ai/youngpietro/skills/beatclaw
SETUP.md Markdown · 64 行
curl|bash 安装模式缺乏完整性验证 · https://beatclaw.com/skill · https://mvsep.com/user-api

安全亮点

skill-card.md 主动声明了远程 SKILL.md 覆盖、凭证处理、人类确认等已知风险
文档明确要求生成前必须获得人类确认
要求明确禁止暴露 secrets
API 密钥传输到第三方平台(Suno/MVSEP)而非存储在本地,有合理业务解释
无发现代码执行、凭证收割、Base64 混淆等高危指标