跳转到正文
报告库
用途分类 / 开发辅助

Firecrawl Build Search Skill 安全审计

作者说它能做什么(原文)

Integrate Firecrawl `/search` into product code and agent workflows. Use when an app needs discovery before extraction, when the feature starts with a query instead of a URL, or when the system should search the web and optionally hydrate result content.

第三方安全检查结论

发现安全风险

已检查文件
1
发现的风险
2
会不会运行危险命令?检查是否下载程序后直接运行、让他人远程控制电脑,或藏起要运行的命令。未发现风险
会不会泄露文件和密钥?检查是否发送含密码或密钥的文件,以及代码里是否直接写了密钥。发现 1 项风险
中风险

托管搜索可能向 Firecrawl 披露用户查询

原文依据:3 处
发现了什么

该 Skill 要求为托管请求提供 API 密钥,并面向需要当前网页结果的用户问题。若产品把原始问题直接提交给托管 `/search`,查询内容及与该密钥关联的使用记录会离开用户环境。

为什么需要注意

包含客户名称、内部项目、未公开产品、健康或法律问题等敏感信息的查询,可能被外部服务处理并受其日志、保留和访问政策约束。

这是该 Skill 的正常搜索功能,但仍存在明确的数据披露边界:托管请求需要 Firecrawl API 密钥,而功能会根据用户问题查询当前网页。使用托管 `/search` 时,搜索词必然发送给 Firecrawl;若调用方直接采用原始问题,其中的姓名、内部项目或其他敏感内容也会离开本地环境。材料没有证明 Firecrawl 会长期记录查询。用户可要求先删减敏感信息、明确日志与保留政策,或使用受控的自托管地址。

SKILL.md:11来自说明文档打开原文件
inputs:  - name: FIRECRAWL_API_KEY    description: Firecrawl API key for hosted Firecrawl requests.    required: true  - name: FIRECRAWL_API_URL    description: Optional base URL for self-hosted Firecrawl deployments.    required: false---
查看另外 2 个位置
SKILL.md:25来自说明文档打开原文件
- the user asks a question and the product must discover sources first- the feature needs current web results- you want to turn a search query into a shortlist of pages for later scraping
SKILL.md:14来自说明文档打开原文件
    required: true  - name: FIRECRAWL_API_URL    description: Optional base URL for self-hosted Firecrawl deployments.    required: false---
会不会删除文件或一直在后台运行?检查是否大范围删除文件、改写磁盘,或设置自动启动。未发现风险
会不会绕过安全保护?检查是否跳过网站安全验证、开放过多文件权限,或取消操作前的确认。未发现风险
会不会误导 AI 或隐藏内容?检查工作说明是否要求 AI 忽略你的指令、干扰检查结果,或夹带看不见的文字。发现 1 项风险
中风险

强制读取可变外部文档会把代码生成受控面延伸到 Skill 之外

原文依据:2 处
发现了什么

该 Skill 要求代理在编写集成代码前,把多个远程网页作为“事实来源”读取。这些页面内容不在已审计材料中,并可能在 Skill 发布后变化。

为什么需要注意

若远程页面遭篡改、域名或发布流程被入侵,或包含面向代理的误导指令,代理可能据此加入未经用户审查的依赖、网络请求、权限或凭据处理方式。现有证据不能证明这已经发生。

该指令明确要求代理在编写代码前读取 Firecrawl 控制的远程页面,因此集成决策依赖于本次审计未包含、日后可变化的内容。远程文档本身是合理的技术资料,证据也没有显示其中含恶意指令;风险在于其内容可能改变或被入侵后影响生成的代码。用户可要求固定文档版本或快照、限制读取到对应语言页面,并在采用其中的安装命令、权限或凭据处理方式前单独审查。

