Vai al contenuto principale
BlogLa sicurezzaIl Border Gateway Protocol e la sicurezza dei linodi

Protocollo Border Gateway e sicurezza dei Linode

Protocollo Border Gateway e sicurezza dei Linode

Oggi parliamo del Border Gateway Protocol (BGP) e di un passo recente che abbiamo compiuto per renderlo sicuro nelle nostre reti. Sebbene da tempo firmiamo i nostri prefissi con le autorizzazioni di origine delle rotte (ROA), abbiamo implementato la convalida delle rotte su tutti i nostri router gateway edge in tutto il mondo e ora eliminiamo i prefissi non validi RPKI.

Per comprendere il cambiamento, dobbiamo capire come funziona il protocollo TCP. BGP è uno dei protocolli che fanno funzionare Internet. Internet è una vasta rete di reti. Queste reti indipendenti hanno i propri intervalli di indirizzi IP forniti dai Registri regionali di Internet (RIR). Questi intervalli sono ciò che BGP chiama prefissi.


Successivamente, questi prefissi vengono raggruppati in un sistema astratto chiamato Autonomous System (AS), identificato da un numero chiamato Autonomous System Number (ASN). Infine, il router di bordo parlante BGP di ogni rete indipendente è chiamato Peer. Per il funzionamento del BGP, ogni peer scambia informazioni di routing con i peer vicini sotto forma di annunci di prefissi di rete. Poiché i peer possono scambiarsi tutte le rotte di cui dispongono a seconda della politica di instradamento, non è necessario che un SA sia direttamente connesso con un altro SA per apprendere i suoi prefissi. In questo caso, l'AS intermediario ha la funzione di AS di transito che scambia informazioni di routing con gli AS di bordo.

Peering BGP con AS di transito: AS 22222
Peering BGP con AS di transito: AS 22222

Dirottamento BGP

La falsa pubblicità di prefissi che non si controllano, sia essa intenzionale o accidentale, è chiamata BGP hijacking. Il risultato di ciò comporta vari tipi di attacchi come DDoS, monitoraggio, spam e altro ancora. 

Un dirottamento BGP riuscito dall'AS 66666
Un dirottamento BGP riuscito dall'AS 66666

Affinché un attacco BGP hijack abbia successo, le altre reti devono selezionare il percorso dirottato come percorso migliore in uno dei seguenti modi: 

  1. Poiché BGP generalmente preferisce la lunghezza del percorso AS più breve, l'avversario potrebbe offrire un percorso AS più breve rispetto al legittimo proprietario del prefisso. Anche altri attributi BGP possono essere utilizzati per preferire un percorso, ma questo comportamento dipende in larga misura dalle politiche di routing di un ASN.
  2. L'avversario deve annunciare un prefisso più specifico di quello che potrebbe essere annunciato dal vero AS di origine. Gli hijack basati sulla lunghezza del prefisso hanno maggiori probabilità di successo perché non si basano su politiche BGP potenzialmente complicate. 

Sebbene la complessità dell'attacco sia piuttosto elevata per la sua riuscita, l'hijacking BGP è quasi impossibile da fermare senza una qualche forma di autorizzazione. È qui che entra in gioco RPKI. 

RPKI

Si pensi a RPKI come a una firma digitale; fornisce un'attestazione che i router parlanti BGP accettano solo determinati Autonomous System autorizzati a originare particolari prefissi. In sostanza, con RPKI, gli annunci di percorso BGP emessi da un router possono essere firmati e convalidati sulla base del certificato ROA per garantire che il percorso provenga dal titolare della risorsa e che sia un percorso valido. 

Con RPKI abilitato nelle nostre reti, firmiamo i nostri prefissi di percorso con le ROA e abbandoniamo le pubblicità BGP provenienti da fonti con firme RPKI non valide. Questo agisce come misura preventiva contro molte minacce associate all'hijacking BGP, tra cui DDoS, spam, phishing, monitoraggio dei dati e altro ancora. 

Stiamo facendo la nostra parte per rendere Internet un luogo più sicuro. Per saperne di più su RPKI, consultare la documentazione di ARIN.

Se siete interessati ad alcune statistiche, ecco un interessante monitor RPKI del NIST.

Commenti

Lascia una risposta

Il vostro indirizzo e-mail non sarà pubblicato. I campi obbligatori sono contrassegnati da *