Spoofing
Lo spoofing è un tipo di attacco informatico che impiega in varie maniere la falsificazione dell'identità (spoof). Lo spoofing può avvenire a qualunque livello della pila Modello OSI e può riguardare anche la falsificazione delle informazioni applicative.
Lo spoofing è un tipo di attacco informatico che impiega in varie maniere la falsificazione dell'identità (spoof). Lo spoofing può avvenire a qualunque livello della pila Modello OSI e può riguardare anche la falsificazione delle informazioni applicative.
Utilizzo
Questa tecnica di attacco può essere utilizzata per falsificare diverse informazioni, come ad esempio l'identità di un host all'interno di una rete o il mittente di un messaggio. Una volta che un attaccante riesce ad impersonare qualcun altro all'interno di una rete gli è possibile intercettare informazioni riservate, diffondere informazioni false e tendenziose o effettuare una varietà di attacchi informatici. Risulta particolarmente efficace combinata a tecniche di social engineering per ottenere l'accesso ad informazioni "riservate" e credenziali degli utenti. Social media scammers o phishers possono usare questa tecnica ad esempio per convincere un utente a connettersi ad un server malevolo intercettando così le sue credenziali.
Contromisure
Ci sono diverse tecniche per tutelare una rete da accessi indesiderati. Esempi significativi di queste tecniche sono l'adozione dello standard IEEE 802.1x per l'autenticazione o l'utilizzo di NAC (Network Access Control) che prevede oltre all'autenticazione gestita ad alto livello, una serie di controlli sul dispositivo, come la presenza di software incompatibile con l'architettura di rete. Tuttavia la vulnerabilità più grande a cui una rete rimane esposta è l'utente. Molti attacchi infatti, a reti che non hanno particolari bug tecnologici da sfruttare, avvengono puntando sul fattore umano, sulle vulnerabilità comportamentali di una persona.
Lo spoofing ad alto livello sfrutta spesso tecniche di ingegneria sociale e può essere utilizzato sia per colpire l'utente finale ottenendo l’accesso non autorizzato a credenziali di social network o account bancari, sia per utilizzare l'utente finale per entrare in reti a cui normalmente non si sarebbe autorizzati ad accedere. Oltre all'adozione di tecniche come SPF, filtri sui contenuti o Greylisting la consapevolezza dell'utente finale è una fondamentale contromisura a questo tipo attacco.
Tipologie di spoofing
Esistono diversi tipi di attacchi spoofing a diversi livelli del modello a strati TCP/IP. Si tratta di spoofing ogni qualvolta si fa credere all'interno di una rete di essere qualcosa di diverso rispetto a quello che si è effettivamente: un hostname, un indirizzo ethernet o un server non autorizzato o compromesso.
Spoofing a livello 2 (Network Access Layer)
Questo livello dello stack TCP/IP incapsula i livelli fisico a data link (1 e 2) del modello Modello OSI.
MAC Spoofing
Consiste nella falsificazione dell'indirizzo MAC di un dispositivo.
Esempi di utilizzo
MAC Flooding: un attaccante manda continuamente pacchetti in rete con un MAC non suo. Questo attacco satura il forwarding database dello switch causandone malfunzionamenti cioè forzando il successivo broadcast in tutta la rete.
Port Stealing: l'uso da parte di un attaccante di un MAC Address di un host vittima è finalizzato al furto della porta dello switch dedicata all'host vittima.
ARP Spoofing
È una tecnica utilizzabile da un attaccante che prevede l'invio di messaggi ARP su una rete locale generalmente al fine di associare il proprio indirizzo MAC all'IP di un altro host (ad esempio il gateway predefinito) intercettando quindi tutto il traffico ad esso destinato.
Un tool per prevenire e bloccare questo attacco è ArpON "ARP handler inspection". ArpON è un demone portabile che rende il protocollo ARP sicuro contro attacchi Man in The Middle (MITM) attraverso tecniche ARP Spoofing, ARP Cache Poisoning, ARP Poison Routing (APR).
Spoofing a livello 3 (Internet Layer)
Questo livello dello stack TCP/IP coincide con il livello di rete (3) della pila Modello OSI.
IP Spoofing
Consiste nella creazione di un pacchetto IP nel quale viene falsificato l'indirizzo IP del mittente. In generale è semplice falsificare un indirizzo in quanto il protocollo non implementa alcun sistema di sicurezza. In questo caso abbiamo routing asimmetrico perché un eventuale pacchetto di risposta viene inviato al vero IP.
Gli ISP possono attivare diversi sistemi di sicurezza per impedire l'IP spoofing. Uno di questi consiste nell'impedire che da una interfaccia (di un router/firewall) siano inviati pacchetti in cui l'IP sorgente non è quello che ci si aspetta. Un altro metodo consiste nell'uso delle tabelle di routing. Se l'interfaccia di provenienza per un pacchetto non è la stessa che verrebbe scelta dal router per l'inoltro del pacchetto di risposta allora questo pacchetto è scartato. Questa tecnica si chiama uRPF (unicast Reverse Path Forwarding).
Spoofing a livello 4 (Transport Layer)
Questo livello dello stack TCP/IP coincide con il livello di trasporto (4) nella pila Modello OSI. Non è rilevante in fase di autenticazione, quindi non si parla di UDP/TCP spoofing, ma di attacco di IP-spoofing portato verso uno di questi due protocolli.
Spoofing UDP
È analogo al caso IP. Essendo UDP un protocollo connectionless la falsificazione di un datagram UDP consiste nell'immettere le informazioni desiderate e falsificare l'header.
MCMX