L'attacco SYN» (detto anche «TCP/SYN Flooding») è un attacco di rete per saturazione (Denial of Service) che sfrutta il meccanismo stretta di mano in tre tempi (in inglese Three-ways handshake) del protocollo TCP. Il meccanismo stretta di mano in tre tempi è il modo in cui si effettuano tutte le connessioni «sicure» ad internet (utilizzando il protocollo TCP):
Nel momento in cui un cliente si connette ad un server, il cliente invia una richiesta SYN, il server risponde quindi con un pacchetto SYN/ACK e infine il cliente convalida la connessione con un pacchetto ACK (acknowledgement, che significa accordo o ringraziamento).
Una connessione TCP può cominciare solo una volta che queste tre tappe sono state concluse. L'attacco SYN consiste nell'inviare un gran numero di richieste SYN ad un host con un indirizzo IP sorgente inesistente o non valido. In questo modo, è impossibile per il terminale bersaglio dell'attacco ricevere un pacchetto ACK.
I terminali vulnerabili agli attacchi SYN mettono in lista d'attesa, in una struttura di dati in memoria, le connessioni così aperte, e aspettano di ricevere un pacchetto ACK. Esiste un meccanismo di scadenza che permette di rigettare i pacchetti passato un certo lasso di tempo. Inoltre, raggiunto un numero elevato di pacchetti SYN, se le risorse utilizzate dal terminale per immagazzinare le richieste in attesa sono sature, questo rischia di diventare instabile fino ad arrivare al blocco o al riavvio.
Foto: © Martial Red – Shutterstock.com