martedì 20 dicembre 2011

NAT È UNA FUNZIONE DI SICUREZZA?

15 anni dopo NAT è stato inventato, sto ancora ricevendo domande sulla falsariga di "NAT è una caratteristica di sicurezza?" Risposta breve: NO!
Rispondo più: NAT ha alcuni effetti collaterali che assomigliano a meccanismi di sicurezza comunemente usata al bordo della rete. Che non lo rende un elemento di sicurezza, tanto più che ci sono tante varianti di NAT.

Di base NAT

NAT di base (come definito nella RFC 2663 ) esegue solo la traduzione di indirizzi IP (uno all'interno ospita un indirizzo IP nel pool NAT). Nel momento in cui l'host all'interno avvia una sessione attraverso il NAT, diventa completamente esposti al mondo esterno.
Quando si utilizza NAT statico di base (definito in modo statico all'interno a fuori mappatura degli indirizzi IP), l'host interno è esposto tutto il tempo.
Sommario: NAT di base non fornisce alcuna sicurezza.

Stateless NAT

Alcuni IPv6-to-IPv4 (o 4-a-6) algoritmi di NAT sono apolidi - indirizzo IPv6 viene calcolato in base IPv4 utilizzando un algoritmo (o configurazione del dispositivo). Dal punto di vista della sicurezza, apolidi NAT non è diverso da statico NAT di base (leggi: inutile).

Network Address Port Translation (NAPT)

NAPT (noto anche come PAT) mantiene un elenco di sessioni stabilite e utilizza tale elenco per eseguire indirizzo e traduzione porto di pacchetti in entrata e in uscita. Se un pacchetto sconosciuto arriva da dentro l'interfaccia, una nuova voce viene creata, se un pacchetto sconosciuto arriva dall'interfaccia esterna, è caduto.
Non esiste un comportamento "standard" NAPT. RFC 4787 descrive i parametri NAPT vari; i più importanti per la sicurezza legati discussione sono il Indirizzo e Port Mappingcomportamenti .
Con la mappatura degli endpoint indipendente , la tabella di traduzione NAT contiene solo l'indirizzo IP interno e porta TCP / UDP (comportamento di default sulla maggior parte dei dispositivi di fascia bassa). Non appena l'host all'interno si apre una sessione tramite NAT, chiunque può inviare i pacchetti TCP o UDP per la porta sorgente utilizzato da tale host.
Cisco IOS implementa solitamente Indirizzo e Port-Dependent Mapping - la tabella di traduzione NAT contiene piena 5-tupla (indirizzo sorgente / destinazione / porta e il protocollo L4).
Dispositivo NAPT utilizzando l'indirizzo e la porta-dipendente mappatura sembra comportarsi come un firewall stateful, ma non controllare il contenuto del protocollo TCP / UDP sessione e non controlla la validità delle intestazioni TCP. Il suo comportamento è quasi identica a quella caratteristica riflessiva ACL .
Sommario : NAPT fornisce alcune funzionalità di filtraggio dei pacchetti. NAPT statica è identico ad un semplice filtro di pacchetti (tutto ciò che è tradotto dalle regole NAPT statica è consentito).

Altre considerazioni

Mentre abbiamo sicuramente bisogno di firewall e / o filtri di pacchetti alla periferia della rete, la maggior parte del lavoro di attacchi di oggi sul livello di applicazione, utilizzando SQL injection o "minacce avanzate persistenti", come l'invio di un file Excel o PDF con un 0-day exploit ad un click -felice utente . Per maggiori informazioni, si prega di ascoltare ilpusher Packet Podcast Mostra 56 e 61 Mostra .
Infine, non voglio discutere l'assurdità della sicurezza-by-oscurità argomento ( Facciamo proteggere la rete da nascondere gli indirizzi interni con NAT ). Si prega di non citare nemmeno nei commenti.

Nessun commento:

Posta un commento

Nota. Solo i membri di questo blog possono postare un commento.