
Uno strumento multithread progettato per identificare se le credenziali sono valide, non valide o valide come amministratore locale in una rete su larga scala tramite SMB, ora anche con un cacciatore di utenti.
Questo strumento è pensato per penetration tester che vogliono eseguire un test in modo rapido ed efficiente. Sebbene possa essere utilizzato per operazioni più furtive (inclusi alcuni aggiunte sotto), brilla davvero quando viene usato su larga scala di una rete ampia.
Al suo interno, gli fornisci una lista di credenziali che hai recuperato (o hash, può usare pass-the-hash) e una lista di sistemi nel dominio (suggerisco di scansionare prima la porta 445, oppure puoi usare "--scan"). Ti dirà se le credenziali recuperate sono valide nel dominio e se hai accesso di amministratore locale a un host. Vedi sotto per funzionalità aggiuntive, come la caccia agli utenti e l'enumerazione dettagliata degli host.
È pensato per essere eseguito su Kali Linux
.d8888b. 888 888b 888 d8b d8b
d88P Y88b 888 8888b 888 Y8P Y8P
888 888 888 88888b 888
888 888d888 .d88b. .d88888 888Y88b 888 888 88888b. 8888 8888b.
888 888P" d8P Y8b d88" 888 888 Y88b888 888 888 "88b "888 "88b
888 888 888 88888888 888 888 888 Y88888 888 888 888 888 .d888888
Y88b d88P 888 Y8b. Y88b 888 888 Y8888 888 888 888 888 888 888
"Y8888P" 888 "Y8888 "Y88888 888 Y888 888 888 888 888 "Y888888
888
d88P
888P"
v2.3 (Costruito il 1/26/2018) - Chris King (@raikiasec)
Per aiuto: ./CredNinja.py -h
usage: CredNinja.py -a accounts_to_test.txt -s systems_to_test.txt [-t THREADS] [--ntlm] [--valid] [--invalid] [-o OUTPUT] [-p PASSDELIMITER] [--delay SECONDS %JITTER] [--timeout TIMEOUT] [--stripe] [--scan] [--scan-timeout SCAN_TIMEOUT] [-h] [--no-color] [--os] [--domain] [--users] [--users-time USERS_TIME]
Verifica rapidamente la validità di più credenziali utente su più server e viene notificato se quell'utente ha diritti di amministratore locale su ciascun server.
Argomenti obbligatori: -a accounts_to_test.txt, --accounts accounts_to_test.txt Una parola o un file di credenziali utente da testare. I nomi utente sono accettati nella forma "DOMINIO\UTENTE:PASSWORD" -s systems_to_test.txt, --servers systems_to_test.txt Una parola o un file di server su cui testare. Può essere un singolo sistema, un nome file contenente un elenco di sistemi, un file gnmap o indirizzi IP in notazione CIDR. Ogni credenziale verrà testata su ciascuno di questi server tentando di navigare C$ tramite SMB
Argomenti opzionali: -t THREADS, --threads THREADS Numero di thread da usare. Predefinito: 10 --ntlm Tratta le password come hash NTLM e prova a pass-the-hash! --valid Mostra solo le credenziali valide/amministratore locale --invalid Mostra solo le credenziali non valide -o OUTPUT, --output OUTPUT Salva i risultati in un file -p PASSDELIMITER, --passdelimiter PASSDELIMITER Cambia il delimitatore tra nome utente e password. Predefinito: ":" --delay SECONDS %JITTER Ritarda ogni richiesta per thread di un numero specificato di secondi con jitter (esempio: --delay 20 10, ritardo di 20 secondi con jitter del 10%) --timeout TIMEOUT Numero di secondi di attesa per i dati prima del timeout. Predefinito: 15 secondi --stripe Testa una sola credenziale su un singolo host per evitare di inviare troppi tentativi di login su un singolo sistema (usato per verificare la validità delle credenziali). Questo selezionerà casualmente gli host dal file di host fornito. --scan Esegue un controllo rapido per vedere se la porta 445 è disponibile sull'host prima di accodarlo per l'elaborazione --scan-timeout SCAN_TIMEOUT Imposta il timeout per la scansione specificata dall'argomento --scan. Predefinito: 2 secondi -h, --help Ottieni aiuto sull'uso di questo script --no-color Disattiva l'output a colori. Il file scritto è sempre senza colori
Recupero informazioni aggiuntive: --os Mostra il sistema operativo del sistema se disponibile (nessuna richiesta aggiuntiva viene inviata) --domain Mostra il dominio primario del sistema se disponibile (nessuna richiesta aggiuntiva viene inviata) --users Elenca gli utenti che hanno effettuato l'accesso al sistema negli ultimi 6 mesi (richiede AMMINISTRATORE LOCALE). Restituisce nomi utente con il numero di giorni da quando la loro directory home è stata modificata. Questo invia una richiesta extra a ciascun host --users-time USERS_TIME Modifica --users per cercare utenti che hanno effettuato l'accesso negli ultimi giorni forniti (predefinito 100 giorni)
Changelog:
v2.3 - Aggiornato con alcune funzionalità aggiuntive
* Aggiunto parsing dei file gnmap. Il file fornito all'argomento --systems (-s)
ora può essere un file gnmap (che termina con .gnmap)
* Aggiunto parsing della notazione CIDR. L'indirizzo IP fornito all'argomento --systems (-s)
ora può essere in notazione CIDR e espanderà correttamente l'intervallo
e testerà tutti i sistemi nello spazio IP (assicurati di fornire --scan per
scansionare i sistemi in anticipo!)
* --scan è stato reso multithread per eseguirlo MOLTO più velocemente
v2.0 - Rilascio iniziale di CredNinja dal predecessore CredSwissArmy:
* Stesse capacità del precedente CredSwissArmy (utilizzo di credenziali e elenco host
per cercare accesso di amministratore locale su una rete tramite SMB)
* Completamente multithread! È 8 volte più veloce del vecchio CredSwissArmy!
* Gestisce errori e password complesse molto meglio
* Può ancora fare pass-the-hash con l'opzione "--ntlm"
* Ancora gli stessi argomenti di prima
* Aggiunto "--timeout", che permette di completare le scansioni più velocemente se lo desideri
* Aggiunto "--scan", che esegue una scansione rapida della porta 445 degli host per assicurarsi che
siano raggiungibili prima di provare le credenziali su di essi
* Aggiunto "--stripe", che testa ogni credenziale una volta su un sistema casuale
(usato per convalidare le credenziali senza apparire sospetti nel log eventi di un singolo sistema)
* Aggiunto "--delay", che ti permette di specificare un ritardo tra la scansione degli host
per essere più furtivo. "--delay 10 20" ritarderà di 10 secondi con un jitter del 20%
(quindi tra 8 e 10 secondi)
* Aggiunto output a colori così è più ovvio quando ottieni un successo!
E ORA LE AGGIUNTE PIÙ INTERESSANTI
* Aggiunto "--os", che mostra il sistema operativo di ogni sistema che può
identificare (nessun pacchetto aggiuntivo inviato all'host target)
* Aggiunto "--domain", che mostra il dominio primario di cui il sistema è membro
(nessun pacchetto aggiuntivo inviato all'host target)
* Aggiunto "--users", che mostra un elenco di utenti le cui directory home sono
state modificate in un certo numero di giorni (X è modificabile con "--users-days", predefinito
100). Fondamentalmente un cacciatore di utenti SMB che mostra dove gli utenti hanno effettuato l'accesso o
hanno effettuato l'accesso in passato (1 pacchetto aggiuntivo inviato a ciascun host target)
* In arrivo: Rilevatore di antivirus per segnalare potenziali antivirus in esecuzione
sul sistema