跳转到正文
报告库
用途分类 / 其他用途

Firecrawl Crawl Skill 安全审计

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

|

第三方安全检查结论

发现安全风险

已检查文件
1
发现的风险
5
会不会运行危险命令?检查是否下载程序后直接运行、让他人远程控制电脑,或藏起要运行的命令。发现 1 项风险
中风险

权限允许通过 npx 运行 CLI,而未要求固定已审核的版本

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

工具权限明确允许执行 `npx firecrawl-cli`。npx 在本地没有相应包时可以取得并运行软件,而这里没有固定包版本或校验来源;正文示例实际上只需要已安装的 `firecrawl` 命令。

为什么需要注意

若走 npx 路径,用户可能执行到后来变化、被替换或未经审核的包代码,其权限与当前终端进程相同。

这段证据能说明什么

权限清单确实允许匹配 `npx firecrawl-cli` 的命令且未固定版本,但这只是可用权限,不是执行指令。正文所有可见示例都调用 `firecrawl`,没有调用 npx,也没有安装步骤或来源校验说明。因此存在代理选择未固定 npx 包的可能性,但该 Skill 是否实际触发下载和执行无法从来源确认。

这项判断针对展示的代码和适用条件,不表示风险已经实际发生。
SKILL.md:5来自说明文档打开原文件
  Bulk-extract many pages from one site or section. Use for "crawl", "everything under /docs", or content spanning linked pages.allowed-tools:  - Bash(firecrawl *)  - Bash(npx firecrawl-cli *)---
查看另外 1 个位置
SKILL.md:22来自说明文档打开原文件
# Full crawl with depth limitfirecrawl crawl "<url>" --max-depth 3 --wait --progress -o .firecrawl/crawl.json
会不会泄露文件和密钥?检查是否发送含密码或密钥的文件,以及代码里是否直接写了密钥。发现 1 项风险
中风险

提交的站点地址和抓取内容会由需要登录的抓取服务处理

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

该 Skill 使用需要认证的 Firecrawl 抓取网站内容。若目标是内部、未公开或带敏感参数的地址,请求和返回内容会离开本地环境并由该服务处理。

为什么需要注意

私有 URL、查询参数、内部页面结构或页面内容可能暴露给第三方服务及其关联账户。

这段证据能说明什么

来源表明该命令会抓取指定网站且需要认证,但没有说明服务部署位置、传输内容、数据保留方式,或是否能访问内部地址。因此可以确认 URL 和网页内容会被用于抓取,却不能仅凭这些行确认敏感内容一定会离开本地并由第三方保存或处理。用户应先向作者或服务方确认数据流和私有地址访问能力。

这项判断针对展示的代码和适用条件,不表示风险已经实际发生。
SKILL.md:12来自说明文档打开原文件
Bulk extract content from a website. Crawls pages following links up to a depth/limit.**Prerequisite:** `crawl` requires authentication (no keyless free tier); without credentials the CLI prompts an interactive login.
查看另外 1 个位置
SKILL.md:19来自说明文档打开原文件
```bash# Crawl a docs sectionfirecrawl crawl "<url>" --include-paths /docs --limit 50 --wait -o .firecrawl/crawl.json
会不会删除文件或一直在后台运行?检查是否大范围删除文件、改写磁盘,或设置自动启动。发现 1 项风险
低风险

固定输出路径可能替换先前的抓取结果

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

两个示例都将输出写入同一个 `.firecrawl/crawl.json`,且没有要求先检查该文件是否已经存在或生成唯一文件名。

为什么需要注意

再次抓取时,先前保存的结果可能被覆盖,导致本地数据丢失或不同任务的结果混淆。

这段证据能说明什么

两个示例确实使用相同输出路径,可能造成结果冲突。但来源没有说明 CLI 在文件已存在时会覆盖、拒绝写入还是另行处理,所以不能确认旧结果会被替换。用户可要求运行前确认目标路径为空,或为每次任务使用独立文件名。

这项判断针对展示的代码和适用条件,不表示风险已经实际发生。
SKILL.md:20来自说明文档打开原文件
# Crawl a docs sectionfirecrawl crawl "<url>" --include-paths /docs --limit 50 --wait -o .firecrawl/crawl.json
查看另外 3 个位置
SKILL.md:23来自说明文档打开原文件
# Full crawl with depth limitfirecrawl crawl "<url>" --max-depth 3 --wait --progress -o .firecrawl/crawl.json
SKILL.md:19来自说明文档打开原文件
```bash# Crawl a docs sectionfirecrawl crawl "<url>" --include-paths /docs --limit 50 --wait -o .firecrawl/crawl.json# Full crawl with depth limitfirecrawl crawl "<url>" --max-depth 3 --wait --progress -o .firecrawl/crawl.json
SKILL.md:31来自说明文档打开原文件
**Done when:** the crawl reaches a terminal status and the saved output under `.firecrawl/` contains the expected pages.
会不会绕过安全保护?检查是否跳过网站安全验证、开放过多文件权限,或取消操作前的确认。发现 1 项风险
低风险

安装命令没有固定依赖版本

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

安装命令没有指定依赖版本。同样的命令以后可能下载不同代码,你实际安装的内容可能与这次检查时不同。

为什么需要注意

即使命令和报告没变,以后安装时也可能下载到另一份代码。

这段代码的正常用途

第 7 行不是安装命令,而是声明允许调用与 `npx firecrawl-cli` 匹配的命令。正文示例均使用已安装的 `firecrawl`,没有要求通过 npx 下载或安装软件,因此“安装命令未固定版本”并非此处实际行为。

