Reading Time: 3 minutes

Protocollo RIP

Il protocollo RIP è basato sul principio di funzionamento noto come algoritmo Distance Vector.

In accordo a tale schema ogni router è responsabile di consegnare a ciascun vicino una copia completa della propria tabella di routing.

La consegna di tali annunci avviene sotto forma di pacchetti IP con indirizzo destinazione riservato multicast 224.0.0.9 (protocollo RIPv2), o più semplicemente con l’indirizzo broadcast 255.255.255.255 (protocollo RIPv1).

L’indirizzo IP sorgente non è invece univocamente determinato (in certi router coincide con l’indirizzo della propria interfaccia interna di loopback, in altri dispositivi può essere settato a valori diversi).

Gli annunci sono trasportati in datagrammi UDP (porta 520/udp).

Alla ricezione di un annuncio, ciascun router confronta le informazioni ricevute con quelle mantenute nella propria tabella di routing, al fine di individuare se esistono, per le diverse destinzaioni, percorsi migliori di quelli precedentemente noti.

Le informazioni contenute negli annunci ricevuti sono ritenute intrinsecamente valide dal router ricevente.

Per limitare la diffusione degli annunci RIP è possibile configurare come “passive” specifiche interfacce del router.

Su queste interfacce il router non partecipa al protocollo RIP.

Nelle implementazioni più recenti del RIP è possibile creare, attraverso una preliminare configurazione del router, la lista dei vicini autorizzati a scambiare informazioni di routing.

In tal caso, per ciascun dispositivo d’interconnessione partecipante al protocollo di routing, occorre specificare preliminarmente un indirizzo IP che dovrà essere utilizzato come indirizzo sorgente in tutti i pacchetti trasmessi.

Un messaggio RIP proveniente da un indirizzo IP non accreditato viene automaticamente scartato dal ricevente.

Questo meccanismo è da ritenersi tutt’altro che robusto.

La lista deve essere aggiornata manualmente ogni volta che si aggiunge/rimuove un vicino.

Inoltre, basare l’autenticazione solo sull’indirizzo IP sorgente è una procedura poco affidabile.

Un hacker può facilmente inviare pacchetti RIP, con indirizzo sorgente modificato (IP Spoofing), e alterare la tabella di routing locale.

La versione originale del protocollo RIP non prevedeva alcun meccanismo di autenticazione.

La versione successiva del protocollo (RIPv2) include la possibilità di autenticare i messaggi ricevuti.

L’introduzione di questo meccanismo ha reso necessaria una modifica, pur mantenendo la compatibilità con la versione del protocollo precedente, dei messaggi scambiati tra i dispositivi d’interconnessione.

Il protocollo RIPv2 prevede l’invio di messaggi di un unico tipo, contenenti le indicazioni delle distanze tra il router che emette il messaggio e gli altri gateway.

La lunghezza massima di ciascun messaggio RIPv2 è fissata a 512 byte.

Poichè i router non prevedono nessun riscontro esplicito dei messaggi RIPv2, ogni singolo messaggio deve essere autenticato indipendentemente dagli altri.

Per ottenere tale risultato il protocollo RIPv2 ha previsto l’inserimento di dati per l’autenticazione della sorgente prima di tutti i vettori distanza trasmessi.

Il protocollo RIPv2 definisce due diversi modi d’autenticazione dei messaggi: password authentication e MD5 authentication.

Nel primo, si ha l’invio di una password in chiaro entro il blocco dati per l’autenticazione.

La password viene controllata dal router ricevente prima di processare il resto del messaggio.

Questo modo è sensibile ad ogni forma d’attacco per intercettazione dei dati.

L’hacker catturato uno o più messaggi, può memorizzare la password ed effettuare un replay attack.

Nel messaggio fraudolento, l’hacker non è obbligato a replicare le informazioni di messaggi precedenti in quanto solo la replica del primo blocco del messaggio RIP è indispensabile per superare l’autenticazione.

Nel secondo schema l’intero messaggio RIP viene processato da una funzione di digest MD5.

La password (di lunghezza massima 16 byte) in tal caso viene appesa al messaggio prima di processarlo.

Il risultato della funzione di digest viene collocato nel campo contenente informazioni per l’autenticazione.

La presenza, nell’intestazione del messaggio RIPv2, di un numero sequenziale crescente di 32bit, impedisce nel breve periodo l’invio di repliche di messaggi legittimi da parte di un attaccante.

Questo schema d’autenticazione garantisce completa compatibilità con i dispositivi che non implementano autenticazione.

Questi dispositivi scartano semplicemente il primo e l’ultimo blocco del messaggio e processano i restanti.

Per assicurare piena compatibilità è indispensabile che il blocco dati per l’autenticazione sia formalmente identico a un vettore distanza.

Utilizzare un campo per l’autenticazione esattamente di 16 byte (512 bit) determina la lunghezza massima della password e l’algoritmo di digest utilizzabile per la creazione del MIC.

 

[avatar user=”MattiaFelici” size=”thumbnail” align=”center” link=”https://www.computersec.it/informazioni/”]Mattia Felici[/avatar]

error: Content is protected !!

La maggior parte dei contenuti del blog ComputerSec vengono pubblicati a beneficio di tutti e in modo completamente gratuito.
Tuttavia per supportare il blog, e per avere ulteriori vantaggi, puoi decidere di abbonarti e sfruttare al 100% tutti i contenuti!
Abbonati Ora!

Complimenti! Ti sei iscritto alla nostra Newsletter

C'è stato un errore durante l'invio della richiesta. Per favore riprova.

Computer Security will use the information you provide on this form to be in touch with you and to provide updates and marketing.