飞书机器人配置助手
飞书机器人配置助手存在多处高危安全风险:文档中明确记录了curl|bash远程脚本执行命令(严重供应链攻击向量),且代码中存在未在SKILL.md中声明的shell执行能力(exec调用),同时依赖外部GitHub仓库形成完整的攻击链。
SKILL.md第29行明确展示了curl -fsSL https://raw.githubusercontent.com/jiebao360/feishu-bot-config-helper/main/install.sh | bash命令。这是业界公认的高危反模式,用户直接复制执行会将完整的远程脚本在特权模式下执行,攻击者可随时修改远程脚本内容进行供应链投毒。
SKILL.md:29 为什么得出这个结论
3/4 个维度触发发现 4 项声明之外的能力或越权行为。
提取到 1 个高危 IOC 或外联信号。
报告包含 5 步攻击链,另有 4 项高危或严重发现。
依赖结构存在,但暂未看到明显高危告警。
攻击链
初始入口 · SKILL.md:29
delivery · SKILL.md:29
exploitation · install.sh:20
privilege_escalation · scripts/auto-configure-bot.js:152
最终危害 · install.sh:20
风险分是怎么被拉高的
SKILL.md:29 明确记录 curl -fsSL https://raw.githubusercontent.com/jiebao360/feishu-bot-config-helper/main/install.sh | bash,这是经典的供应链攻击向量
scripts/auto-configure-bot.js:1 使用 require('child_process'),调用exec()执行shell命令,但SKILL.md中完全没有提及shell执行权限需求
install.sh:20 执行 git clone https://github.com/jiebao360/feishu-bot-config-helper.git,完整依赖外部不可控仓库
SKILL.md声明'NONE'权限但实际使用filesystem:WRITE(读写openclaw.json)和shell:WRITE(exec命令执行)
install.sh:26 执行 npm install,无 --save-exact 或 package-lock.json 验证,存在依赖替换风险
脚本解析并存储App ID和App Secret到配置文件,凭证处理流程未在文档中披露
最关键的证据
文档中记录curl|bash远程脚本执行命令
SKILL.md第29行明确展示了curl -fsSL https://raw.githubusercontent.com/jiebao360/feishu-bot-config-helper/main/install.sh | bash命令。这是业界公认的高危反模式,用户直接复制执行会将完整的远程脚本在特权模式下执行,攻击者可随时修改远程脚本内容进行供应链投毒。
SKILL.md:29 未声明的shell执行能力
scripts/auto-configure-bot.js导入并使用了child_process模块,通过exec()执行mkdir和openclaw gateway restart命令,但SKILL.md完全没有声明需要shell:WRITE权限,违反了文档与实现一致性原则。
scripts/auto-configure-bot.js:1 安装脚本依赖外部GitHub仓库
install.sh执行git clone从github.com/jiebao360/feishu-bot-config-helper拉取完整代码库。该仓库不受技能维护者控制,存在仓库被接管、代码被篡改的供应链攻击风险。
install.sh:20 npm install无依赖版本锁定
install.sh第26行执行npm install但没有任何版本锁定参数,可能导致依赖被恶意包替换(依赖混淆攻击或域名抢注)。package.json中所有依赖版本均为*。
install.sh:26 SKILL.md未声明实际使用的资源权限
该技能的SKILL.md声称使用飞书机器人自动配置功能,但完全没有声明所需的filesystem:WRITE(读写openclaw.json)、shell:WRITE(执行mkdir/restart)和environment:READ(读取HOME路径)权限。
SKILL.md:1 敏感凭证处理未在文档中披露
脚本会解析用户的App ID和App Secret并写入~/.openclaw/openclaw.json,这些敏感凭证的处理逻辑完全没有在SKILL.md中披露,用户无法评估凭证是否被安全处理或可能被日志记录。
scripts/auto-configure-bot.js:45 声明能力 vs 实际能力
scripts/auto-configure-bot.js:1 'const { exec } = require('child_process')' - 未在SKILL.md中声明 scripts/auto-configure-bot.js:158 writeFileSync写入~/.openclaw/openclaw.json,SKILL.md未声明filesystem权限 scripts/auto-configure-bot.js:13 读取 process.env.HOME 用于路径构造,未声明 install.sh:20 git clone外部仓库形成网络依赖,SKILL.md仅描述功能但未披露外部依赖 可疑产物与外联
curl -fsSL https://raw.githubusercontent.com/jiebao360/feishu-bot-config-helper/main/install.sh | bash SKILL.md:29
https://docs.openclaw.ai README.md:256
https://open.feishu.cn/ README.md:257
依赖与供应链
| 包名 | 版本 | 来源 | 漏洞 | 备注 |
|---|---|---|---|---|
| child_process | built-in | Node.js | 否 | Node.js内置模块,用于shell命令执行 |
| fs | built-in | Node.js | 否 | Node.js内置模块,用于文件读写 |
文件构成
scripts/auto-configure-bot.js README.md SKILL.md install.sh