Attacco man-in-the-middle - Man-in-the-middle attack

Nella crittografia e nella sicurezza informatica , un man-in-the-middle , monster-in-the-middle , machine-in-the-middle , monkey-in-the-middle , ficcanaso-in-the-middle ( MITM ) o L' attacco person-in-the-middle ( PITM ) è un attacco informatico in cui l'attaccante trasmette segretamente e possibilmente altera le comunicazioni tra due parti che credono di comunicare direttamente tra loro, poiché l'attaccante si è inserito tra le due parti. Un esempio di attacco MITM è l' intercettazione attiva , in cui l'attaccante stabilisce connessioni indipendenti con le vittime e trasmette messaggi tra loro per far credere loro di parlare direttamente tra loro tramite una connessione privata, quando in realtà l'intera conversazione è controllata da l'attaccante. L'attaccante deve essere in grado di intercettare tutti i messaggi rilevanti che passano tra le due vittime e iniettarne di nuovi. Questo è semplice in molte circostanze; ad esempio, un utente malintenzionato all'interno del raggio di ricezione di un punto di accesso Wi-Fi non crittografato potrebbe inserirsi come man-in-the-middle.

Poiché mira a eludere l'autenticazione reciproca, un attacco MITM può avere successo solo quando l'attaccante impersona ciascun endpoint sufficientemente bene da soddisfare le proprie aspettative. La maggior parte dei protocolli crittografici include una forma di autenticazione dell'endpoint specifica per prevenire attacchi MITM. Ad esempio, TLS può autenticare una o entrambe le parti utilizzando un'autorità di certificazione reciprocamente attendibile .

Esempio

Un'illustrazione dell'attacco man-in-the-middle

Supponiamo che Alice desideri comunicare con Bob . Nel frattempo, Mallory desidera intercettare la conversazione per origliare e, facoltativamente, consegnare un messaggio falso a Bob.

Innanzitutto, Alice chiede a Bob la sua chiave pubblica . Se Bob invia la sua chiave pubblica ad Alice, ma Mallory è in grado di intercettarla, può iniziare un attacco MITM. Mallory invia ad Alice un messaggio contraffatto che sembra provenire da Bob, ma include invece la chiave pubblica di Mallory.

Alice, credendo che questa chiave pubblica sia di Bob, crittografa il suo messaggio con la chiave di Mallory e invia il messaggio cifrato a Bob. Mallory intercetta nuovamente, decifra il messaggio utilizzando la sua chiave privata, eventualmente lo altera se lo desidera e lo ricodifica utilizzando la chiave pubblica che ha intercettato da Bob quando inizialmente ha cercato di inviarlo ad Alice. Quando Bob riceve il messaggio appena cifrato, crede che provenga da Alice.

  1. Alice invia un messaggio a Bob, che viene intercettato da Mallory:
    Alice "Ciao Bob, sono Alice. Dammi la tua chiave." →     Mallory     Bob
  2. Mallory trasmette questo messaggio a Bob; Bob non può dire che non sia proprio di Alice:
    Alice     Mallory "Ciao Bob, sono Alice. Dammi la tua chiave." →     Bob
  3. Bob risponde con la sua chiave di crittografia:
    Alice     Mallory     ← [la chiave di Bob ] Bob
  4. Mallory sostituisce la chiave di Bob con la sua e la trasmette ad Alice, affermando che è la chiave di Bob:
    Alice     ← [la chiave di Mallory     ] Mallory Bob
  5. Alice crittografa un messaggio con quella che crede essere la chiave di Bob, pensando che solo Bob possa leggerla:
    Alice "Ci vediamo alla fermata dell'autobus!" [criptato con la chiave di Mallory] →     Mallory     Bob
  6. Tuttavia, poiché in realtà è stato crittografato con la chiave di Mallory, Mallory può decrittografarlo, leggerlo, modificarlo (se lo si desidera), crittografare nuovamente con la chiave di Bob e inoltrarlo a Bob:
    Alice     Mallory "Ci vediamo al furgone lungo il fiume!" [crittografato con la chiave di Bob] →     Bob
  7. Bob pensa che questo messaggio sia una comunicazione sicura di Alice.

Questo esempio mostra la necessità per Alice e Bob di avere un modo per assicurarsi che stiano veramente usando le chiavi pubbliche l'uno dell'altro, piuttosto che la chiave pubblica di un utente malintenzionato. Altrimenti, tali attacchi sono generalmente possibili, in linea di principio, contro qualsiasi messaggio inviato utilizzando la tecnologia a chiave pubblica. Una varietà di tecniche può aiutare a difendersi dagli attacchi MITM.

