Back to skill

Security audit

Firecrawl

Security checks for vulnerabilities and agentic risk

Overview

This Firecrawl skill is coherent, but it needs review because it encourages third-party scraping interactions on login or form pages without clear sensitive-data guardrails.

Review this skill before installing if you might use it on private or authenticated pages. Use it for public scraping and documentation crawls, keep crawl limits low, protect the API key, and do not automate entry of passwords, MFA codes, tokens, payment details, or other secrets through Firecrawl unless you have explicitly reviewed and accepted the provider's security and privacy posture.

Vulnerability Patterns
  • Skill Instruction HijackingAlters the agent's session goals or safety constraints when the skill loads
  • Agent Memory PoisoningWrites attacker-controlled rules into memory that affect later sessions
  • Remote Payload Retrieval and ExecutionFetches external code whose behavior can change after review
  • Embedded Malicious CodeShips malicious scripts inside the skill and executes them locally
  • Unauthorized Access and Privilege EscalationObtains permissions beyond the task's legitimate needs
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
Findings (5)

Sudo/Root Execution

Medium
Category
Privilege Escalation
Content
## Credentials

- **Key:** store at `~/.openclaw/credentials/firecrawl/api_key` (`chmod 600`).
- **Base URL:** `https://api.firecrawl.dev/v2`
- **Auth:** `Authorization: Bearer fc-...`
- **CLI:** `~/bin/fc` → your local `fc.cjs` (Node CommonJS, zero dependencies).
Confidence
80% confidence
Finding
Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.

External Transmission

Medium
Category
Data Exfiltration
Content
## Credentials

- **Key:** store at `~/.openclaw/credentials/firecrawl/api_key` (`chmod 600`).
- **Base URL:** `https://api.firecrawl.dev/v2`
- **Auth:** `Authorization: Bearer fc-...`
- **CLI:** `~/bin/fc` → your local `fc.cjs` (Node CommonJS, zero dependencies).
Confidence
50% confidence
Finding
Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

Missing User Warnings

Medium
Confidence
91% confidence
Finding
The REST example shows browser-style interaction with a third-party login page, including clicking a login button and writing into an email field, but it does not warn that page contents and entered data are being sent through an external scraping service. In an agent context, this can normalize automating authentication flows and may lead users to submit credentials, session material, or other sensitive inputs to a remote provider without informed consent.

External Transmission

Medium
Category
Data Exfiltration
Content
```bash
KEY=$(cat ~/.openclaw/credentials/firecrawl/api_key)
curl -X POST https://api.firecrawl.dev/v2/scrape \
  -H "Authorization: Bearer $KEY" \
  -H "Content-Type: application/json" \
  -d '{
Confidence
84% confidence
Finding
The explicit curl example to api.firecrawl.dev demonstrates off-platform transmission of request data to a third-party service. In context this is intended behavior, but it becomes security-relevant because the surrounding example targets a login page and may encourage sending sensitive browsing context or entered form data externally.

External Transmission

Medium
Category
Data Exfiltration
Content
```bash
KEY=$(cat ~/.openclaw/credentials/firecrawl/api_key)
curl -X POST https://api.firecrawl.dev/v2/scrape \
  -H "Authorization: Bearer $KEY" \
  -H "Content-Type: application/json" \
  -d '{
Confidence
84% confidence
Finding
The explicit curl example to api.firecrawl.dev demonstrates off-platform transmission of request data to a third-party service. In context this is intended behavior, but it becomes security-relevant because the surrounding example targets a login page and may encourage sending sensitive browsing context or entered form data externally.

Static analysis

No suspicious patterns detected.