Skip to content

ravenastar-js/rav-xss

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

70 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation


NPM Version


🛡️ RAV XSS

🎯 Basic Reflected XSS scanner for bug bounty programs.

⭐ Stars 🔱 Forks 👁️ Watchers 📄 License 🕒 Last Commit 📦 Repo Size ⚙️ Node.js

ravxss

ravxss

📞 Suporte

Se precisar de ajuda ou quiser falar com a equipe, entre no nosso servidor de suporte:

Servidor de Suporte


📋 Índice


🎯 Visão Geral

O RAV XSS é uma ferramenta básica para detecção de Reflected XSS, projetada para programas de Bug Bounty.

✨ Características Principais

  • 🎯 Categorias organizadas — Payloads separados por tipo de ataque
  • 🖥️ Menu interativo — Seleção de categorias e modos com setas do teclado
  • 🔄 Modos de execução — Axios (rápido) ou Playwright (navegador real)
  • 📱 Compatível com Termux — Detecta e adapta automaticamente para Android
  • 🌐 Detecção por reflexão — Identifica payloads refletidos na resposta HTTP
  • 📊 Relatórios detalhados — Geração automática de reports
  • 📁 Abrir relatórios — Comando rápido para abrir a pasta de reports
  • 🧹 Limpeza segura — Opção de limpar configs e reports com confirmação
  • Requisições concorrentes — Scanning rápido e configurável
  • 🎨 Interface colorida — Banner ASCII art e boxes estilizados
  • 📄 Suporte a config.txt — Configuração via arquivo externo

📦 Instalação Rápida

📥 Como instalar o NodeJS?
# Instalar globalmente
npm i -g rav-xss          # ✅ Recomendado
npm install -g rav-xss    # ✅ Completo

# Ou usar diretamente com npx
npx rav-xss --url "https://example.com/page?q=[XSS]"

# Clonar e instalar localmente
git clone https://github.com/ravenastar-js/rav-xss.git
cd rav-xss
npm install

🗑️ Desinstalar

npm un -g rav-xss         # ✅ Recomendado
npm uninstall -g rav-xss  # ✅ Completo
npm remove -g rav-xss     # ✅ Alternativo

🛠️ Como Usar

Uso Básico

# Modo interativo (recomendado)
rav-xss

# Com argumentos CLI
rav-xss --url "https://example.com/page?q=[XSS]" --category Basic

# Com verbose para debug
rav-xss --url "https://example.com/page?q=[XSS]" --category Basic --verbose

# Abrir pasta de relatórios
rav-xss --open-reports
rav-xss -r

# Limpar configurações (via menu interativo)
rav-xss
# Selecionar "🧹 Clean and Exit" no menu

Menu Interativo

Ao executar sem argumentos, o fluxo interativo é:

Passo 1 — Selecionar Categoria:

  🎯 SELECT PAYLOAD CATEGORY

  ───────────────────────────────────────────────────────
   🔰 Basic Payloads  —  Standard HTML tags & events
   🛡️ Filter Evasion  —  Encoding, null bytes, obfuscation
   🎭 Polyglots  —  Multi-context payloads
   🔥 WAF Bypass  —  Cloudflare, ModSecurity evasion
   💎 Pure Reflex  —  Reflected-only payloads
  ───────────────────────────────────────────────────────
   🎯  Configure Target URL
   🧹  Clean and Exit
   ❌  Exit

Passo 2 — Selecionar Modo de Execução:

  🔄 SELECT EXECUTION MODE

  ───────────────────────────────────────────────────────
   ⚡ Axios Mode  —  Fast HTTP requests (recommended)
   🌐 Playwright Mode  —  Real browser automation (slower)
  ───────────────────────────────────────────────────────
   ⮘  Back to Categories

Passo 3 — Configurar URL (se necessário):

  🌐 CONFIGURE TARGET URL
  💡 Demo target: http://www.sudo.co.il/xss/level0.php?email=[XSS]
  🔄 Mode: ⚡ Axios

Modos de Execução

Modo Ícone Descrição Velocidade Dependências
Axios Requisições HTTP diretas ⚡ Rápido Nenhuma extra
Playwright 🌐 Automação de navegador real 🐢 Lento npx playwright install

📱 Termux/Android: O modo Playwright é desativado automaticamente. Apenas Axios fica disponível.


🎛️ Opções da CLI

Opção Atalho Descrição Padrão
--url - 🌐 URL alvo com placeholder [XSS] Demo URL
--category - 📂 Categoria de payloads Menu interativo
--mode - 🔄 Modo de execução (axios ou playwright) Menu interativo
--delay - ⏱️ Delay entre requisições (ms) 500
--verbose -v 📢 Log detalhado false
--help -h ❓ Mostrar ajuda -
--configure - ⚙️ Wizard de configuração -
--open-reports -r 📁 Abrir pasta de relatórios -
--headed - 🖥️ Abrir navegador visível (modo Playwright) false

📂 Categorias de Payloads

Categoria Ícone Descrição
Basic Payloads 🔰 Standard HTML tags & events
Filter Evasion 🛡️ Encoding, null bytes, obfuscation
Polyglots 🎭 Multi-context payloads
WAF Bypass 🔥 Cloudflare, ModSecurity evasion
Pure Reflex 💎 Reflected-only, no template injection

📁 Abrir Pasta de Relatórios

Após executar os scans, você pode abrir rapidamente a pasta de relatórios:

# Abre a pasta reports no explorador de arquivos
rav-xss --open-reports

# Atalho
rav-xss -r

Comportamento por sistema:

Sistema Ação
🪟 Windows Abre o Explorer na pasta reports/
🍎 macOS Abre o Finder na pasta reports/
🐧 Linux Abre o gerenciador de arquivos padrão