Difesa e rilevamento

Gli attacchi MITM possono essere prevenuti o rilevati in due modi: autenticazione e rilevamento di manomissioni. L'autenticazione fornisce un certo grado di certezza che un dato messaggio provenga da una fonte legittima. Il rilevamento di manomissioni mostra semplicemente la prova che un messaggio potrebbe essere stato alterato.

Autenticazione

Tutti i sistemi crittografici sicuri contro gli attacchi MITM forniscono un metodo di autenticazione per i messaggi. La maggior parte richiede uno scambio di informazioni (come le chiavi pubbliche) oltre al messaggio su un canale sicuro . Tali protocolli, che spesso utilizzano protocolli di accordo di chiave , sono stati sviluppati con requisiti di sicurezza diversi per il canale sicuro, sebbene alcuni abbiano tentato di eliminare del tutto il requisito per qualsiasi canale sicuro.

Un'infrastruttura a chiave pubblica , come ad esempio Transport Layer Security , può indurirsi Transmission Control Protocol contro gli attacchi MITM. In tali strutture, client e server si scambiano certificati emessi e verificati da una terza parte fidata chiamata autorità di certificazione (CA). Se la chiave originale per autenticare questa CA non è stata essa stessa oggetto di un attacco MITM, i certificati emessi dalla CA possono essere utilizzati per autenticare i messaggi inviati dal proprietario di quel certificato. L'uso dell'autenticazione reciproca , in cui sia il server che il client convalidano la comunicazione dell'altro, copre entrambe le estremità di un attacco MITM. Se l'identità del server o del client non viene verificata o ritenuta non valida, la sessione terminerà. Tuttavia, il comportamento predefinito della maggior parte delle connessioni consiste nell'autenticare solo il server, il che significa che l'autenticazione reciproca non viene sempre utilizzata e che possono ancora verificarsi attacchi MITM.

Le attestazioni, come le comunicazioni verbali di un valore condiviso (come in ZRTP ), o le attestazioni registrate come le registrazioni audio/visive di un hash di chiave pubblica vengono utilizzate per scongiurare gli attacchi MITM, poiché i media visivi sono molto più difficili e richiedono tempo per imitare rispetto alla semplice comunicazione a pacchetto di dati. Tuttavia, questi metodi richiedono un essere umano nel ciclo per avviare correttamente la transazione.

In un ambiente aziendale, l'autenticazione corretta (come indicato dal lucchetto verde del browser) non implica sempre una connessione sicura con il server remoto. Le politiche di sicurezza aziendali potrebbero contemplare l'aggiunta di certificati personalizzati nei browser Web delle workstation per poter ispezionare il traffico crittografato. Di conseguenza, un lucchetto verde non indica che il client si è autenticato con successo con il server remoto ma solo con il server/proxy aziendale utilizzato per l'ispezione SSL/TLS.

HTTP Public Key Pinning (HPKP), a volte chiamato "certificate pinning", aiuta a prevenire un attacco MITM in cui l'autorità di certificazione stessa è compromessa, facendo in modo che il server fornisca un elenco di hash di chiave pubblica "bloccati" durante la prima transazione. Le transazioni successive richiedono quindi che una o più chiavi nell'elenco vengano utilizzate dal server per autenticare tale transazione.

DNSSEC estende il protocollo DNS per utilizzare le firme per autenticare i record DNS, impedendo a semplici attacchi MITM di indirizzare un client a un indirizzo IP dannoso .

Rilevamento manomissione

L'esame della latenza può potenzialmente rilevare l'attacco in determinate situazioni, ad esempio con calcoli lunghi che portano a decine di secondi come le funzioni hash . Per rilevare potenziali attacchi, le parti verificano discrepanze nei tempi di risposta. Ad esempio: supponiamo che due parti impieghino normalmente un certo periodo di tempo per eseguire una determinata transazione. Se una transazione, tuttavia, dovesse impiegare un tempo anomalo per raggiungere l'altra parte, ciò potrebbe essere indicativo dell'interferenza di una terza parte che inserisce ulteriore latenza nella transazione.

La crittografia quantistica , in teoria, fornisce prove di manomissione per le transazioni attraverso il teorema di non clonazione . I protocolli basati sulla crittografia quantistica in genere autenticano parte o tutta la loro comunicazione classica con uno schema di autenticazione sicuro incondizionatamente. Ad esempio l' autenticazione Wegman-Carter .

