Si definisce sniffing l'attività di intercettazione passiva dei dati che transitano in una rete telematica.  Tale attività può essere svolta sia per scopi legittimi (ad esempio l'individuazione di problemi di comunicazione o di tentativi di intrusione) sia per scopi illeciti (intercettazione fraudolenta di password o altre informazioni sensibili).
I prodotti software utilizzati per eseguire queste attività vengono detti sniffer ed oltre ad intercettare e memorizzare il traffico offrono funzionalità di analisi del traffico stesso.
Ogni sistema su una rete IP scambia informazioni con altri sistemi
tramite singoli pacchetti che hanno un IP sorgente e un IP
destinazione. Tipicamente un computer analizza e processa solo i
pacchetti che arrivano al suo dispositivo di rete (una scheda ethernet,
un modem ecc.) che hanno come IP di destinazione il proprio o che sono
pacchetti di broadcast, indirizzati cioè ad ogni indirizzo IP attivo
nello stesso network IP.
L'attività
di sniffing il più delle volte è necessaria per monitorare e
diagnosticare problematiche di rete ma può essere impropriamente
utilizzata per intercettare informazioni sensibili di terzi, come login
e password di accesso ad un determinato servizio.
Si possono sniffare pacchetti su ogni interfaccia di rete, ma
tipicamente viene fatto su una scheda ethernet, per la quale possono
esistere due tipi di ambienti tipici:
- Rete shareata,
dove tutte le schede di rete dei computer nella rete locale ricevono
TUTTI i pacchetti, anche quelli destinati ad altri indirizzi IP. In
questo caso (rete ad anello con cavo coassiale oppure rete a stella con
un hub centrale) le schede di rete dei PC normalmente selezionano solo
i pacchetti destinati a loro e scartano tutti gli altri che
attraversano il mezzo trasmissivo a cui sono collegati.
- Rete switchata,
dove ogni PC riceve solo i pacchetti di broadcast o quelli destinati al
proprio IP. Questa è tipicamente una rete a stella con uno switch al
centro, che provvede autonomamente a forwardare ad ogni sua singola
porta solo i pacchetti destinati all'IP del dispositivo collegato a
quella porta, oltre ai broadcast, che vengono sempre propagati su tutte
le porte.
Nel primo caso l'attività di sniffing permette di analizzare anche
pacchetti destinati e originati da indirizzi terzi, ampliando
notevolmente le possibilità di intercettare informazioni sensibili.
In una rete switchata, invece, quando si prova a sniffare i pacchetti
che passano per l'interfaccia di rete, si possono solo incontrare
pacchetti originati dal o destinati al computer locale, oltre ai soliti
broadcast.
Esiste tuttavia una tecnica piuttosto evoluta (arp spoofing) tramite la quale è possibile sniffare pacchetti di terzi anche in una rete switchata.
Quando si vogliono sniffare pacchetti destinati a terzi, si deve
impostare il "PROMISCUOUS MODE" sull'interfaccia di rete, in modo da
farle processare tutti i pacchetti indifferentemente.
Esistono diversi strumenti di sniffing, alcuni sono esplicitamente realizzati per attività di hacking (Sniffit, Ettercap, Dsniff...)
e evidenziano le login e le password che sono state intercettate, altri
sono più orientati alla risoluzione di problematiche di rete (Ethereal, simile al Windows Network Monitor)
e permettono l'analisi di tutti i pacchetti intercettati, altri hanno
funzioni di monitoring e analisi a volte limitandosi a considerare solo
le intestazioni dei pacchetti (tcpdump, snoop, iptraf, ntop).
Il motivo principale per cui si preferisce cercare di criptare ogni
passaggio di login e password in rete (https, ssh, pop3s, sftp ecc.) è
proprio per evitare che qualcuno, tramite sniffing, li possa
intercettare e facilmente scoprire.
|