Skip to main content

Open-source WAF Security Testing Platform — 7,200+ attack payloads, 98 WAF/CDN fingerprints, AI-powered bypass engine, recon pipeline, beautiful CLI output

Project description

Fray

Vibe security — just point and scan.

One command. Full pipeline. Zero config.

pip install fray && fray go target.com

PyPI Downloads Payloads License

Docs · Discussions · dalisec.io

🌐 English | 日本語


FOR AUTHORIZED SECURITY TESTING ONLY — Only test systems you own or have explicit written permission to test.

fray go — full security audit in one command


Before Fray vs. With Fray

Traditional With Fray
Install 5+ tools (nmap, wafw00f, sqlmap, nikto, nuclei) pip install fray
Learn each tool's flags and config formats fray go target.com
Manually correlate findings across tools Automatic: recon → test → report
Write scripts to chain tools together 42 checks · 12 deep scan modules · 7,800+ payloads
Security expertise required Built for anyone who ships web apps

What's New — v3.5.6

  • fray analyze — per-pattern WAF bypass table. Confirms which payload patterns are blocked, then finds what gets through — with injection mechanics explaining why each bypass works
  • 42 recon checks — CVE probes for Next.js, Log4Shell, Spring4Shell, WordPress, Drupal fire automatically based on detected tech stack. No manual configuration
  • 18 vendor feeds — Unit 42, F5 Labs, Cloudflare, Imperva, PortSwigger, MSRC Patch Tuesday + 12 more. fray feed --auto-add pulls, validates PoC accuracy, and stages payloads
  • fray vendor-intel — latest CVEs and posts from all 18 feeds in one terminal view
  • Wappalyzer — 3,920 tech patterns from npm. Detects Shopify, EC-CUBE, Vercel, Datadog, Auth0, Kong, 4,200+ technologies from response headers, cookies, and scripts
  • Report — security grade A–F with specific improvement steps, RDAP domain age, origin cloud provider (GCP/AWS/Azure), VPN CVEs in Known Vulnerabilities

Full changelog


Core Commands

fray go <url>              # ★ Full pipeline: recon → test → report (start here)
fray recon <url>           # 42-check reconnaissance — WAF, TLS, CVEs, secrets, subdomains
fray test <url> --smart    # Smart payload selection from recon findings
fray analyze <url>         # Per-pattern WAF bypass analysis with bypass table
fray detect <url>          # WAF/CDN fingerprint (98 vendors)
fray harden <url>          # OWASP hardening audit (A–F grade)
fray vendor-intel          # Latest CVEs from 18 security vendor feeds
fray feed --auto-add       # Pull CVEs → validate PoC → update payload DB
fray smoke --local         # Test detection accuracy against localhost Docker lab
fray dashboard             # Web UI — timeline, diff, live reload
fray mcp                   # MCP server for Claude / ChatGPT / Cursor

fray <url> is a shortcut for fray go <url>.


Who It's For

  • Developers — run fray go before launch. Done.
  • Bug bounty hunters — 7,800+ payloads, WAF bypass intelligence, adaptive cache learns across scans.
  • Pentesters — 12 deep scan modules, stealth mode, auth support, per-pattern bypass analysis.
  • DevSecOps — GitHub Action, SARIF output, --json for pipelines.
  • Security teams — MCP server for AI agents, VS Code extension, 18 live threat intel feeds.

Payload Coverage

7,800+ payloads across 43 categories:

Category Count Category Count
XSS 1,329 AI/LLM Prompt Injection 410
Web Shells 994 Path Traversal 293
WordPress 964 SQL Injection 258
LLM Testing 740 Command Injection 233
Other / Generic 368 SSTI 220
CSP Bypass 177 XXE 178
Modern Bypasses 137 API Security 130
SSRF Cloud Metadata 123 Prototype Pollution 110
CRLF Injection 94 Open Redirect 91
LDAP Injection 90 XPath Injection 89
JWT Attack 32 Supply Chain 46
Auth Bypass 20 GraphQL Attacks 24
Cache Poisoning 20 Deserialization 16
Mass Assignment 25 Race Condition 16
RAG Security 16 HTTP Smuggling 17
Host Header Injection 15 CORS 15

Full payload database →


MCP — AI Agent Integration

18 tools via MCP for Claude, ChatGPT, Cursor, and any MCP client.

pip install 'fray[mcp]'
{ "mcpServers": { "fray": { "command": "python", "args": ["-m", "fray.mcp_server"] } } }

Ask "What XSS payloads bypass Cloudflare?"suggest_payloads_for_waf, generate_bypass_strategy, analyze_response, hardening_check, and 14 more tools run directly.

Claude Code guide → · ChatGPT guide →


CI/CD — GitHub Action

# .github/workflows/waf.yml
- uses: dalisecurity/fray@v1
  with:
    target: https://staging.example.com
    categories: xss,sqli

Exits non-zero on bypass findings. Integrates with GitHub Security tab via SARIF. CI/CD guide →


Auth & Stealth

fray test https://target.com --cookie "session=abc123"
fray test https://target.com --bearer eyJhbG...
fray test https://target.com --stealth -d 0.5      # randomized UA + jitter
fray recon https://target.com --scope scope.txt    # in-scope enforcement

Auth guide →


Community


MIT License · Only test systems you own or have explicit authorization to test · Security issues: soc@dalisec.io

dalisec.io · Built by hunters. For defenders.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fray-3.5.42.tar.gz (1.5 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

fray-3.5.42-py3-none-any.whl (1.5 MB view details)

Uploaded Python 3

File details

Details for the file fray-3.5.42.tar.gz.

File metadata

  • Download URL: fray-3.5.42.tar.gz
  • Upload date:
  • Size: 1.5 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for fray-3.5.42.tar.gz
Algorithm Hash digest
SHA256 3ba2a0b0e8f66eeadb58d6220b723b5c39d358d0b7a248a968ef88522aabd47c
MD5 69a49ef383fe6a8e18296b196590a0fb
BLAKE2b-256 6ac4ae4614b04def229db5cca1b4261711e0b559196ba195c6abaee409fd74d4

See more details on using hashes here.

Provenance

The following attestation bundles were made for fray-3.5.42.tar.gz:

Publisher: publish.yml on dalisecurity/Fray

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file fray-3.5.42-py3-none-any.whl.

File metadata

  • Download URL: fray-3.5.42-py3-none-any.whl
  • Upload date:
  • Size: 1.5 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for fray-3.5.42-py3-none-any.whl
Algorithm Hash digest
SHA256 2be26c5d182dbb5c55491cdcdc23e5624714a5d51ea7b15e611710abc68ab279
MD5 0bd2dc6af81b98374b31a34611562944
BLAKE2b-256 72e9384a01d0243f0b0262b36b20f95562ddc9406f424dbab8695c0847637973

See more details on using hashes here.

Provenance

The following attestation bundles were made for fray-3.5.42-py3-none-any.whl:

Publisher: publish.yml on dalisecurity/Fray

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page