
Una pipeline scriptata di strumenti per semplificare la fase di ricognizione del bug bounty/penetration test, così puoi concentrarti a stanare i bug.
Una pipeline di strumenti scriptata per semplificare la fase di ricognizione nel bug bounty/penetration test, così puoi concentrarti sulla caccia ai bug.

Se hai trovato bug usando questo strumento, fammelo sapere!
Chomp Scan è uno script Bash che combina gli strumenti più veloci ed efficaci (secondo la mia opinione/esperienza) per svolgere la lunga e talvolta tediosa ricognizione. Niente più ricerca di wordlist o tentativi di ricordare quando hai iniziato una scansione e dove si trova l'output. Chomp Scan può concentrarsi su una lista di sottodomini potenzialmente interessanti, permettendoti di risparmiare tempo e concentrarti sui target di alto valore. Può persino inviarti una notifica tramite Notica quando ha terminato!
Chomp Scan ora integra Notica, che ti permette di ricevere una notifica quando lo script termina. Basta visitare Notica e ottenere un parametro URL unico, ad esempio notica.us/?xxxxxxxx. Passa il parametro a Chomp Scan tramite il flag -n, tieni aperta la pagina Notica in una scheda del browser sul computer o sul telefono e riceverai un messaggio quando Chomp Scan ha terminato. Niente più controlli costanti o dimenticanze per scansioni lunghe.
È inclusa una lista di parole interessanti, come dev, test, uat, staging, ecc., e i domini che contengono questi termini vengono contrassegnati. In questo modo puoi concentrarti prima sui domini interessanti, se lo desideri. Questa lista può essere personalizzata in base alle tue esigenze o sostituita con un altro file tramite il flag -X.
Chomp Scan funziona in diverse modalità. Un nuovo File di Configurazione è il metodo consigliato per eseguire le scansioni, poiché offre il controllo più granulare su strumenti e impostazioni. È inclusa una modalità CLI standard, che funziona come qualsiasi altro strumento CLI. Una modalità interattiva guidata è disponibile, così come una modalità non interattiva, utile se non vuoi cercare parametri o preoccuparti di impostare più argomenti.
Nuovo Chomp Scan ora include rescope. Rescope analizzerà tutti i domini risolti scoperti da Chomp Scan e genererà un file di ambito JSON che può essere importato in Burp Suite. Questa opzione può essere abilitata impostando la variabile ENABLE_RESCOPE nel file di configurazione o passando il flag -r tramite riga di comando.
Per favore, consulta la Wiki per la documentazione dettagliata.
Nota: Chomp Scan è in sviluppo attivo e verranno aggiunti nuovi/diversi strumenti man mano che li incontrerò. Pull request e commenti sono benvenuti!
Chomp Scan ora offre un'opzione di file di configurazione che fornisce un controllo più granulare su quali strumenti eseguire ed è meno ingombrante rispetto a passare un gran numero di argomenti CLI. È il metodo consigliato per eseguire Chomp Scan. Può essere utilizzato passando il flag -L. Un file di esempio è incluso in questo repository come modello, e i dettagli completi del file di configurazione sono disponibili nella pagina wiki del File di Configurazione.
Vengono utilizzate una varietà di wordlist, sia per il brute-forcing dei sottodomini che per la scoperta di contenuti. Le Seclists di Daniel Miessler sono ampiamente utilizzate, così come le liste di Jason Haddix. È possibile utilizzare wordlist differenti passando una wordlist personalizzata o utilizzando una delle liste integrate con nomi predefiniti. Vedi la pagina wiki Wordlist per maggiori dettagli.
Clona questo repository ed esegui lo script installer.sh incluso, opzionalmente includendo un percorso file personalizzato per installare gli strumenti necessari. Assicurati di eseguire source ~/.profile nel tuo terminale dopo aver eseguito l'installer per aggiungere il percorso binario di Go alla variabile $PATH. Quindi esegui Chomp Scan. Se stai usando zsh, fish o un'altra shell, assicurati che ~/go/bin sia nel tuo path. Per maggiori dettagli, consulta la pagina wiki Installazione.
TLDR: root@kali:~/chomp-scan# ./installer.sh [/qualche/percorso/opzionale/di/installazione]
Per informazioni complete sull'utilizzo, consulta la pagina Utilizzo della wiki. Nota che la configurazione è il metodo consigliato e più potente per eseguire Chomp Scan.
Chomp Scan esegue sempre l'enumerazione dei sottodomini, quindi è necessario un dominio tramite il flag -u. Il dominio non deve contenere uno schema, ad esempio http:// o https://. Per impostazione predefinita, viene sempre utilizzato HTTPS. Può essere cambiato in HTTP passando il flag -H. Una wordlist è opzionale e, se non viene fornita, viene utilizzata la lista breve integrata (20k parole).
Le altre fasi della scansione sono opzionali. La scoperta di contenuti può accettare una wordlist opzionale, altrimenti viene utilizzata la lista breve integrata (22k parole).
I risultati finali della scansione sono memorizzati in tre file di testo nella directory di output. Tutti i domini univoci trovati, sia che risolvano o meno, sono memorizzati in all_discovered_domains.txt, e tutti gli IP univoci scoperti sono memorizzati in all_discovered_ips.txt. Tutti i domini che risolvono a un IP sono memorizzati in all_resolved_domains.txt. A partire dalla v4.1, questi domini vengono utilizzati per generare la lista dei domini interessanti e la lista di tutti i domini, che possono poi essere utilizzati per la scoperta di contenuti e la raccolta di informazioni.
chomp-scan.sh -u example.com -a d short -cC large -p -o path/to/directory
Usage of Chomp Scan:
-u domain
(required) Domain name to scan. This should not include a scheme, e.g. https:// or http://.
-L config-file
(optional) The path to a config file. This can be used to provide more granular control over what tools are run.
-d wordlist
(optional) The wordlist to use for subdomain enumeration. Three built-in lists, short, long, and huge can be used, as well as the path to a custom wordlist. The default is short.
-c
(optional) Enable content discovery phase. The wordlist for this option defaults to short if not provided.
-C wordlist
(optional) The wordlist to use for content discovery. Five built-in lists, small, medium, large, xl, and xxl can be used, as well as the path to a custom wordlist. The default is small.
-P file-path
(optional) Set a custom directory for the location of tools. The path must exist and the directory must contain all needed tools.
-s
(optional) Enable screenshots using Aquatone.
-i
(optional) Enable information gathering phase, using subjack, CORStest, S3Scanner, bfac, whatweb, wafw00f, httprobe, and nikto.
-p
(optional) Enable portscanning phase, using masscan (run as root) and nmap.
-I
(optional) Enable interactive mode. This allows you to select certain tool options and inputs interactively. This cannot be run with -D.
-D
(optional) Enable default non-interactive mode. This mode uses pre-selected defaults and requires no user interaction or options. This cannot be run with -I.
Options: Subdomain enumeration wordlist: short.
Content discovery wordlist: small.
Aquatone screenshots: yes.
Portscanning: yes.
Information gathering: yes.
Domains to scan: all unique discovered.
-b wordlist
(optional) Set custom domain blacklist file.
-X wordlist
(optional) Set custom interesting word list.
-o directory
(optional) Set custom output directory. It must exist and be writable.
-a
(optional) Use all unique discovered domains for scans, rather than interesting domains. This cannot be used with -A.
-A
(optional, default) Use only interesting discovered domains for scans, rather than all discovered domains. This cannot be used with -a.
-H
(optional) Use HTTP for connecting to sites instead of HTTPS.
-r
(optional) Enable creation of Burp scope JSON file with rescope.
-h
(optional) Display this help page.
Chomp Scan è ancora in sviluppo attivo, poiché lo uso io stesso per la caccia ai bug, quindi intendo continuare ad aggiungere nuove funzionalità e strumenti man mano che li incontro. Suggerimenti per nuovi strumenti, feedback e pull request sono tutti benvenuti. Possibili aggiunte:

Grazie a tutti gli autori degli strumenti inclusi. Sono loro che fanno tutto il lavoro pesante.