Analisi forense

Il traffico di rete catturato da quello che si sospetta sia un attacco può essere analizzato per determinare se c'è stato o meno un attacco e, in caso affermativo, determinare l'origine dell'attacco. Tra le prove importanti da analizzare durante l'esecuzione di indagini legali di rete su un attacco sospetto sono incluse:

  • Indirizzo IP del server
  • Nome DNS del server
  • Certificato X.509 del server
    • Se il certificato è stato autofirmato o meno
    • Se il certificato è stato firmato o meno da
    un'autorità di certificazione attendibile
  • Se il certificato è stato revocato o meno
  • Indipendentemente dal fatto che il certificato sia stato modificato di recente
  • Se altri client, altrove su Internet, hanno ricevuto o meno lo stesso certificato

casi notevoli

Un notevole attacco MITM non crittografico è stato perpetrato da un router di rete wireless Belkin nel 2003. Periodicamente, veniva instradato su una connessione HTTP : questo non riusciva a trasferire il traffico alla sua destinazione, ma invece rispondeva come il server previsto. La risposta inviata, al posto della pagina web richiesta dall'utente, era un annuncio pubblicitario per un altro prodotto Belkin. Dopo le proteste degli utenti tecnicamente alfabetizzati, questa funzione è stata rimossa dalle versioni successive del firmware del router .

Nel 2011, una violazione della sicurezza dell'autorità di certificazione olandese DigiNotar ha portato all'emissione fraudolenta di certificati . Successivamente, i certificati fraudolenti sono stati utilizzati per eseguire attacchi MITM.

Nel 2013, è stato rivelato che Xpress Browser di Nokia decrittografava il traffico HTTPS sui server proxy di Nokia , fornendo all'azienda l' accesso in chiaro al traffico del browser crittografato dei suoi clienti. Nokia ha risposto affermando che il contenuto non è stato archiviato in modo permanente e che l'azienda disponeva di misure organizzative e tecniche per impedire l'accesso a informazioni private.

Nel 2017, Equifax ha ritirato le sue app per telefoni cellulari in seguito alla preoccupazione per le vulnerabilità del MITM.

Altre importanti implementazioni nella vita reale includono quanto segue:

Guarda anche

  • ARP spoofing : una tecnica mediante la quale un utente malintenzionato invia messaggi del protocollo di risoluzione degli indirizzi su una rete locale
  • Trasmettitore Aspidistra  - un trasmettitore radio britannico utilizzato per le operazioni di "intrusione" della seconda guerra mondiale, uno dei primi attacchi MITM.
  • Babington Plot  - il complotto contro Elisabetta I d'Inghilterra, dove Francis Walsingham ha intercettato la corrispondenza.
  • Sicurezza informatica  : progettazione di sistemi informatici sicuri.
  • Crittoanalisi  : l'arte di decifrare i messaggi crittografati con una conoscenza incompleta di come sono stati crittografati.
  • Firma digitale  – una garanzia crittografica dell'autenticità di un testo, solitamente il risultato di un calcolo che solo l'autore dovrebbe essere in grado di eseguire.
  • Evil maid attack  : attacco utilizzato contro i sistemi di crittografia dell'intero disco
  • Protocollo di interblocco  : un protocollo specifico per aggirare un attacco MITM quando le chiavi potrebbero essere state compromesse.
  • Gestione delle chiavi  : come gestire le chiavi crittografiche, inclusa la generazione, lo scambio e l'archiviazione.
  • Protocollo di accordo della chiave  : un protocollo crittografico per stabilire una chiave in cui entrambe le parti possono avere fiducia.
  • Man-in-the-browser  – un tipo di browser web MITM
  • Attacco man-on-the-side  : un attacco simile, che fornisce solo l'accesso regolare a un canale di comunicazione.
  • Autenticazione reciproca  : come le parti comunicanti stabiliscono la fiducia nelle reciproche identità.
  • Accordo chiave autenticato da password  : un protocollo per stabilire una chiave utilizzando una password.
  • Crittografia quantistica  : l'uso della meccanica quantistica per fornire sicurezza nella crittografia.
  • Canale sicuro  : un modo di comunicare resistente all'intercettazione e alla manomissione.
  • Attacco di spoofing: attacco  informatico in cui una persona o un programma si maschera con successo da un altro falsificando i dati

Riferimenti

link esterno