L'amministratore del server Jabber jabber.ru (xmpp.ru) ha rilevato un attacco man-in-the-middle (MITM) in corso da 90 giorni a 6 mesi nelle reti dei provider di hosting tedeschi Hetzner e Linode, dove si trovano i server e gli ambienti VPS ausiliari del progetto. L'attacco è organizzato reindirizzando il traffico verso un nodo di transito che sostituisce il certificato TLS per le connessioni XMPP crittografate con l'estensione STARTTLS.
L'attacco è stato rilevato a causa di un errore dei suoi organizzatori, che non hanno rinnovato il certificato TLS utilizzato per lo spoofing. Il 16 ottobre, l'amministratore di jabber.ru ha ricevuto un messaggio di errore relativo alla scadenza del certificato mentre tentava di connettersi al servizio, ma il certificato ospitato sul server non era scaduto. Alla fine si è scoperto che il certificato ricevuto dal client era diverso da quello inviato dal server. Il primo falso Certificato TLS È stata ottenuta il 18 aprile 2023, tramite il servizio Let's Encrypt, grazie al quale l'attaccante, avendo la capacità di intercettare il traffico, è stato in grado di confermare l'accesso ai siti jabber.ru e xmpp.ru.
Inizialmente, si presumeva che il server del progetto fosse compromesso e che la sostituzione fosse stata eseguita sul suo lato. Tuttavia, l'audit condotto non ha rivelato alcuna traccia di hacking. Allo stesso tempo, nel log del server è stato rilevato un arresto e una riattivazione a breve termine dell'interfaccia di rete (collegamento NIC inattivo/collegamento NIC attivo), eseguiti il 18 luglio alle 12:58, che potrebbero indicare manipolazioni nella connessione del server allo switch. È interessante notare che pochi minuti prima, il 18 luglio alle 12:49 e alle 12:38, sono stati generati due certificati TLS falsi.
Inoltre, la sostituzione è stata effettuata non solo nella rete del provider Hetzner, dove si trova il server principale, ma anche nella rete del provider Linode, dove erano presenti ambienti VPS con proxy ausiliari che reindirizzavano il traffico da altri indirizzi. Indirettamente, è stato scoperto che il traffico verso la porta di rete 5222 (XMPP STARTTLS) nelle reti di entrambi i provider viene reindirizzato tramite un host aggiuntivo, il che ha fatto supporre che l'attacco sia stato eseguito da una persona con accesso all'infrastruttura dei provider.
In teoria, la sostituzione avrebbe potuto verificarsi dal 18 aprile (data di creazione del primo certificato falso per jabber.ru), ma i casi confermati di sostituzione del certificato sono stati registrati solo tra il 21 luglio e il 19 ottobre. Durante tutto questo periodo, lo scambio di dati crittografati con jabber.ru e xmpp.ru può essere considerato compromesso. La sostituzione è cessata dopo l'avvio dell'indagine, l'esecuzione dei test e l'invio di una richiesta ai servizi di supporto dei provider Hetzner e Linode il 18 ottobre. Inoltre, è stato necessario un hop aggiuntivo durante l'instradamento dei pacchetti inviati alla porta 5222 di uno dei server A Linode, la tradizione è ancora in vigore, ma il certificato non viene più sostituito.
Si ritiene che l'attacco possa essere stato effettuato con la consapevolezza dei provider su richiesta delle forze dell'ordine, a seguito di un attacco hacker all'infrastruttura di entrambi i provider, o da un dipendente con accesso a entrambi. Grazie alla capacità di intercettare e modificare il traffico XMPP, l'aggressore avrebbe potuto accedere a tutti i dati associati agli account, come la cronologia degli scambi di messaggi archiviata sul server, e avrebbe potuto anche inviare messaggi per conto di qualcun altro e apportare modifiche ai messaggi di qualcun altro. I messaggi inviati utilizzando la crittografia end-to-end (OMEMO, OTR o PGP) possono essere considerati integri se le chiavi di crittografia sono confermate dagli utenti su entrambi i lati della connessione. Si consiglia agli utenti di jabber.ru di modificare le proprie password di accesso e di controllare le chiavi OMEMO e PGP nei propri archivi PEP per eventuali sostituzioni.
Fonte: opennet.ru
