- MAC address e indirizzi IP:

Poiche' molte macchine possono condividere una singola connessione ethernet, ognuna di esse deve possedere un identificatore (ricordate che, in realta', e' la scheda di rete, l'hardware, a possedere un indirizzo, non la macchina in se'); questo non succede quando comunichiamo con una connessione dial-up utilizzando il nostro modem casalingo, perche' si presuppone che tutti i dati che inviamo siano destinati all'entita' che risiede all'altro capo della linea (in genere il nostro Internet Service Provider, che ci assegnera' un
indirizzo IP dinamico). Tuttavia, se comunichiamo attraverso una rete ethernet dobbiamo specificare esattamente a quali macchina andranno consegnati i pacchetti inviati, anche se la rete fosse composta solamente da due computer: ricorderete che il protocollo ethernet fu sviluppato per permettere a migliaia di macchine di dialogare fra loro.

Cio' e' possibile 'inserendo' un numero esadecimale (cioe' con notazione a 16 cifre; il MAC address e' composto, invece, da 12 digit) in ogni
destinazione ethernet ;
questo numero, in apparenza astruso e' l'indirizzo MAC.
Eccone un esempio: 00-40-05-A5-4F-9D

Il
MAC address e' composto da 48 bit (8bit = 1byte ; il bit e' l'unita' di misura fondamentale dell'informatica).
Questi 48 bit verranno divisi in due meta': 24 bit identificano il nome del produttore della ethernet card, i riamanenti 22 bit identificano il nemero di serie UNICO assegnato alla scheda dallo stesso produttore: in questo modo l'indirizzo MAC di due ethernet adapter non sara' mai uguale; questo serial number e' chiamato OUI (Organizationally Unique Identifier) -
e gli ultimi 2 bit ? -

Il protocollo ethernet ci permette anche di comunicare con macchine che non risiedono sulla nostra stessa rete ma sono interallacciate alla nostra tramite il protocollo
TCP/IP (Transport Control Protocol over Internet Protocol, in realta' e' un'intera famiglia di protocolli): tuttavia non e' possibile inviare e ricevere i dati nella loro forma originale allo stesso modo in cui non e' possibile inviare per posta (snail mail) una lettera senza averla imbustata e dotata di francobollo e indirizzo del destinatario.

L'invio dei dati e la loro gestione in rete e' gestita dai diversi protocolli, a partire dall'ethernet, cosi' dovremo trattare i nostri dati in modo che i protocolli possano 'capire' cosa farne.

Il compito dello sniffer non sara' solo quello di registrare e archiviare dati ma si potra' istruirlo a riconoscere e suddividere i vari header (intestazioni) dei pacchetti per tracciare e controllare solo i pacchetti che soddisfino le piu' svariate e complesse regole (
pattern) che possano interessare chi controlla lo sniffer.

Vediamo cosa succede con una breve spiegazione:

'A' (alice) possiede un
indirizzo IP: 10.0.0.23 (tutti i pacchetti inviati da 'A' saranno marcati con questo indirizzo)
'B' (barbara) possiede invece l'indirizzo IP: 192.168.100.54

Per comunicare con 'Barbara', che si trova in una rete diversa, 'Alice' deve creare un pacchetto IP che abbia piu' o meno questa forma: [IP packet=(10.0.0.23 ===> 192.168.100.54)]

Questo compito e' svolto dalle applicazioni (dai software) usate da alice per spedire i dati lungo la rete e consiste in una operazione d'incapsulazione successiva dei dati in un pacchetto che all''esterno' presenta i suoi dati TCP, poi quelli IP. Poiche', generalmente, i dati passano da reti ethernet, al pacchetto ora descritto saranno aggiunti altri tre strati: il primo e' l'identificativo dell'ethertype (comunica all'applicazione TCP/IP della destinazione di processare i dati), all'esterno di quest'ultimo sara' visibile il MAC address sorgente e infine quello del destinatario (se il destinatario e' inserito in una LAN)

-----------------------
* MAC add. destinatario
** MAC add. sorgente
*** ethertype
==================
# IP info
## TCP info
................................
# DATI
................................
==================
*
CRC
-----------------------

Solo allora alice inviera' il pacchetto a barbara ed esso attraversera' il primo
router sulla via per la sua destinazione finale; ogni router che il pacchetto incontrera', leggendo la destinazione IP decidera' il corretto cammino dei dati verso barbara.

Dobbiamo pero' tener conto di alcuni fattori:
alice conosce solamente l'indirizzo IP di barbara e il percorso che fara' il pacchetto fino al suo primo router (locale);
alice non sa nulla della struttura di internet ne' del percorso che il pacchetto compira' dopo essere stato processato dal suo router.

Tutti i router, tranne quello che gestisce l'indirizzo destinatario, possono leggere gli indirizzi
ethernet ma li ignorano e instradano nuovamente il pacchetto.
Lo sniffer forza questa regola e copia il pacchetto per archiviarlo sul suo supporto di preferenza.

Ricordiamo che, parlando di sniffer, non ci riferiamo a strumenti che registrano l'attivita' che compiamo sulla tastiera del computer o cio' che avviene sul nostro schermo. Quest'attivita', compiuta da programmi definiti key logger, equivale a leggere cio' che viene battuto sulla tastiera sopra le spalle di chi scrive. Essa potra' rivelare ugualmente, forse con minor dispendio di risorse, password o altri dati sensibili ma non sara' mai in grado di osservare il traffico che intercorre tra due terminali o su un intera rete di macchine. Quest'operazione, e la susseguente analisi dei dati raccolti, viene fatta, per l'appunto, attraverso gli sniffer.

Vediamo, dunque, dove e' piu' probabile trovare uno sniffer all'interno di una LAN e quali gradi di rischio corre la rete stessa:

 

torna al menu

- - -

Directory con Motore di ricerca di Moby Dyck.com