L'hijack BGP è un reindirizzamento dannoso del traffico Internet che sfrutta la natura attendibile di BGP, il protocollo di instradamento di Internet.
Dopo aver letto questo articolo sarai in grado di:
Argomenti correlati
Abbonati a theNET, il riepilogo mensile di Cloudflare sulle tematiche più discusse in Internet.
Copia link dell'articolo
L'hijack BGP si verifica quando gli aggressori reindirizzano in modo dannoso il traffico Internet. Gli autori di attacchi riescono a farlo annunciando falsamente la proprietà di gruppi di indirizzi IP, chiamati prefissi IP, che in realtà non possiedono, controllano o verso cui non indirizzano. Un hijack BGP è molto simile a quando qualcuno cambia tutta la segnaletica su un tratto di autostrada e devia il traffico automobilistico verso uscite sbagliate.
Poiché BGP si basa sul presupposto che le reti interconnesse dicano la verità su quali indirizzi IP possiedono, il dirottamento di BGP è quasi impossibile da fermare: immagina se nessuno stesse controllando i segnali dell'autostrada e l'unico modo per sapere se erano stati cambiati in modo malevolo fosse osservare che molte automobili finivano nei quartieri sbagliati. Tuttavia, affinché si verifichi un hijack, gli autori di attacchi devono controllare o compromettere un router abilitato BGP che fa da ponte tra un sistema autonomo (AS) e un altro, quindi non chiunque può eseguire un hijack BGP.
BGP è l'acronimo di Border Gateway Protocol ed è il protocollo di routing di Internet. In altre parole, fornisce indicazioni affinché il traffico viaggi da un indirizzo IP all'altro nel modo più efficiente possibile. Un indirizzo IP è l'indirizzo Web effettivo di un dato sito Web. Quando un utente digita il nome di un sito Web e il browser lo trova e lo carica, le richieste e le risposte vengono scambiate tra l'indirizzo IP dell'utente e l'indirizzo IP del sito Web. I server DNS (Domain Name System) forniscono l'indirizzo IP, ma BGP è il modo più efficiente per raggiungere tale indirizzo IP. In parole povere, se il DNS è la rubrica di Internet, il BGP è la sua mappa stradale.
Ogni router BGP memorizza una tabella di routing con i percorsi migliori tra sistemi autonomi. Questi vengono aggiornati quasi continuamente poiché ogni AS*, spesso un provider di servizi Internet (ISP), trasmette nuovi prefissi IP di sua proprietà. BGP privilegia sempre il percorso più breve e diretto da AS ad AS per raggiungere gli indirizzi IP tramite il minor numero possibile di salti tra le reti. Scopri di più su BGP >>
Un sistema autonomo (AS) è una grande rete o un gruppo di reti gestito da un'unica organizzazione. Un AS può avere molte sottoreti, ma tutte condividono la stessa politica di routing. Di solito un AS è un ISP o un'organizzazione molto grande con la propria rete e più connessioni upstream da quella rete agli ISP (questa è chiamata "rete multihomed"). A ogni AS viene assegnato il proprio numero di sistema autonomo (ASN) per identificarlo facilmente. Scopri di più sui sistemi autonomi >>
Il BGP rende possibile la crescita su larga scala di Internet. Internet è composta da numerose reti di grandi dimensioni connesse tra loro. Poiché è decentralizzato, non esiste un organo di governo o un vigile urbano che stabilisca i percorsi migliori per far viaggiare i pacchetti di dati verso le destinazioni IP previste. Il BGP svolge questo ruolo. Senza il BGP, il traffico web potrebbe impiegare moltissimo tempo per raggiungere la destinazione a causa di un routing inefficiente, o addirittura potrebbe non raggiungere mai la destinazione prevista.
Quando un AS annuncia un percorso verso prefissi IP che in realtà non controlla, questo annuncio, se non filtrato, può diffondersi ed essere aggiunto alle tabelle di routing nei router BGP su Internet. Da quel momento in poi, finché qualcuno non se ne accorge e corregge i percorsi, il traffico verso quegli IP verrà instradato verso quell'AS. È un po' come rivendicare un territorio se non ci fosse un governo locale a verificare e far rispettare i titoli di proprietà.
BGP privilegia sempre il percorso più breve e specifico per raggiungere l'indirizzo IP desiderato. Affinché l'hijack BGP abbia successo, l'annuncio del percorso deve:
1) Offri un percorso più specifico annunciando un intervallo di indirizzi IP più piccolo rispetto a quello annunciato in precedenza da altri AS.
2) Offri un percorso più breve verso determinati blocchi di indirizzi IP. Inoltre, non tutti possono annunciare percorsi BGP verso Internet più ampio. Affinché si verifichi un hijack BGP, l'annuncio deve essere effettuato dall'operatore di un AS o da un autore di minacce che ha compromesso un AS (il secondo caso è più raro).
Può sembrare sorprendente che l'operatore di una grande rete o di un gruppo di reti, molte delle quali sono Provider di servizi Internet, intraprenda sfacciatamente un'attività così dannosa. Ma considerando che, secondo alcune stime, ora ci sono oltre 80.000 sistemi autonomi (AS) a livello globale, non sorprende che alcuni possano essere inaffidabili. Inoltre, l'hijack del BGP non è sempre ovvio o facile da rilevare. I malintenzionati possono camuffare la loro attività dietro altri AS o annunciare blocchi di prefissi IP inutilizzati che probabilmente non verranno notati per rimanere sotto il radar.
A causa dell'hijack del BGP, il traffico Internet può prendere la direzione sbagliata, essere monitorato o intercettato, essere 'bloccato' o essere indirizzato a siti Web falsi come parte di un attacco di interposizione. Inoltre, gli spammer possono utilizzare il dirottamento BGP o la rete di un AS che pratica il dirottamento BGP, al fine di falsificare IP legittimi a scopo di spamming. Dal punto di vista dell'utente, i tempi di caricamento delle pagine aumenteranno perché le richieste e le risposte non seguiranno il percorso di rete più efficiente e potrebbero persino viaggiare in tutto il mondo inutilmente.
Nello scenario migliore, il traffico seguirebbe semplicemente un percorso inutilmente lungo, aumentando la latenza. Nel peggiore dei casi, un aggressore potrebbe condurre un attacco di interposizione o reindirizzare gli utenti a siti Web falsi per rubare le credenziali.
Ci sono stati molti esempi concreti di hijack deliberato del BGP. Ad esempio, nell'aprile 2018, un provider russo ha annunciato una serie di prefissi IP (gruppi di indirizzi IP) che in realtà appartengono ai server DNS di Amazon Route53. In breve, il risultato finale è stato che gli utenti che provavano ad accedere a un sito di criptovalute venivano reindirizzati a una versione falsa del sito Web controllata dagli hacker. Gli hacker sono così riusciti a rubare circa 152.000 dollari in criptovaluta. (Per essere più precisi: tramite l'hijack del BGP, gli hacker hanno dirottato le query DNS di Amazon in modo che le query DNS per myetherwallet.com andassero ai server da loro controllati, restituissero l'indirizzo IP sbagliato e indirizzassero le richieste HTTP al sito Web falso. Per saperne di più leggi il nostro post sul blog Fughe di notizie BGP e criptovalute.)
Sono frequenti anche i casi involontari di hijack del BGP, che possono avere un impatto negativo sull'intera rete Internet globale. Nel 2008, la Pakistan Telecom, di proprietà del governo pakistano, ha tentato di censurare YouTube all'interno del Pakistan aggiornando i suoi percorsi BGP per il sito Web. Apparentemente per caso, le nuove rotte sono state annunciate ai provider upstream di Pakistan Telecom e da lì trasmesse all'intera Internet. All'improvviso, tutte le richieste Web per YouTube sono state indirizzate a Pakistan Telecom, causando un'interruzione di ore del sito Web per quasi tutta la rete Internet e mettendo in difficoltà il provider di servizi Internet.
A parte il monitoraggio costante di come viene instradato il traffico Internet, gli utenti e le reti possono fare ben poco per prevenire gli hijack del BGP.
La maggior parte delle reti dovrebbe accettare dichiarazioni di prefissi IP solo se necessario e dovrebbe dichiarare i propri prefissi IP solo su determinate reti, non sull'intera Internet. In questo modo si evita il dirottamento accidentale del percorso e si potrebbe impedire al sistema autonomo di accettare dichiarazioni di prefisso IP fasulle; tuttavia, nella pratica, questo è difficile da far rispettare.
Aumento della latenza, peggioramento delle prestazioni della rete e traffico Internet mal indirizzato sono tutti possibili segnali di un hijack del BGP. Molte reti di grandi dimensioni monitorano gli aggiornamenti del BGP per garantire che i loro client non riscontrino problemi di latenza; alcuni ricercatori sulla sicurezza, infatti, monitorano il traffico Internet e pubblicano i loro risultati.
Il BGP è stato progettato per far funzionare Internet, e certamente lo fa. Ma il BGP non è stato progettato pensando alla sicurezza. Sono in fase di sviluppo soluzioni di routing più sicure per Internet nel suo complesso (come BGPsec), ma non sono ancora state adottate. Per il momento, il BGP è intrinsecamente vulnerabile e rimarrà tale.
Cloudflare ha datacenter in 335 città sparse in tutto il mondo, tutte trasmettono un unico numero di sistema autonomo (ASN) (AS13335) e gli stessi prefissi IP. In questo modo si riduce al minimo il numero di reti che il traffico deve attraversare per raggiungere gli indirizzi IP ospitati su Cloudflare. Di conseguenza, percorsi efficienti verso gli indirizzi IP di proprietà di Cloudflare sono disponibili da quasi ogni parte del mondo. Per un AS in Giappone, il percorso più breve verso un IP Cloudflare potrebbe essere a solo un paio di hop di rete di distanza, terminando in un datacenter Cloudflare locale con sede in Giappone. In California, il traffico potrebbe essere indirizzato allo stesso indirizzo IP, ospitato nello stesso AS di Cloudflare, e giungere a destinazione tramite un datacenter californiano.