2012-05-13 23 views
5

Se il mio server implementa SYN Cookies per evitare gli attacchi DoS, ma un utente malintenzionato sa che il server utilizza i cookie SYN, è possibile che possano creare una connessione half/fully open semplicemente inviando un ACK?SYN Cookie Network Server Security

So che i cookie SYN utilizzano un algoritmo per creare la connessione iniziale univoca e, se l'handshake degli attacker è incompleto, il SYN viene eliminato e può essere ricreato solo ricevendo un SYN-ACK valido.

Ma un hacker può ancora gestire in qualche modo?

risposta

1

No, è non dovrebbe essere possibile per un utente malintenzionato di sapere qual è il valore di sequenza iniziale SYN è al fine di completare l'handshake TCP 3. Inoltre, non è possibile che nessuna porta tcp si trovi in ​​uno stato semiaperto quando utilizza i cookie SYN. La risposta è radicata nella crittografia.

Un'implementazione di SYN Cookies potrebbe utilizzare un Symmetric Cipher per generare ID di sequenza. Ad esempio, quando la macchina si avvia, genererà una chiave segreta casuale da utilizzare per tutti gli ID di sequenza TCP. Quando la macchina riceve e riceve il pacchetto SYN in una porta aperta, genera un ID sequenza crittografando l'indirizzo IP del server, l'indirizzo IP del client ei numeri di porta utilizzati. Il server non ha bisogno di tenere traccia dell'ID della sequenza iniziale SYN che ha inviato, quindi non ha uno stato per client e questa idea di un socket tcp "semiaperto" in realtà non si applica (at- almeno in termini di DoS). Ora, quando il client restituisce il suo pacchetto SYN-ACK, deve contenere l'ID della sequenza iniziale SYN. Quando il server ottiene questo ID di sequenza iniziale dal client in un pacchetto SYN-ACK, può funzionare all'indietro, crittografando l'indirizzo IP del server, l'indirizzo IP del client e i numeri di porta utilizzati.