tags: man_in_the_middle bgp bgp_hijacking
Il BGP (Border Gateway Protocol) è un protocollo di routing utilizzato per scambiare informazioni sulle reti tra i vari sistemi autonomi (AS) su Internet. Gli AS sono gruppi di indirizzi IP controllati da un singolo ente (come un ISP o un’organizzazione). Il BGP consente ai router di diversi AS di “parlarsi” e decidere qual è il percorso migliore per raggiungere una determinata destinazione su Internet, in base alla “distanza” tra le reti.
Come funziona il BGP?
Il BGP utilizza una serie di “annunci” tra router per comunicare quali reti possono essere raggiunte attraverso di essi. Ogni router BGP comunica agli altri router a cui è collegato le reti che può raggiungere, e questi router propagano queste informazioni, consentendo di costruire percorsi completi. In questo modo, ogni router sa quali percorsi utilizzare per raggiungere le varie destinazioni su Internet.
Il BGP e l’attacco Man-in-the-Middle (MITM)
Il BGP, essendo fondamentale per il routing su Internet, è anche una possibile superficie di attacco. L’attacco Man-in-the-Middle (MITM) in BGP, spesso noto come BGP Hijacking o BGP Route Hijacking, è un tipo di attacco in cui un aggressore manipola il protocollo BGP per far sì che il traffico destinato a una rete specifica passi attraverso i propri sistemi.
Come funziona il BGP Hijacking?
Ecco una spiegazione semplificata:
-
Annuncio di un percorso falso: Un aggressore, che ha accesso a un router con BGP abilitato (in un AS), annuncia di possedere indirizzi IP che in realtà non gli appartengono. Ad esempio, se una rete legittima ha l’indirizzo IP 192.0.2.0/24, l’attaccante potrebbe annunciare falsamente al resto di Internet che lui è il percorso migliore per raggiungere quella rete.
-
Reindirizzamento del traffico: Poiché il BGP è basato sulla fiducia e non verifica l’autenticità degli annunci, i router vicini possono accettare l’annuncio falso dell’attaccante. Questo può portare il traffico destinato a 192.0.2.0/24 ad essere instradato attraverso il sistema dell’attaccante.
-
Intercettazione o modifica dei dati: Una volta che il traffico passa attraverso l’attaccante, egli può:
- Intercettare e leggere i dati, come avviene in un attacco MITM.
- Modificare il traffico prima di re-inviarlo alla destinazione originale, permettendo manipolazioni nei pacchetti.
- Bloccare completamente il traffico, creando un’interruzione del servizio (DoS).
-
Re-instradamento: Dopo aver intercettato o modificato i dati, l’attaccante può inoltrare il traffico alla destinazione legittima, così che le parti coinvolte non si accorgano facilmente dell’intercettazione.
Perché il BGP Hijacking è possibile?
Il BGP è basato su fiducia reciproca tra i router di sistemi autonomi, senza meccanismi di autenticazione robusti. Questo rende il protocollo vulnerabile a manipolazioni se qualcuno ha accesso a un router con privilegi elevati. Ad esempio, se un attaccante riesce a ottenere il controllo su un router all’interno di un ISP, può utilizzarlo per creare annunci falsi e manipolare il flusso del traffico.
Esempi di attacchi BGP Hijacking
Gli attacchi BGP Hijacking sono già avvenuti in passato. Alcuni esempi noti includono:
- 2008 YouTube Incident: Un provider pakistano, nel tentativo di bloccare YouTube a livello nazionale, accidentalmente annunciò falsamente di essere il miglior percorso per raggiungere YouTube, causando un’interruzione globale del servizio.
- Bitcoin Hijacking Attacks: Ci sono stati casi in cui gli attaccanti hanno usato il BGP Hijacking per deviare il traffico di reti di mining di criptovalute, intercettando i dati per rubare i guadagni dei minatori.
Come si può mitigare il BGP Hijacking?
Per rendere il BGP più sicuro, sono state sviluppate alcune soluzioni e pratiche di mitigazione, anche se nessuna è completamente risolutiva:
- RPKI (Resource Public Key Infrastructure): Una forma di autenticazione per convalidare gli annunci BGP. Permette ai proprietari di blocchi IP di certificare quali AS possono annunciare i loro indirizzi IP, riducendo le possibilità di hijacking.
- Filtraggio degli annunci BGP: Gli ISP possono configurare i propri router per filtrare gli annunci BGP sospetti. Questo richiede una configurazione accurata e aggiornamenti costanti.
- Monitoraggio e rilevamento: Esistono servizi che monitorano il BGP in tempo reale per rilevare possibili attacchi di hijacking, avvisando i proprietari di AS se si rilevano anomalie.
Riepilogo
Il BGP è il “protocollo di routing” su larga scala per Internet, essenziale per la comunicazione tra reti autonome. Tuttavia, la mancanza di autenticazione lo rende vulnerabile a attacchi di tipo MITM, noti come BGP Hijacking. In un BGP Hijacking, un attaccante può reindirizzare il traffico Internet a un proprio server, intercettarlo o modificarlo, sfruttando la fiducia tra i router BGP per manipolare il routing.