安全决策报告

social-postcjo

SKILL.md 声明为仅验证+预览的安全门工具,但 SKILL.md.bak 暴露完整凭证收割、API密钥存储和加密私钥处理能力,两者存在严重声明-行为差异。

安装决策优先 来源: ClawHub 扫描时间: 2026/9/18
文件 3
IOC 4
越权项 4
发现 6
最直接的威胁证据
01
用户阅读 SKILL.md,被伪装成无害的安全门工具欺骗 初始入口 · SKILL.md
02
用户参考 SKILL.md.bak 配置凭证,收集 Twitter OAuth 密钥和以太坊私钥 权限提升 · SKILL.md.bak
03
用户将私钥写入 ~/.openclaw/farcaster-credentials.json(明文存储) 权限提升 · SKILL.md.bak

为什么得出这个结论

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

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

复核
隐藏执行与外联

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

阻止
攻击链与高危发现

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

复核
依赖与供应链卫生

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

攻击链

01
用户阅读 SKILL.md,被伪装成无害的安全门工具欺骗

初始入口 · SKILL.md:1

02
用户参考 SKILL.md.bak 配置凭证,收集 Twitter OAuth 密钥和以太坊私钥

权限提升 · SKILL.md.bak:61

03
用户将私钥写入 ~/.openclaw/farcaster-credentials.json(明文存储)

权限提升 · SKILL.md.bak:80

04
如 scripts/ 被植入恶意代码,可直接读取凭证文件外传或操控钱包转账

最终危害 · SKILL.md.bak:334

风险分是怎么被拉高的

文档欺骗 / 声明-行为不符 +25

SKILL.md 声称只做验证和预览,但 SKILL.md.bak 包含完整的凭证配置、API密钥收集、钱包私钥处理指令

敏感凭证暴露路径 +15

SKILL.md.bak 明确指定凭证存储路径 (~/.openclaw/.env, farcaster-credentials.json),并要求提供 Twitter OAuth 密钥和以太坊私钥

加密货币私钥处理 +10

要求提供 custodyPrivateKey 和 signerPrivateKey,且 SKILL.md.bak 中硬编码收款地址 0xA6a8736f18f383f1cc2d938576933E5eA7Df01A1

auto-confirm 绕过安全确认 +5

SKILL.md 禁止使用 auto-confirm,但 SKILL.md.bak 包含 -y/--yes 选项跳过确认,直接违反安全门承诺

可疑外部链接 +5

指向不明站点 https://openclawcli.forum,无可信背景

最关键的证据

高危 文档欺骗

SKILL.md 与 SKILL.md.bak 声明不一致

SKILL.md 描述为仅做验证和预览的安全门工具,声明 'Never use an auto-confirm flag';但 SKILL.md.bak 包含完整的凭证配置流程、auto-confirm (-y/--yes) 选项和实际发布功能。这是典型的文档欺骗 — 84.2% 恶意 skill 在文档中存在此类差异。

SKILL.md vs SKILL.md.bak:1
发布者应使用同一份文档;若实际包含凭证收集和 auto-confirm,则 SKILL.md 存在欺骗性声明
高危 凭证窃取

要求提供 Twitter OAuth 完整凭证集

SKILL.md.bak 明确要求用户提供 X_CONSUMER_KEY, X_CONSUMER_SECRET, X_ACCESS_TOKEN, X_ACCESS_TOKEN_SECRET,并将这些写入 ~/.openclaw/.env。这些凭证足以完全控制 Twitter 账户。

SKILL.md.bak:61
可信的工具应使用 OAuth PIN 或更安全的授权流程,而非直接要求用户提供密钥
高危 凭证窃取

要求提供以太坊钱包私钥

SKILL.md.bak 要求用户提供 custodyPrivateKey 和 signerPrivateKey,并存储为明文 JSON (~/.openclaw/farcaster-credentials.json)。这些私钥可用于完全控制加密钱包,存在被窃取的风险。

SKILL.md.bak:80
要求用户提供以太坊私钥是高危行为。正当应用应使用 MPC 或社交恢复,而非直接要求完整私钥
中危 持久化

硬编码加密货币收款地址

SKILL.md.bak 中硬编码了 Base 链收款地址 0xA6a8736f18f383f1cc2d938576933E5eA7Df01A1,每次发帖扣 0.001 USDC 到此地址。虽为平台正常费用,但收款地址与技能发布者关联不明。

SKILL.md.bak:334
费用地址应通过公开配置文件指定,而非硬编码在文档中
中危 文档欺骗

脚本文件不存在 — package 打包不完整

SKILL.md.bak 引用 scripts/post.sh、scripts/reply.sh、scripts/check-balance.sh,但预扫描确认 scripts/ 目录不存在。这是死链文档或打包失败,说明 SKILL.md.bak 是过时/未发布的备份。

SKILL.md.bak:157
验证脚本是否真实存在;若不存在则 SKILL.md.bak 是废弃文档,不应作为安全依据
低危 供应链

指向不明外部论坛链接

SKILL.md.bak 包含指向 https://openclawcli.forum 的链接,该站点背景不明,无公开可信信息。

SKILL.md.bak:8
确认外部站点的可信度,避免通过不可信渠道获取进一步指导

声明能力 vs 实际能力

文件系统 阻止
声明 NONE
→
推断 WRITE
SKILL.md.bak:157 要求写入 ~/.openclaw/.env 存储凭证
网络访问 阻止
声明 NONE
→
推断 WRITE
SKILL.md.bak:327 链接到 X API 定价页和 openclawcli.forum
环境变量 阻止
声明 NONE
→
推断 READ
SKILL.md.bak:62-65 读取 X_CONSUMER_KEY 等凭证写入 .env
credential 阻止
声明 NONE
→
推断 WRITE
SKILL.md.bak:61-72 收集 Twitter OAuth 密钥; SKILL.md.bak:80-86 收集以太坊私钥

可疑产物与外联

中危 外部 URL
https://openclawcli.forum

SKILL.md.bak:8

中危 外部 URL
https://developer.twitter.com/en/portal/dashboard

SKILL.md.bak:48

中危 外部 URL
https://developer.twitter.com/#pricing

SKILL.md.bak:327

中危 钱包地址
0xA6a8736f18f383f1cc2d938576933E5eA7Df01A1

SKILL.md.bak:334

依赖与供应链

没有结构化依赖告警。

文件构成

3 个文件 · 399 行
Other 1 个文件 · 363 行Markdown 1 个文件 · 31 行JSON 1 个文件 · 5 行
需关注文件 · 1
SKILL.md.bak Other · 363 行
要求提供 Twitter OAuth 完整凭证集 · 要求提供以太坊钱包私钥 · 硬编码加密货币收款地址 · 脚本文件不存在 — package 打包不完整 · 指向不明外部论坛链接 · https://openclawcli.forum · https://developer.twitter.com/en/portal/dashboard · https://developer.twitter.com/#pricing · 0xA6a8736f18f383f1cc2d938576933E5eA7Df01A1
其他文件 · SKILL.md · _meta.json

安全亮点

SKILL.md 包含良好的安全门设计原则(强制人工审批、dry-run 预览、禁止 auto-confirm)
SKILL.md 明确声明 'Never expose credentials' 和 'Never use an auto-confirm flag'
不包含代码混淆(base64/eval)、无反向 shell、无 C2 通信等直接恶意行为
技能本身无脚本代码,实际攻击面为零