RAIL_HTTPX

Postman leve + Burp core, em Rust.
Um binário. Zero Electron. Zero login. Zero telemetria.

rail-httpx-core · rail-httpx-cli · rail-httpx-gui

Por que existe

As ferramentas do dia a dia estão pesadas e fragmentadas. Postman tem 300+ MB e exige login. Insomnia mudou de licença três vezes. Burp Community faz uma coisa só. Nenhum deles tem banco de dados.

O RAIL_HTTPX resolve isso em um único executável de ~20 MB, multiplataforma, em três idiomas (PT-BR, EN, ES), com tema claro e escuro — e é open source de verdade (MIT).

O que ele faz

📤 Send

Cliente HTTP completo. GET, POST, PUT, PATCH, DELETE. Headers em texto livre. Body JSON. Interpolação {{var}}. Testado contra APIs REST, GraphQL e LLMs locais (Ollama).

🛡 Proxy MITM

Intercepta HTTPS com CA próprio gerado em runtime. Log em tempo real de toda request e response — headers, body, status, tempos. Vê o que o DevTools esconde.

🎯 Fuzzer

Wordlist paralela com marcador FUZZ na URL. Tabela com status, tamanho e tempo. Compatível com SecLists. Descobre endpoints, arquivos sensíveis e rotas esquecidas.

🔍 Scanner

Injeção automática nos query params. Detecta SQL Injection, XSS refletido, SSTI, Path Traversal e Command Injection. Severidade colorida e evidência extraída da resposta.

🪝 Webhook

Servidor HTTP local pra receber e inspecionar webhooks. Testa integrações com Stripe, GitHub, Mercado Pago, Twilio — sem ngrok, sem webhook.site, sem upload de dados.

🗄 DB

Cliente de banco integrado. PostgreSQL, MySQL e SQLite. Editor SQL com tabela de resultado dinâmica. Reporta linhas afetadas em mutações.

Screenshots

Aba Send com POST para um LLM local via Ollama
Send — POST para um LLM local (Ollama, qwen2.5:1.5b) via JSON puro. HTTP 200 em 26s, resposta completa em JSON.
Aba Proxy interceptando 46 requisições HTTPS em tempo real
Proxy MITM — 46 requests interceptadas em tempo real. Detalhe aberto mostra a request completa (headers do Firefox, cookies, user-agent) e a response (via Cloudflare, com Transfer-Encoding: chunked).
Aba Fuzzer rodando wordlist com 4752 resultados
Fuzzer — 4752 payloads rodados em paralelo. Tabela com status, tamanho da resposta e tempo por requisição.
Aba DB rodando SELECT em SQLite com 5 resultados
DB — SELECT em SQLite com tabela renderizada. Colunas dinâmicas, ordenação por idade DESC, tipagem preservada.

Instalação

Opção 1 — binário pronto

Vai em Releases e baixa o .exe mais recente. É executável direto, sem instalador.

Windows SmartScreen: vai avisar que "o aplicativo não é reconhecido". É normal para software open source sem certificado de code signing pago. Clica em Mais informações → Executar mesmo assim.

Opção 2 — via cargo (CLI)

cargo install rail-httpx-cli

Instala o CLI globalmente no seu sistema.

Opção 3 — compilar do código

git clone https://github.com/withvisionstack/rail_httpx.git
cd rail_httpx
cargo build --release --workspace

Binários em target/release/.

Uso rápido (CLI)

# Enviar um request
rail-httpx send https://httpbin.org/get

# POST com JSON inline
rail-httpx send https://httpbin.org/post -X POST -d '{"a":1}'

# POST com JSON de arquivo (evita briga com shell)
rail-httpx send http://api.local/generate -X POST --data-file body.json

# Scan de vulnerabilidades
rail-httpx scan "http://alvo/item?id=1" -p id

# Fuzzer com wordlist
rail-httpx fuzz "http://alvo/FUZZ" -w words.txt -c 50

# Banco de dados
rail-httpx db --url sqlite:///./dados.db -q "SELECT * FROM users LIMIT 5"
rail-httpx db --url postgres://user:pass@host/db -q "SELECT NOW()"

# Proxy MITM
rail-httpx ca export --out ca.pem
rail-httpx proxy --port 8080