TCP SYN Flood

TCP SYN Flood: La Tattica del "Tutto Esaurito" ai Server 


Il TCP SYN Flood è uno degli attacchi di tipo Denial of Service (DoS) più antichi e persistenti di Internet. Sfrutta una debolezza intrinseca e fondamentale del protocollo TCP (Transmission Control Protocol) al Livello 4 (Trasporto) del modello OSI. In sostanza, questo attacco impedisce a un server di accettare nuove connessioni legittime, saturando le sue risorse con richieste di connessione incomplete.

La Storia e l'Anatomia dell'Attacco
L'efficacia del SYN Flood risiede nella sua semplicità di esecuzione e nella sua capacità di paralizzare i servizi.

Come Funziona il TCP Handshake
Per stabilire una connessione TCP (necessaria per quasi tutto il traffico web e di rete), viene utilizzato un processo a tre vie (three-way handshake):
SYN (Synchronize): Il client invia un pacchetto SYN al server, chiedendo di iniziare una connessione.
SYN-ACK (Synchronize-Acknowledge): Il server risponde con un pacchetto SYN-ACK, confermando la ricezione e attendendo la risposta finale del client.
ACK (Acknowledge): Il client invia un pacchetto ACK finale per completare l'handshake.
A questo punto, la connessione è stabilita.

La Nascita del SYN Flood
L'attacco SYN Flood sfrutta il secondo passaggio. L'attaccante invia un enorme volume di pacchetti SYN al server, ma non invia mai il pacchetto ACK finale.
Quando il server riceve un SYN, alloca una piccola quantità di memoria e risorse per tracciare la connessione in attesa (chiamata stato SYN-RECEIVED). Poiché l'ACK finale non arriva mai, il server mantiene centinaia di migliaia di queste "mezze connessioni" aperte nella sua coda di connessioni in attesa.
Il risultato è che la coda si satura rapidamente. Quando arrivano richieste SYN legittime da utenti reali, il server non ha più spazio per elaborarle, causando un Denial of Service per tutti gli utenti.

Evoluzione e Curiosità 
Dalle prime versioni rudimentali, il SYN Flood si è evoluto per diventare più difficile da mitigare.

Anonimato e IP Spoofing
Inizialmente, l'attaccante usava il proprio indirizzo IP, rendendolo facile da bloccare. L'evoluzione cruciale è stata l'integrazione con l'IP Spoofing.
L'attaccante ora falsifica l'indirizzo IP sorgente in ogni pacchetto SYN inviato. Il server, cercando di completare l'handshake, invia i pacchetti SYN-ACK a indirizzi IP casuali o inesistenti, ma soprattutto non invia mai il pacchetto SYN-ACK all'attaccante. Questo non solo impedisce il tracciamento dell'attaccante, ma assicura anche che il server rimanga in attesa inutilmente, esaurendo completamente le risorse.

Curiosità: Il SYN Flood e il DDoS
Il SYN Flood è diventato uno strumento fondamentale nei moderni attacchi DDoS (Distributed Denial of Service). Invece di un singolo attaccante, l'attacco viene orchestrato da una botnet (migliaia di computer infetti). Quando migliaia di host inviano un volume massiccio di SYN Flood contemporaneamente, l'attacco diventa virtualmente impossibile da gestire senza l'aiuto di una solida infrastruttura di mitigazione.

Contromisure: Difendersi dalle "Mezze Connessioni" 🛡️
Le contromisure si concentrano sull'introduzione di meccanismi intelligenti per gestire le code di connessione e scartare rapidamente quelle sospette.

Tecniche a Livello di Server
SYN Cookies (La Soluzione Classica): Questa è una delle difese più efficaci. Quando riceve un SYN, il server risponde con un SYN-ACK contenente un numero di sequenza speciale (il cookie), ma non alloca immediatamente le risorse. Solo se il client invia un ACK valido contenente il cookie corretto, il server lo verifica e stabilisce la connessione. In questo modo, le "mezze connessioni" fittizie non consumano risorse preziose.
Aumento della Dimensione della Coda: In modo semplice, si può aumentare il numero massimo di connessioni in attesa che il server può gestire. Questo offre solo un sollievo temporaneo in caso di attacchi molto grandi.
Timeout Aggressivi: Ridurre drasticamente il tempo che il server attende per il pacchetto ACK finale. Ciò libera più rapidamente le risorse, ma c'è il rischio di scartare connessioni legittime su reti lente.

Tecniche a Livello di Infrastruttura
Firewall basati su Stato (Stateful Firewall): I moderni firewall (e router) tengono traccia dello stato di ogni connessione. Possono rilevare un eccessivo squilibrio tra i pacchetti SYN in entrata e i pacchetti ACK in uscita, e iniziare a scartare o limitare il traffico SYN sospetto.
Servizi di Mitigazione DDoS in Cloud: Per i grandi attacchi DDoS moderni, la difesa più robusta è affidarsi a servizi esterni (come Cloudflare, Akamai) che agiscono come "spugne" di traffico. Questi servizi operano come Reverse Proxy e filtrano il traffico su scala globale, assorbendo il volume del SYN Flood e inoltrando alla rete interna solo le richieste TCP a tre vie completate e valide.

In conclusione..
TCP SYN Flood è un attacco fondamentale che mette in luce la necessità di non fidarsi mai del handshake TCP. La sua mitigazione è un esempio perfetto di come la sicurezza informatica sia una battaglia continua tra la semplicità dello sfruttamento e l'intelligenza delle difese.

Commenti

Post popolari in questo blog

Phishing

Catalogo

Profilo Attività