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.173.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.173-py3-none-any.whl (1.5 MB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: fray-3.5.173.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.173.tar.gz
Algorithm Hash digest
SHA256 651e11da3f8b171c34338cf0c9208c4d759ea85ea76bf07c5ef81e325b58eeee
MD5 1de0569234c047afc8791f1487b50f1d
BLAKE2b-256 0d3814dcfcaf89d4f2315bd5953e147a55b737518c4ef905982ff9ae3b477fbb

See more details on using hashes here.

Provenance

The following attestation bundles were made for fray-3.5.173.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.173-py3-none-any.whl.

File metadata

  • Download URL: fray-3.5.173-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.173-py3-none-any.whl
Algorithm Hash digest
SHA256 5f53d06b2a7b1f077e34e6d0f3829db03c68c846dcf788cb85de2040d795b81d
MD5 18bf6bcc0961f8581ea22c68153db13b
BLAKE2b-256 086c849c53601e14d3ae80d46a4e05245aa3beddbf5e771522ede0b0186b0a3a

See more details on using hashes here.

Provenance

The following attestation bundles were made for fray-3.5.173-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