
ssh-mitm v6.0.0
SSH-MITM - audit SSH resi semplici
SSH-MITM - audit SSH resi fatti semplici
Uno strumento interattivo di intercettazione SSH per audit di sicurezza autorizzati.
Intercetta le sessioni, monitora il traffico in tempo reale, inietta comandi e manipola i trasferimenti di file — tutto in tempo reale.
Nota legale: SSH-MITM è destinato esclusivamente ad audit di sicurezza autorizzati, test di penetrazione e ricerca. Non utilizzarlo contro sistemi di cui non sei proprietario o per i quali non hai esplicita autorizzazione scritta al test. L'intercettazione non autorizzata del traffico SSH può essere illegale nella tua giurisdizione.
🎓 Nuovo a SSH-MITM? Inizia con il tutorial interattivo
ssh-mitm tutorial
Apre una guida passo-passo basata su browser — nessun server di destinazione necessario. Cinque capitoli seguono una valutazione autorizzata di Logfile Inc., coprendo l'intercettazione delle password, l'autenticazione con chiave pubblica, i trasferimenti SFTP, l'esecuzione di comandi e il mirroring delle sessioni in tempo reale.
Avvio rapido
Posizionato tra un client e il suo server SSH, SSH-MITM intercetta la connessione — terminando entrambe le estremità in modo indipendente e inoltrando tutto il traffico, dando all'auditor visibilità e controllo completi:
1. Installazione
SSH-MITM non richiede installazione. Scarica l'AppImage e sei pronto a partire:
wget https://github.com/ssh-mitm/ssh-mitm/releases/latest/download/ssh-mitm-x86_64.AppImage
chmod +x ssh-mitm-x86_64.AppImage
Per altre opzioni di installazione (pip, Flatpak, Snap) consulta la guida all'installazione.
⚡ Ottieni l'ultima versione
La release su PyPI potrebbe essere in ritardo. Installa direttamente da GitHub per ottenere il tutorial interattivo e tutti i miglioramenti recenti:
pip install git+https://github.com/ssh-mitm/ssh-mitm.git
2. Avvia SSH-MITM
Punta SSH-MITM verso il tuo host di destinazione — usa un sistema su cui sei autorizzato a testare:
./ssh-mitm-x86_64.AppImage server --remote-host <host-di-destinazione>
3. Instrada una connessione client
Fai connettere il client SSH tramite SSH-MITM sulla porta 10022:
ssh -p 10022 utente@host-mitm
SSH-MITM intercetta la sessione e registra immediatamente le credenziali:
INFO Remote authentication succeeded
Remote Address: <host-di-destinazione>:22
Username: alice
Password: secret
Agent: no agent
4. Collegati alla sessione live
Per ogni connessione intercettata, SSH-MITM apre una shell mirror su una porta locale:
INFO ℹ created mirrorshell on port 34463. connect with: ssh -p 34463 127.0.0.1
Collegati ad essa da un terminale separato:
ssh -p 34463 127.0.0.1
La shell mirror riflette la sessione in tempo reale. L'auditor può osservare l'attività dell'utente e iniettare comandi in modo indipendente, senza influenzare la connessione originale.
Cosa può fare SSH-MITM
| Funzionalità | Descrizione |
|---|---|
| Monitoraggio interattivo delle sessioni | Collegati a qualsiasi sessione intercettata tramite una shell mirror — osserva e inietta comandi in tempo reale |
| Manipolazione dei trasferimenti di file | Intercetta i trasferimenti SCP/SFTP, salva copie o sostituisci file al volo |
| Intercettazione del port forwarding | Intercetta i tunnel TCP e il forwarding dinamico SOCKS 4/5 |
| Phishing dei token FIDO2 | Intercetta l'autenticazione con token hardware tramite l'attacco di autenticazione banale (info OpenSSH) |
| Intercettazione dell'autenticazione | Cattura le password; accetta la stessa chiave pubblica del server di destinazione e ripiega automaticamente sull'autenticazione con password |
| Monitoraggio delle sessioni MOSH | Intercetta e decifra le sessioni UDP MOSH (Mobile Shell); visualizza il terminale live tramite un emulatore VT100/ANSI integrato |
| Remoting PowerShell (PSRP) | Intercetta le sessioni di remoting PowerShell su SSH; registra comandi, output, errori e transizioni di stato; scrivi trascrizioni per sessione |
| Audit dei client | Identifica vulnerabilità note nei client SSH in connessione basandosi solo sulla negoziazione delle chiavi |
| Supporto plugin | Estendi e personalizza tutto il comportamento di intercettazione con i plugin |
Casi d'uso
- Test di penetrazione — audita attivamente client e server SSH in incarichi autorizzati; intercetta, manipola e riproduce le sessioni
- Ricerca sulla sicurezza — analizza in modo interattivo il comportamento dei client SSH, i flussi di autenticazione e le debolezze a livello di protocollo
- Ambienti di formazione — dimostra le tecniche MITM e il dirottamento delle sessioni in configurazioni di laboratorio controllate
- Analisi malware — monitora e interagisci con le sessioni SSH di client sospetti in ambienti isolati
Ricerca sulla sicurezza
SSH-MITM è stato originariamente sviluppato per indagare una debolezza fondamentale nel modo in cui i client SSH gestiscono l'autenticazione con token hardware. La ricerca ha rivelato che i token FIDO2 — spesso usati come secondo fattore — possono essere oggetto di phishing tramite una tecnica chiamata autenticazione banale.
L'attacco sfrutta il fatto che i client SSH possono essere forzati verso un metodo di autenticazione banale — come keyboard-interactive senza prompt — che di fatto concede l'accesso senza alcuna autenticazione reale. Questo bypassa completamente la protezione del token hardware, poiché il token non viene mai sfidato. SSH-MITM può simulare questo contro qualsiasi client che non lo rifiuti esplicitamente:
ssh-mitm server --enable-trivial-auth
Operando dalla posizione Man-in-the-Middle è possibile osservare il comportamento dei client SSH che è invisibile da entrambe le estremità. SSH-MITM è stato utilizzato per scoprire 7 vulnerabilità precedentemente sconosciute in software SSH ampiamente diffuso:
Ultima: CVE-2026-60000 — l'autenticazione GSSAPI di OpenSSH violava la RFC 4462 in modi che permettevano a un attaccante di bypassare completamente
MaxAuthTries, causando un denial of service pre-autenticazione. La stessa causa principale ha prodotto anche un oracolo di validità degli username e un crash del processo privilegiato, tutti corretti in OpenSSH 10.4.
Talk a DeepSec 2021 — spiegazione completa dell'attacco:
Clicca per visualizzare su vimeo.com
Scarica le slide della presentazione
Non ogni risultato di questa ricerca è una vulnerabilità — vedi Contributi a monte per le correzioni di hardening contribuite direttamente a OpenSSH.
Contribuire
I contributi sono benvenuti! Leggi CONTRIBUTING.md per i dettagli sulla configurazione di sviluppo, lo stile del codice e come inviare una pull request.
Contatti
- E-Mail: [email protected]
- Issue Tracker

