
Scanner asincrono per la sicurezza delle API in Rust per controlli di CORS, CSP, GraphQL, JWT, OpenAPI e verifiche attive della postura delle API.
Se questo progetto ti è utile nel tuo lavoro, sostieni la manutenzione continua e le nuove funzionalità.
Portafoglio di donazione ETH
0x11282eE5726B3370c8B480e321b3B2aA13686582
Scansiona il codice QR o copia l'indirizzo del portafoglio qui sopra.
Scanner di sicurezza API asincrono e modulare per test di baseline API e rilevamento delle regressioni.
Combina scoperta e controlli mirati (CORS/CSP/GraphQL/OpenAPI/JWT/API Security) usando concorrenza adattiva e output pronti per CI (NDJSON/SARIF).
Casi d'uso: offensivo per la scoperta in red team/pentest API e la validazione degli exploit, e difensivo per il gating delle regressioni in CI/CD, il rafforzamento continuo delle API e il rilevamento precoce di configurazioni errate.
Scansioni su larga scala? Vedi Triage Mode — scansiona 5000 target in 20 minuti con controlli di sicurezza essenziali, quindi usa Enrich Mode per aggiungere contesto di threat intelligence (porte, CVE, ASN, età del dominio) ai risultati.
ApiHunterapihunterapi_scannerapihunter (predefinito per cargo run)Imposta questi valori nelle impostazioni del repository GitHub per la rilevabilità:
Scanner asincrono di sicurezza API per CORS/CSP/GraphQL/JWT/OpenAPI e controlli attivi della postura API.https://github.com/Teycir/ApiHunterrust, security, api-security, scanner, graphql, cors, csp, jwt, openapi, sarif, ndjsonflowchart LR A[CLI apihunter] --> B[main.rs] D[Input Sources] --> E[Pre-filter + Discovery] B --> C[HttpClient + Config] E --> F[runner.rs] C --> F
F --> G1[Passive scanners]
F --> G2[Active scanners]
I[template-tool] --> H[CVE templates]
H --> G2
G1 --> J[Findings]
G2 --> J
J --> K[Reporter]
K --> L[Auto Reports]
K --> M[CI/CD Controls]
## Perché ApiHunter?
### Vantaggi principali
- **Architettura API-First**: Progettato appositamente per API REST/GraphQL, non adattato da scanner per applicazioni web
- **Riduzione intelligente dei falsi positivi**:
- Rilevamento catch-all per SPA con probing canary
- Validazione dei segreti sensibile al contesto (frontend vs backend)
- Validazione del contenuto del corpo e controllo del referer
- Fingerprinting delle risposte per saltare risultati duplicati
- **Progettato per essere sicuro in produzione**:
- Concorrenza adattiva (AIMD) che riduce la velocità in caso di errori
- Rate limiting per host con ritardi configurabili
- Controlli di cortesia (retry, timeout, evasione WAF)
- Modalità dry-run per i controlli attivi
- **Stealth ed Evasione**:
- Rotazione runtime dello User-Agent da un pool selezionato (assets/user_agents.txt)
- Ritardi casuali con jitter
- Applicazione del ritardo per host (evita schemi a raffica)
- Logica di retry con backoff esponenziale
- Iniezione di header personalizzati per mimetizzarsi nel traffico legittimo
- Timing adattivo basato sulle risposte del server
- Nessuna fingerprint di scanner hardcoded nella modalità predefinita
### Analisi approfondita delle tecniche stealth
ApiHunter utilizza diverse tecniche stealth per evitare il rilevamento da parte di WAF (Web Application Firewall) e sistemi anti-bot:
#### 1. Rotazione dello User-Agent
**Cosa fa:** Cicla casualmente oltre 100 stringhe User-Agent di browser reali da un file (`assets/user_agents.txt`)
**Perché funziona:** I bot in genere usano lo stesso User-Agent (come `curl/7.68.0`). Fingendoti Chrome, Firefox, Safari, ecc., ti confondi con il traffico legittimo
**Analogia semplice:** Come indossare travestimenti diversi invece di portare sempre la stessa uniforme
#### 2. Timing casuale e jitter
**Cosa fa:** Aggiunge ritardi casuali tra le richieste (controllati da `--delay-ms`) con jitter (piccole variazioni casuali)