💡 Se a pasta reports/ ainda não existir, ela será criada automaticamente.


🧹 Limpar e Sair

Opção disponível no menu interativo principal que permite limpar todos os arquivos de configuração e relatórios:

  🧹  Clean and Exit

Comportamento:

  1. Exibe mensagem de confirmação: ⚠️ This will DELETE all config files and reports. Continue? (y/N)
  2. Se confirmado, remove:
    • config.json (raiz do projeto e diretório atual)
    • config.txt (raiz do projeto e diretório atual)
    • Pasta reports/ com todo seu conteúdo
  3. Exibe resumo do que foi removido
  4. Exibe tela de despedida e encerra

🛡️ Segurança: Requer confirmação explícita para evitar exclusão acidental.


🚀 Exemplos Práticos

1. Reconhecimento Básico

rav-xss --url "https://example.com/search?q=[XSS]" --category Basic

2. Teste com WAF Bypass

rav-xss --url "https://example.com/search?q=[XSS]" --category WAFBypass --verbose

3. Delay Personalizado

rav-xss --url "https://example.com/search?q=[XSS]" --category FilterEvasion --delay 1000

4. Scan com Modo Específico

# Usando Axios (rápido)
rav-xss --url "https://example.com/page?q=[XSS]" --category Basic --mode axios

# Usando Playwright (navegador real)
rav-xss --url "https://example.com/page?q=[XSS]" --category Basic --mode playwright

5. Modo Interativo Completo

rav-xss
# 1. Selecionar categoria com setas → Enter
# 2. Selecionar modo (Axios ou Playwright) → Enter
# 3. Digitar URL (ou usar demo) → Enter
# 4. Scan executa automaticamente

6. Abrir Relatórios

rav-xss -r
# Abre a pasta com todos os reports gerados

📊 Relatórios

Após o scan, um relatório é gerado na pasta reports/:

reports/
└── xss_report_2026-05-06T12-00-00-000Z.txt

Conteúdo do relatório:

  • 📅 Data e hora do scan
  • 🌐 URL alvo testada
  • ⏱️ Duração total
  • 📊 Total de testes realizados
  • ⚠️ Vulnerabilidades encontradas
  • 📝 Lista detalhada de cada finding com URL completa

⚙️ Configuração

Wizard Interativo

rav-xss --configure
npm run configure

O wizard guia você através de:

  1. 📋 Nome do target
  2. 🌐 URL alvo (com placeholder [XSS])
  3. ⏱️ Timeout das requisições
  4. ⏳ Delay entre requisições
  5. 🔄 Modo de execução (Axios/Playwright)
  6. 👁️ Mostrar resultados não-vulneráveis

Arquivo config.txt

Você pode criar um arquivo config.txt na raiz do projeto com:

# RAV XSS Configuration
target=http://www.sudo.co.il/xss/level0.php?email=[XSS]
delay=500
mode=axios
timeout=8000

Parâmetros suportados:

Parâmetro Descrição Exemplo
target 🌐 URL alvo com [XSS] target=https://example.com/?q=[XSS]
delay ⏳ Delay em ms delay=1000
mode 🔄 Modo (axios/playwright) mode=axios
timeout ⏱️ Timeout em ms timeout=8000
verbose 📢 Modo verbose verbose=true
user_agent 🕵️ User-Agent customizado user_agent=Mozilla/5.0...

💡 O arquivo config.txt tem prioridade sobre config.json quando ambos existem.

Configuração Padrão (Demo)

Se nenhuma configuração for fornecida, o scanner usa este alvo demo para testes:

🌐 Demo Target:
   http://www.sudo.co.il/xss/level0.php?email=[XSS]
   
📝 Descrição: Página pública de teste XSS
🔄 Modo padrão: Axios
⏳ Delay padrão: 500ms

📱 Compatibilidade Termux

O RAV XSS detecta automaticamente quando está rodando no Termux (Android) e se adapta:

Recurso Desktop Termux
🔰 Modo Axios ✅ Disponível ✅ Disponível
🌐 Modo Playwright ✅ Disponível ❌ Desativado
🧙‍♂️ Wizard ✅ Completo ✅ Adaptado
📁 Relatórios ✅ Normal ✅ Normal

Detecção automática:

  • Verifica variável TERMUX_VERSION
  • Verifica prefixo com.termux
  • Verifica hostname (termux/android)
  • Verifica existência de /data/data/com.termux

📱 No Termux, o menu de modo é pulado e Axios é selecionado automaticamente.


⚠️ Aviso Legal

Esta ferramenta é destinada para:

  • Testes de segurança autorizados — Apenas teste sistemas que você possui ou tem permissão explícita para testar
  • Programas de Bug Bounty — Use apenas dentro do escopo definido pelo programa
  • Fins educacionais — Aprendizado sobre vulnerabilidades XSS em ambientes controlados

Você é responsável por:

  • 🚫 Testes não autorizados são ilegais — Não escaneie sites sem permissão
  • 🚫 Siga a divulgação responsável — Reporte vulnerabilidades pelos canais apropriados
  • 🚫 Cumpra as leis — Certifique-se de que seu uso está em conformidade com as leis locais e internacionais

This tool is provided for educational and authorized security testing purposes only. Users are solely responsible for complying with all applicable laws and regulations. The authors assume no liability for misuse or damage caused by this tool.

Ao usar esta ferramenta, você concorda em usá-la apenas em sistemas que está autorizado a testar.


Star History

Star History Chart

Feito com 💚 por RavenaStar

⬆ Voltar ao topo

About

⚙️ CLI/NPM | RAV XSS | 🎯 Basic Reflected XSS scanner for bug bounty programs.

Topics

Resources

License

Stars

Watchers

Forks

Contributors