SKILL.md:59来自说明文档打开原文件
## Docs (Source of Truth)Read the source-of-truth page for your project language before writing integration code:- **Node / TypeScript**: [docs.firecrawl.dev/agent-source-of-truth/node](https://docs.firecrawl.dev/agent-source-of-truth/node)- **Python**: [docs.firecrawl.dev/agent-source-of-truth/python](https://docs.firecrawl.dev/agent-source-of-truth/python)- **Rust**: [docs.firecrawl.dev/agent-source-of-truth/rust](https://docs.firecrawl.dev/agent-source-of-truth/rust)- **Java**: [docs.firecrawl.dev/agent-source-of-truth/java](https://docs.firecrawl.dev/agent-source-of-truth/java)- **Elixir**: [docs.firecrawl.dev/agent-source-of-truth/elixir](https://docs.firecrawl.dev/agent-source-of-truth/elixir)- **cURL / REST**: [docs.firecrawl.dev/agent-source-of-truth/curl](https://docs.firecrawl.dev/agent-source-of-truth/curl)
查看另外 1 个位置
SKILL.md:63来自说明文档打开原文件
- **Node / TypeScript**: [docs.firecrawl.dev/agent-source-of-truth/node](https://docs.firecrawl.dev/agent-source-of-truth/node)- **Python**: [docs.firecrawl.dev/agent-source-of-truth/python](https://docs.firecrawl.dev/agent-source-of-truth/python)- **Rust**: [docs.firecrawl.dev/agent-source-of-truth/rust](https://docs.firecrawl.dev/agent-source-of-truth/rust)- **Java**: [docs.firecrawl.dev/agent-source-of-truth/java](https://docs.firecrawl.dev/agent-source-of-truth/java)- **Elixir**: [docs.firecrawl.dev/agent-source-of-truth/elixir](https://docs.firecrawl.dev/agent-source-of-truth/elixir)- **cURL / REST**: [docs.firecrawl.dev/agent-source-of-truth/curl](https://docs.firecrawl.dev/agent-source-of-truth/curl)
会不会偷偷改推广链接或收款方?检查是否强制替换推广链接或收款对象,同时要求隐瞒更改。未发现风险

Skill 逻辑拆解

7 个说明模块

该 Skill 指导把 Firecrawl 的 `/search` 用于从查询发现、排序和筛选网页来源,并可为后续抓取生成 URL 候选列表。

查看原文
SKILL.md:31来自说明文档打开原文件
- Use `/search` first when URL discovery is part of the product behavior.- Keep search and extraction conceptually separate unless scraping search results is clearly required.- Prefer selective follow-up extraction over broad hydration when cost or latency matters.
SKILL.md:55来自说明文档打开原文件
- Treat `/search` as discovery, ranking, and source selection.- Be explicit about whether the product needs snippets, URLs, or full result content.- Keep the query contract stable so downstream scraping logic stays predictable.

使用托管服务需要 Firecrawl API 密钥;也可以提供自托管服务的基础 URL。

查看原文
SKILL.md:10来自说明文档打开原文件
  source: https://github.com/firecrawl/skillsinputs:  - name: FIRECRAWL_API_KEY    description: Firecrawl API key for hosted Firecrawl requests.    required: true  - name: FIRECRAWL_API_URL    description: Optional base URL for self-hosted Firecrawl deployments.    required: false---

该 Skill 将论文索引、开发者索引、已有 URL 抓取以及网页交互转交给其他相邻 Skill;这些被引用 Skill 的实现未包含在本次证据中。

查看原文
SKILL.md:48来自说明文档打开原文件
- If you already have the URL, use [firecrawl-build-scrape](../firecrawl-build-scrape/SKILL.md).- If the result page then requires clicks or form interaction, escalate to [firecrawl-build-interact](../firecrawl-build-interact/SKILL.md).- If the feature searches **published research papers** — biomedical, clinical, and life-science literature (PubMed, bioRxiv, medRxiv) or arXiv preprints — `/search` is the wrong surface. Use the research paper index instead: [firecrawl-research-index](../firecrawl-research-index/SKILL.md). Passing `categories: ["research"]` to `/search` does **not** query that index; it filters an ordinary web search to research-affiliated websites (the list includes PubMed, bioRxiv, medRxiv, arXiv, and publisher sites) and returns page results from them — no abstract search, related-paper expansion, or full-text passages.- If the feature answers developer questions from issues, pull requests, READMEs, or documentation pages, use the developer index instead: [firecrawl-developer-index](../firecrawl-developer-index/SKILL.md). The same caveat applies to `categories: ["developer"]`.
从这里开始 · 工作说明SKILL.md
firecrawl-build-search
连线表示工作说明包含的模块,不是实际运行顺序。点击模块可查看原文。
文件与检查记录1 个文件

检查范围与遗漏

逐文件查看涉及的内容

下方列出本次涉及的原文范围;纳入检查不代表已查清所有问题。

  • SKILL.md已纳入全文

这份报告只针对上方版本。我们看了拿到的代码和说明文件,没有实际运行 Skill,也没有检查它另外安装的软件包。因此,这不是“保证安全”的承诺;换了版本或使用环境,结果也可能不同。

  • SKILL.md工作说明

代码和说明中提到的操作

连接外部网站
SKILL.md:8来自说明文档打开原文件
  version: "0.1.0"  homepage: https://www.firecrawl.dev  source: https://github.com/firecrawl/skills
SKILL.md:9来自说明文档打开原文件
  homepage: https://www.firecrawl.dev  source: https://github.com/firecrawl/skillsinputs:
SKILL.md:12来自说明文档打开原文件
  - name: FIRECRAWL_API_KEY    description: Firecrawl API key for hosted Firecrawl requests.    required: true
读取密钥或账号配置
SKILL.md:11来自说明文档打开原文件
inputs:  - name: FIRECRAWL_API_KEY    description: Firecrawl API key for hosted Firecrawl requests.
读取了多少行
77
文件校验值(用于核对版本)
4bc70dce926e29ae7d3d6769c8f29df6b6e09a8e3b42ceddb39ef142566e906d