Skip to main content
Glama

⚠️ Authorized testing only. rage is for systems you own or have explicit written permission to test. Every entry point requires an explicit authorization flag. Unauthorized scanning is illegal in most jurisdictions.


πŸ”Ž What rage does

Point rage at a web target you're allowed to test and it runs 25+ checks across the whole OWASP Top 10 (2026), returns findings ranked by severity and tagged with their OWASP category, and β€” unlike most scanners β€” it also lists the checks that found nothing (clearly labelled not proof of absence) and the categories that genuinely need a human.

  • 🧭 OWASP-mapped β€” every finding carries its A01–A10 tag.

  • πŸ€– MCP-native β€” an AI agent (Claude Desktop, Cursor, Claude Code) can orchestrate it as tools.

  • 🧰 Optional power tools β€” plugs into nuclei, sqlmap, sslyze/testssl.sh, and a headless Playwright crawler when present; degrades gracefully when they're not.

  • πŸ” Authenticated scans β€” cookie, bearer header, or an automatic login POST to test behind the wall.

  • 🧡 Honest by design β€” detection over exploitation, heuristics labelled as such, no mass-targeting.

Related MCP server: mcp-security-server

πŸ— How it works

flowchart LR
  U["You β€” CLI / Web UI"] --> E
  A["AI agent<br/>Claude Β· Cursor Β· Claude Code"] -- MCP --> M["rage_mcp.py"]
  M --> E["rage engine<br/>25+ OWASP checks"]
  E -. optional .-> X["nuclei Β· sqlmap<br/>sslyze/testssl Β· Playwright"]
  E --> T["🎯 Authorized target"]
  E --> R["πŸ“‹ OWASP-tagged report<br/>+ checks-that-found-nothing"]

The LLM decides what to run; rage provides the tools and does the work β€” the same "AI orchestrates the toolbox" idea as the big frameworks, scoped to authorized, human-in-the-loop testing.

πŸš€ Three ways to run it

# 1) CLI
py rage.py https://beta.example.com --authorized

# 2) Local web UI  β†’ http://127.0.0.1:8787
py rage_web.py

# 3) MCP server (an AI agent drives it)
py rage_mcp.py

Common options:

py rage.py <target> --authorized --headless --nuclei --sqlmap --time-based   # go deep
py rage.py <target> --authorized --cookie "session=..."                      # authenticated
py rage.py <target> --authorized -m headers tls cors sqli xss                # pick modules
py rage.py <target> --authorized --json report.json                          # machine-readable

πŸ€– MCP (AI-driven)

Start the server and wire it into any MCP client:

py rage_mcp.py

Claude Desktop β€” claude_desktop_config.json:

{
  "mcpServers": {
    "rage": { "command": "py", "args": ["/absolute/path/to/Rage-MCP/rage_mcp.py"] }
  }
}

Then just ask: β€œscan https://my-authorized-host with rage.” Tools exposed:

Tool

What it does

scan

Run an authorized scan of one target β†’ OWASP-tagged findings + checks-that-found-nothing. Refuses unless authorized=true.

list_modules

The full menu of checks, which run by default, which are opt-in, and the OWASP map.

tool_status

Which optional engines are available on this host (nuclei / sqlmap / TLS engine / headless).

πŸ›‘ OWASP coverage

OWASP 2026

Modules

What it checks

A01 Broken Access Control (+SSRF)

cors methods redirect ssrf traversal csrf auth

CORS reflection, risky methods/TRACE, open redirect, SSRF candidates + cloud-metadata, path traversal/LFI, missing CSRF tokens, unauth sensitive paths

A02 Security Misconfiguration

headers misconfig files secrets ports

headers, cookie flags, version leak, directory listing, verbose errors, backup/API-doc/GraphQL discovery, secrets in source, risky ports

A03 Supply Chain

fingerprint integrity

tech/CMS fingerprint, EOL software, subdomain-takeover signatures, outdated JS libs

A04 Cryptographic Failures

tls ciphers mixed tlsaudit

TLS version/downgrade, cert expiry, HSTS, cleartext, weak ciphers, mixed content, sensitive data in URL

A05 Injection

sqli xss ssti cmdi crlf injerr sqlmap

SQLi, XSS, SSTI, command injection, CRLF/host-header, NoSQL/LDAP/XPath, sqlmap confirmation

A06 Insecure Design

β€”

reported as manual-review (threat modeling / business logic)

A07 Authentication Failures

jwt auth authactive

JWT alg=none/weak, token entropy, password-over-HTTP, login rate-limit & enumeration (opt-in)

A08 Data Integrity

integrity

missing Subresource Integrity

A09 Logging & Alerting

β€”

reported as manual-review (needs backend/SIEM)

A10 Exceptional Conditions

misconfig

verbose error / stack-trace disclosure

β€”

nuclei

run the nuclei template engine and fold results in

Heavy/intrusive modules (sqlmap, nuclei, tlsaudit, time-based & active-auth probes) are opt-in.

πŸ“¦ Install

git clone https://github.com/Doctor00777/Rage-MCP.git
cd Rage-MCP

# The core scanner needs nothing beyond Python 3.9+.
# Optional engines:
pip install -r requirements.txt       # mcp, playwright, sslyze
playwright install chromium           # only for the headless (JS/SPA) crawl

# External binaries, optional, on PATH: nuclei Β· sqlmap Β· testssl.sh

βš–οΈ Responsible use

rage can send active, intrusive traffic (injection probes, sqlmap, nuclei). Use it only on:

  • systems you own, or

  • a target you have explicit written authorization to test (engagement/scope, bug-bounty program).

The --authorized flag / authorized=true is your attestation β€” it is not permission. rage keeps to single-target, detection-first, human-in-the-loop testing: it proves a bug exists, it doesn't exploit it, brute-force credentials, or mass-target.

πŸ”­ Honest limits

  • A clean report is not proof of security β€” it's a strong first pass. Real assurance needs a manual pentest plus source/SCA review.

  • Findings labelled likely / candidate are heuristics β€” confirm them manually.

  • The full external-tool power (and sslyze/testssl.sh) is Linux-first; run under WSL/Linux for best coverage.

  • Categories A06/A09 and IDOR/BOLA/privilege-escalation need authenticated, multi-account, human testing.

🀝 Contributing

Issues and PRs welcome β€” new checks, better engine integrations, and false-positive fixes especially. Keep the core dependency-free where possible, tag findings with their OWASP ID, and never weaken the authorization gate.

πŸ“„ License

MIT β€” see LICENSE.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables AI assistants to perform authorized security testing and penetration testing operations including SSL/TLS analysis, port scanning, vulnerability scanning, and HTTP security header audits through natural language interactions.
    1
    MIT
  • F
    license
    Not graded
    quality
    C
    maintenance
    Provides AI agents with standardized security scanning capabilities for authorized assessments, including host detection, port scanning, service fingerprinting, web vulnerability scanning, CVE verification, and report generation, all with unified JSON output and strict compliance controls.
    -
  • A
    license
    Not graded
    quality
    A
    maintenance
    Enables AI assistants to drive OWASP ZAP for authorized penetration testing and bug-bounty workflows, including authenticated scans and vulnerability triage through 67 curated safety-gated tools.
    1
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    Enables AI assistants to perform authorized web security assessments through MCP tools and a guided review prompt, including passive and full scans, WAF detection, remediation fixes, report export, triage, scan comparison, and proof-of-control verification.
    12
    5
    MIT