Oralyzer

August 26, 2026 ยท View on GitHub

Python License PRs

A Python tool for Open Redirect vulnerabilities. It fuzzes the target URL with redirect payloads and reports which ones the server actually follows to an external host.

Features

  • Open Redirect Detection: Header, JavaScript, and meta-tag redirects
  • CRLF Injection Scanning: HTTP response splitting vulnerabilities
  • URL Discovery: Harvest candidate URLs from Common Crawl's index
  • JSON Export: Export findings for further analysis
  • Proxy Support: Route requests through HTTP proxies

Installation

pipx installs CLI tools into isolated environments, so oralyzer works system-wide without touching your system Python โ€” and you sidestep the externally-managed-environment error on Debian/Ubuntu (PEP 668).

# Install pipx if you don't have it
sudo apt install pipx
pipx ensurepath

# Install Oralyzer
pipx install oralyzer

With pip in a virtual environment

Prefer plain pip? Create a venv first:

python3 -m venv .venv
source .venv/bin/activate
pip install oralyzer

From source

git clone https://github.com/r0075h3ll/Oralyzer.git
cd Oralyzer
pipx install .
# or, inside a venv:
pip install .

Or skip installing altogether and run it directly:

python3 -m venv .venv
source .venv/bin/activate
pip install .
python -m oralyzer -u https://example.com/

Usage

# Single target
oralyzer -u https://example.com/login

# Multiple targets from file
oralyzer -l targets.txt

# Export findings to JSON
oralyzer -u https://example.com/login -o results.json

# CRLF injection scan
oralyzer -u https://example.com/ -crlf

# Harvest URLs from Common Crawl
oralyzer -u example.com --discover

# Use proxy
oralyzer -u https://example.com/ --proxy http://127.0.0.1:8080

# Verbose logging
oralyzer -u https://example.com/ -v

# Concurrent scanning with custom workers
oralyzer -l targets.txt --workers 10 -o results.json

Command-line Options

OptionDescription
-u, --url URLScan a single target
-l, --list PATHScan multiple targets from a file
-p, --payload PATHUse custom payloads file
-o, --output PATHExport findings to JSON
-crlfScan for CRLF injection
--discoverHarvest candidate URLs from Common Crawl
--proxy URLRoute requests through proxy
--timeout SECONDSRequest timeout (default: 10)
--workers NConcurrent workers (default: 5)
--limit NStop after N findings
--filter TYPEOnly report: header, javascript, meta, crlf
-q, --quietOnly show findings
--no-colorDisable colored output
-v, --verboseEnable verbose logging

Output Format

Findings are exported as JSON:

[
  {
    "type": "header",
    "request_url": "https://example.com/login?next=//evil.com",
    "payload": "//evil.com",
    "status_code": 302,
    "destination": "https://evil.com"
  },
  {
    "type": "javascript",
    "request_url": "https://example.com/page",
    "payload": "//evil.com",
    "status_code": 200,
    "sources": ["location.href", "document.URL"]
  }
]