这项判断针对展示的代码和适用条件,不表示风险已经实际发生。
SKILL.md:7来自说明文档打开原文件
  - Bash(firecrawl *)  - Bash(npx firecrawl-cli *)---
查看另外 2 个位置
SKILL.md:5来自说明文档打开原文件
  Bulk-extract many pages from one site or section. Use for "crawl", "everything under /docs", or content spanning linked pages.allowed-tools:  - Bash(firecrawl *)  - Bash(npx firecrawl-cli *)---
SKILL.md:18来自说明文档打开原文件
```bash# Crawl a docs sectionfirecrawl crawl "<url>" --include-paths /docs --limit 50 --wait -o .firecrawl/crawl.json
会不会误导 AI 或隐藏内容?检查工作说明是否要求 AI 忽略你的指令、干扰检查结果,或夹带看不见的文字。未发现风险
会不会偷偷改推广链接或收款方?检查是否强制替换推广链接或收款对象,同时要求隐瞒更改。发现 1 项风险
中风险

大范围抓取可能消耗数量不确定的付费额度

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

Firecrawl 按页面消耗额度;其中一个“完整抓取”示例只限制深度,没有限制总页数。链接密集的网站即使深度较小,也可能包含大量页面。

为什么需要注意

运行该示例可能消耗远超用户预期的账户额度,并产生相应费用或耗尽可用配额。

Skill 明确说明抓取按页面消耗额度。文档区示例有 50 页上限,但“完整抓取”示例只有深度限制,没有可见的总页数限制;若代理采用该示例,链接较多的网站可能产生用户未预期的额度消耗。用户可要求在每次抓取前设置 `--limit`、`--timeout` 并检查剩余额度。

SKILL.md:22来自说明文档打开原文件
# Full crawl with depth limitfirecrawl crawl "<url>" --max-depth 3 --wait --progress -o .firecrawl/crawl.json
查看另外 2 个位置
SKILL.md:37来自说明文档打开原文件
- **Scope crawls with `--include-paths`** whenever the request names a section — crawl only the pages you need.- Crawl consumes credits per page. Check `firecrawl credit-usage` before large crawls (`credit-usage` requires authentication).
SKILL.md:35来自说明文档打开原文件
- Use `--wait` when you need the results immediately. It has no default timeout; use `--timeout <seconds>` to bound polling. Without `--wait`, crawl returns a job ID for async polling.- **Scope crawls with `--include-paths`** whenever the request names a section — crawl only the pages you need.- Crawl consumes credits per page. Check `firecrawl credit-usage` before large crawls (`credit-usage` requires authentication).

Skill 逻辑拆解

3 个说明模块

该 Skill 的主要行为是调用 Firecrawl 服务,沿站点链接批量抓取页面,并把结果保存到本地 `.firecrawl/crawl.json`。

查看原文
SKILL.md:12来自说明文档打开原文件
Bulk extract content from a website. Crawls pages following links up to a depth/limit.**Prerequisite:** `crawl` requires authentication (no keyless free tier); without credentials the CLI prompts an interactive login.
SKILL.md:20来自说明文档打开原文件
# Crawl a docs sectionfirecrawl crawl "<url>" --include-paths /docs --limit 50 --wait -o .firecrawl/crawl.json

文档建议按路径和页面数限定抓取范围,并说明同步等待默认没有超时,可通过 `--timeout` 限制轮询时间。

查看原文
SKILL.md:35来自说明文档打开原文件
- Use `--wait` when you need the results immediately. It has no default timeout; use `--timeout <seconds>` to bound polling. Without `--wait`, crawl returns a job ID for async polling.- **Scope crawls with `--include-paths`** whenever the request names a section — crawl only the pages you need.- Crawl consumes credits per page. Check `firecrawl credit-usage` before large crawls (`credit-usage` requires authentication).
从这里开始 · 工作说明SKILL.md
firecrawl-crawl
连线表示工作说明包含的模块,不是实际运行顺序。点击模块可查看原文。
文件与检查记录1 个文件

检查范围与遗漏

逐文件查看涉及的内容

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

  • SKILL.md已纳入全文

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

  • SKILL.md工作说明

代码和说明中提到的操作

运行命令
SKILL.md:6来自说明文档打开原文件
allowed-tools:  - Bash(firecrawl *)  - Bash(npx firecrawl-cli *)
SKILL.md:7来自说明文档打开原文件
  - Bash(firecrawl *)  - Bash(npx firecrawl-cli *)---
SKILL.md:18来自说明文档打开原文件
```bash# Crawl a docs section
安装其他软件包
SKILL.md:7来自说明文档打开原文件
  - Bash(firecrawl *)  - Bash(npx firecrawl-cli *)---
读取密钥或账号配置
SKILL.md:14来自说明文档打开原文件
**Prerequisite:** `crawl` requires authentication (no keyless free tier); without credentials the CLI prompts an interactive login.
连接外部网站
SKILL.md:44来自说明文档打开原文件
- [firecrawl-download](../firecrawl-download/SKILL.md) — download site to local files (uses map + scrape)- [firecrawl-build-scrape](https://github.com/firecrawl/skills/tree/main/skills/build/firecrawl-build-scrape) — building bulk extraction into an app instead of running it here
读取了多少行
45
文件校验值(用于核对版本)
f370be1100705d6c2c33ca2b54b861ce6a19a590f93e13e5238a15d2a39929cc