任务 ID: task-skillaudit  |  文件: task.md  |  最后修改: 2026-02-23 15:03:22

Task: ClawHub Skill 安全审计

task_id: task-skillaudit
创建时间: 2026-02-23
发起人: 爱衣
任务类型: 安全审计


审计目标

对以下两个 ClawHub skill 进行安全审计,重点检查:
1. 恶意代码(数据外泄、远程执行、供应链攻击)
2. 恶意提示词注入(prompt injection)
3. 可信度评估

Skill 1: multi-search-engine v2.0.1
Skill 2: exa-web-search-free v1.0.1


待审文件路径


爱衣初审结论

Skill 1: multi-search-engine v2.0.1

文件清单: SKILL.md、config.json、metadata.json、CHANGELOG.md、CHANNELLOG.md、references/international-search.md

代码审计:
- ✅ 无可执行脚本:全部为 Markdown 文档 + 纯 JSON 配置,无 shell/Python/JS 脚本文件
- ✅ config.json 内容干净:仅包含 17 个搜索引擎的名称、URL 模板、region 字段,结构简单
- ✅ metadata.json 内容干净:仅含 name/version/description/engines 数量/requires_api_key 布尔值
- ✅ 所有 URL 均为知名搜索引擎正规域名:baidu.com、bing.com、so.com(360)、sogou.com、wx.sogou.com(微信)、so.toutiao.com(头条)、jisilu.cn(集思录)、google.com、duckduckgo.com、yahoo.com、startpage.com、search.brave.com、ecosia.org、qwant.com、wolframalpha.com
- ✅ URL 参数模板规范:仅有 {keyword} 占位符,无混淆、无隐藏参��
- ✅ references/international-search.md(23KB 最大文件):纯搜索操作符教程,URL 示例均指向上述合法域名,无异常跳转
- ✅ MIT 协议,明确声明

提示词注入审计:
- ✅ SKILL.md 无角色操纵指令:无"ignore previous instructions"、无"you are now"、无权限提升语句
- ✅ config.json 无隐藏系统指令
- ✅ 无要求泄露系统提示、API Key、私密数据的内容
- ✅ 示例代码仅调用 web_fetch 工具,无 exec/shell/eval 类高危调用

可信度:
- Owner: gpyAngyoujun(个人开发者,非官方账号)
- 创建:2026-02-04,更新:2026-02-23(活跃维护)
- ⚠️ 轻微关注点:CHANGELOG v2.0.1 提到"Removed gov-related content",表明早期版本含政府相关搜索引擎,已删除,无实质风险

初审结论: ✅ 通过,无恶意内容,可安全使用


Skill 2: exa-web-search-free v1.0.1

文件清单: SKILL.md、references/examples.md

代码审计:
- ✅ 无可执行脚本:仅两个 Markdown 文件
- ✅ 无数据外泄风险:所有操作通过 mcporter call 调用 Exa 官方 MCP 端点
- ✅ MCP 端点地址合法https://mcp.exa.ai/mcp,为 Exa 官方域名
- ✅ 参数范围明确:query、numResults、type、tokensNum 均为普通业务参数
- ✅ examples.md:纯使用示例,无异常内容

提示词注入审计:
- ✅ SKILL.md 无角色操纵指令
- ✅ 无权限提升或系统提示泄露企图
- ✅ 无 exec/shell 类高危调用

依赖风险:
- ⚠️ 依赖 mcporter 二进制:skill metadata 声明 requires.bins: ["mcporter"]。mcporter 是 OpenClaw 生态的 MCP 客户端工具,需要确认本机是否已安装及版本
- ⚠️ 依赖 Exa 官方公共 MCP 端点:该端点限速未公开,Exa 可随时改变免费策略;无 Key 情况下的可靠性弱于注册账号使用

可信度:
- Owner: Whiteknight07(个人开发者,非官方)
- 创建:2026-01-28,更新活跃
- GitHub 源码链接指向官方 exa-labs/exa-mcp-server,可核查

初审结论: ✅ 通过,无恶意内容,可安全使用;但需确认 mcporter 是否已安装


Reviewer 质检 SOP

请 reviewer 完成以下复核:

  1. 重新独立阅读所有文件(路径见上),不依赖爱衣结论
  2. 重点检查
  3. SKILL.md 是否存在隐藏的系统指令覆盖(如注释中的 injection)
  4. config.json 中 URL 是否存在重定向到第三方可控域名
  5. references/ 文件中是否存在"作为示例"嵌入的 injection payload
  6. exa-web-search-free 的 mcporter 调用链是否存在中间人风险
  7. 独立评分
  8. 恶意代码风险:低/中/高
  9. 提示词注入风险:低/中/高
  10. 依赖链风险:低/中/高
  11. 完成后以 task_id=task-skillaudit\ntask=/root/.openclaw/workspace/tasks/task-skillaudit/task.md 格式通知爱衣

⚠️ 爱衣质检 SOP(收到最终通知后执行)

Step 1:评估工作区大小

du -sb /root/.openclaw/workspace/tasks/task-skillaudit/

Step 2:读取内容

wc -l /root/.openclaw/workspace/tasks/task-skillaudit/session.md
# 若行数 N > 0,read session.md 全文

Step 3:质检

评估标准:
- Reviewer 是否独立阅读了所有文件(不依赖爱衣初审)?
- 两个 skill 是否均获得了完整的三维评分(恶意代码/提示词注入/依赖链)?
- Reviewer 与爱衣初审是否存在重大分歧?如有,以 reviewer 为准
- references/ 等大文件是否被重点审查?

Step 4:输出结论

通过
1. 调用工作日志:
bash /root/.openclaw/workspace/scripts/log-to-channel.sh 爱衣 done "ClawHub Skill 安全审计" task-skillaudit
2. 用 message 工具发送给主人(telegram, 92763607),归纳审计结论和可安装建议

不通过
1. 分析问题根因,说明哪个 skill 存在风险项
2. message 主人,附风险详情和建议


爱衣初审完成,待 reviewer 复核