
Uno scanner di credenziali predefinite.
Uno scanner di credenziali predefinite.

changeme riprende da dove gli scanner commerciali si fermano. Si concentra sul rilevamento di credenziali predefinite e backdoor, non necessariamente credenziali comuni. La sua modalità predefinita è quella di scansionare le credenziali predefinite HTTP, ma supporta anche altre credenziali.
changeme è progettato per essere semplice nell'aggiungere nuove credenziali senza dover scrivere codice o moduli. changeme mantiene i dati delle credenziali separati dal codice. Tutte le credenziali sono memorizzate in file yaml in modo che possano essere facilmente lette sia dagli esseri umani che elaborate da changeme. I file delle credenziali possono essere creati utilizzando lo strumento ./changeme.py --mkcred e rispondendo ad alcune domande.
changeme supporta i protocolli http/https, mssql, mysql, postgres, ssh, ssh con chiave, snmp, mongodb e ftp. Usa ./changeme.py --dump per elencare tutte le credenziali attualmente disponibili.
Puoi caricare i tuoi target utilizzando vari metodi: singolo indirizzo IP/host, subnet, elenco di host, file nmap XML e query Shodan. Tutti i metodi tranne Shodan vengono caricati come argomento posizionale e il tipo viene dedotto.
changeme è stato testato solo su Linux e ha problemi noti su Windows e OS X/macOS. Usa docker per eseguire changeme sulle piattaforme non supportate. Supporta una coda basata su redis (più stabile) o una coda basata su memoria.
Le versioni stabili di changeme si trovano nella pagina releases.
Per il supporto mssql, è necessario installare unixodbc-dev prima di installare pyodbc.
Per il supporto postgres, è necessario installare libpq-dev.
PhantomJS è richiesto nel tuo PATH per gli screenshot dei report HTML.
Usa pip per installare i moduli Python richiesti: pip install -r requirements.txt
Un modo conveniente per eseguire changeme è farlo all'interno di un contenitore Docker. Puoi eseguire un contenitore pre-costruito da Docker Hub, o costruirne uno tuo usando le istruzioni seguenti.
Docker funziona meglio in combinazione con Redis come backend di coda. Ecco come ottenere un setup di contenitori collegati funzionante con Redis.
Get the latest containers: docker pull redis && docker pull ztgrace/changeme
Launch redis in the background: docker run -d --name redis1 redis
Start changeme linking the redis container by name and mounting a local directory into the container's /mnt directory: docker run -it -v /tmp/results:/mnt --link redis1:redis ztgrace/changeme:latest /bin/sh
Run changeme with a --redishost of redis and --output file in our mounted volume: ./changeme.py --redishost redis --output /mnt/results.csv --protocols ssh --threads 20 -d 192.168.1.0/24
docker build -t changeme .docker run -it changeme /bin/bashDi seguito sono riportati alcuni esempi di utilizzo comuni.
./changeme.py 192.168.59.100./changeme.py 192.168.59.0/24./changeme.py subnet.xml./changeme.py -n "Apache Tomcat" --timeout 5 192.168.59.0/24./changeme.py --shodan_query "Server: SQ-WEBCAM" --shodan_key keygoeshere -c camera./changeme.py --protocols ssh,ssh_key 192.168.59.0/24./changeme.py snmp://192.168.1.20Vedi Wiki Examples per esempi più dettagliati.
Lo scanner telnet è rotto.
Inoltre, tutto ciò che è stato segnalato come bug su https://github.com/ztgrace/changeme/issues.
I bug e i miglioramenti sono tracciati su https://github.com/ztgrace/changeme/issues.
Richiedi una credenziale: Per favore aggiungi un issue su Github e applica l'etichetta credential.
Vota per una credenziale: Se desideri aiutarci a dare priorità a quali credenziali aggiungere, puoi aggiungere un commento a un issue sulle credenziali.
Per maggiori dettagli, consulta il wiki.
Grazie per i contributi di codice e i suggerimenti.