Torna agli aggiornamenti
New releaseSep 11, 2026

ssh-mitm v6.0.0

SSH-MITM - audit SSH resi semplici

Condividi

SSH-MITM - audit SSH resi fatti semplici

SSH-MITM intercetta il login con password

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.

Scarica come AppImage     Scarica da Flathub     Ottienilo dallo Snap Store

OpenSSF Best Practices Code style: black CodeFactor Documentation Status PRs Welcome GitHub Seguimi su GitHub

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.

Tutorial interattivo SSH-MITM


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:

Configurazione SSH-MITM

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

SSH-MITM intercetta le credenziali

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 sessioniCollegati a qualsiasi sessione intercettata tramite una shell mirror — osserva e inietta comandi in tempo reale
Manipolazione dei trasferimenti di fileIntercetta i trasferimenti SCP/SFTP, salva copie o sostituisci file al volo
Intercettazione del port forwardingIntercetta i tunnel TCP e il forwarding dinamico SOCKS 4/5
Phishing dei token FIDO2Intercetta l'autenticazione con token hardware tramite l'attacco di autenticazione banale (info OpenSSH)
Intercettazione dell'autenticazioneCattura le password; accetta la stessa chiave pubblica del server di destinazione e ripiega automaticamente sull'autenticazione con password
Monitoraggio delle sessioni MOSHIntercetta 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 clientIdentifica vulnerabilità note nei client SSH in connessione basandosi solo sulla negoziazione delle chiavi
Supporto pluginEstendi 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:

CVE-2026-60000 CVE-2022-38337 CVE-2022-38336 CVE-2021-36370 CVE-2021-36369 CVE-2021-36368 CVE-2021-36367

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
Clicca per visualizzare il video 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.

(torna in cima)

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.

(torna in cima)

Contatti

(torna in cima)

Collaboratori

Categorie