Security Vulnerability Report
ID: FIRECRAWL-001
Severity: HIGH (CVSS 8.5)
CWE: CWE-918 (Server-Side Request Forgery)
Description
The firecrawl_crawl tool accepts any string as URL without proper URL validation (z.string() instead of z.string().url()). This allows SSRF attacks against internal services such as 169.254.169.254 metadata endpoints.
Vulnerability Details
- The
firecrawl_crawl tool uses z.string() for URL validation instead of z.string().url()
- This inconsistency between
scrape tool (which uses proper z.string().url()) and crawl tool allows arbitrary URL inputs
- Attackers can exploit this to access internal services, cloud metadata endpoints
Proof of Concept
The vulnerability can be verified by comparing:
scrape tool: uses z.string().url() (secure)
crawl tool: uses z.string() (vulnerable)
A malicious input like http://169.254.169.254/latest/meta-data/ would be accepted by the vulnerable tool.
Recommended Fix
Change the URL validation in firecrawl_crawl from z.string() to z.string().url() to match the secure implementation in the scrape tool.
This is a coordinated security disclosure. Please handle appropriately.
Security Vulnerability Report
ID: FIRECRAWL-001
Severity: HIGH (CVSS 8.5)
CWE: CWE-918 (Server-Side Request Forgery)
Description
The
firecrawl_crawltool accepts any string as URL without proper URL validation (z.string()instead ofz.string().url()). This allows SSRF attacks against internal services such as 169.254.169.254 metadata endpoints.Vulnerability Details
firecrawl_crawltool usesz.string()for URL validation instead ofz.string().url()scrapetool (which uses properz.string().url()) andcrawltool allows arbitrary URL inputsProof of Concept
The vulnerability can be verified by comparing:
scrapetool: usesz.string().url()(secure)crawltool: usesz.string()(vulnerable)A malicious input like
http://169.254.169.254/latest/meta-data/would be accepted by the vulnerable tool.Recommended Fix
Change the URL validation in
firecrawl_crawlfromz.string()toz.string().url()to match the secure implementation in thescrapetool.This is a coordinated security disclosure. Please handle appropriately.