扫描报告
5 /100
smart-search
智能搜索路由工具,支持Gemini/Brave API配额管理和web_fetch降级
智能搜索路由工具,功能实现与文档声明一致,包含完善的SSRF防护和提示注入过滤,无恶意行为。
可以安装
该技能可安全使用。建议按需配置API密钥和配额限制。
| 资源类型 | 声明权限 | 推断权限 | 状态 | 证据 |
|---|---|---|---|---|
| 文件系统 | WRITE | WRITE | ✓ 一致 | SKILL.md:写入日志和配额文件; index.js:写入~/.openclaw路径 |
| 网络访问 | READ | READ | ✓ 一致 | 仅访问Gemini API、Brave API和web_fetch预允许的搜索引擎 |
| 命令执行 | NONE | NONE | — | index.js无child_process调用 |
| 环境变量 | NONE | READ | ✓ 一致 | 仅读取OPENCLAW_CONFIG_PATH和SEARCH_QUOTA_PATH用于配置定位 |
| 技能调用 | WRITE | WRITE | ✓ 一致 | 暴露smart_search/search_quota_status/search_mark_agent_complete三个工具 |
1 高危 6 项发现
高危 IP 地址 硬编码 IP 地址
169.254.0.0 index.js:54 中危 外部 URL 外部 URL
https://clawhub.ai .clawhub/origin.json:3 中危 外部 URL 外部 URL
https://api.search.brave.com/res/v1/web/search?q=$ index.js:512 中危 外部 URL 外部 URL
https://www.google.com/search?q=$ index.js:560 中危 外部 URL 外部 URL
https://www.bing.com/search?q=$ index.js:561 中危 外部 URL 外部 URL
https://duckduckgo.com/html/?q=$ index.js:562 目录结构
12 文件 · 64.9 KB · 1728 行 JavaScript 1f · 1006L
Markdown 6f · 581L
Shell 2f · 116L
JSON 3f · 25L
├─
▾
.clawhub
│ └─
origin.json
JSON
├─
▾
.learnings
│ ├─
ERRORS.md
Markdown
│ ├─
FEATURE_REQUESTS.md
Markdown
│ └─
LEARNINGS.md
Markdown
├─
▾
references
│ ├─
openclaw-config.md
Markdown
│ └─
quota-system.md
Markdown
├─
▾
scripts
│ ├─
reset-quota.sh
Shell
│ └─
setup.sh
Shell
├─
_meta.json
JSON
├─
index.js
JavaScript
├─
package.json
JSON
└─
SKILL.md
Markdown
依赖分析 1 项
| 包名 | 版本 | 来源 | 已知漏洞 | 备注 |
|---|---|---|---|---|
proper-lockfile | ^4.1.2 | npm | 否 | 用于配额文件并发写入锁,版本已锁定 |
安全亮点
✓ 完整的SSRF防护:isSafeUrl()函数阻止所有RFC-1918/私有地址、链路本地地址(169.254.0.0/16)、环回地址
✓ 提示注入防护:stripInjection()过滤常见注入模式(ignore instructions, system prompt等)
✓ API密钥安全:仅从配置文件读取,内存中使用,不记录日志或返回
✓ 代码无混淆:无base64解码执行,无eval动态代码
✓ 配额系统完整性:文件锁防止并发写入损坏,负值自动修正,损坏文件自动重建
✓ 熔断机制:API连续失败3次后自动跳过60秒,防止资源耗尽
✓ web_fetch白名单:仅允许google/bing/duckduckgo三个引擎
✓ 输入验证严格:agent_id正则限制,query长度和控制字符检查
✓ 文档详尽:1000+行SKILL.md完整描述所有行为