È possibile passare l'handshake TCP con un indirizzo IP falsificato?

26

Poco tempo fa, io e i miei amici abbiamo discusso se l'handshake TCP può essere passato con un indirizzo IP falsificato.

Supponiamo che disponga di un server Web che consente solo determinati numeri IP. Qualcuno può connettere quel server web con lo spoofing IP?

    
posta ibrahim 14.06.2013 - 10:20
fonte

4 risposte

20

Risposta breve: no.

Risposta più lunga: sì, se si controlla un dispositivo router vicino al dispositivo di destinazione (deve trovarsi sul percorso tra l'indirizzo IP reale della sorgente e la destinazione e sul percorso tra l'indirizzo IP simulato e il target ) o se la rete / host di destinazione accetta pacchetti sorgente-indirizzati .

    
risposta data 14.06.2013 - 10:32
fonte
17

Risposta breve: Sì, ma non possibile come in passato, e dipende da quanto letteralmente si prende la tua domanda.

Risposta lunga:

Ho notato che hai non chiedi "È possibile portare avanti una conversazione TCP con un indirizzo IP falsificato" - quella domanda è stata abilmente risolta da @symcbean. Hai chiesto esplicitamente "È possibile passare l'handshake TCP con un indirizzo IP falsificato". Quindi c'è una differenza tra la domanda che hai chiesto - "Puoi spoofare SYN- > SYN / ACK- > ACK in modo tale che il server crede che una connessione sia stata correttamente risolta" - e la domanda che probabilmente intendevi - " Puoi portare avanti una conversazione TCP con un indirizzo client falsificato ".

Quindi diamo un'occhiata alla domanda letterale che hai chiesto. In tal caso, la risposta è "Sì, se il numero di sequenza TCP iniziale incluso nel SYN / ACK dal server è prevedibile." Ecco perché la prevedibilità ISN (Numero di sequenza iniziale) è qualcosa che è stato testato dagli scanner di vulnerabilità, e qualcosa che è implementato molto più ampiamente oggi rispetto a 10 o 15 anni fa. Per citare un avviso Cisco del 2001 relativo a questa vulnerabilità, " Il caso generale di questa vulnerabilità in TCP è ben noto alla comunità di sicurezza del sistema di informazione. "Il più famoso, Mitnick ha abusato di questa funzione nel suo attacco a Shimomura .

A meno che non sia disponibile il routing di origine o l'accesso a un router nel percorso di rete, questa non è una configurazione sostenibile. Il client potrebbe essere in grado di indovinare l'ISN, ma i numeri di sequenza successivi vengono incrementati in base alla dimensione dei pacchetti inviati , che l'aggressore non vedrà e non può prevedere in modo affidabile. Quindi dovrebbero essere in grado di ottenere almeno un pacchetto dopo l'handshake a tre vie, ma non una conversazione. E a volte un pacchetto è sufficiente.

La predizione ISN è un sottoinsieme specifico di attacchi di previsione della sequenza TCP . Anche se non posso citare buoni numeri, la mia esperienza suggerisce che si tratta di una vulnerabilità che è rimasta molto più a lungo di quanto avrebbe dovuto; a causa di esso, corri ancora su dispositivi che non riescono a eseguire la scansione. È difficile convincere tutti a sistemare i propri stack TCP, specialmente quando la correzione comporta una generazione di numeri casuali solida, che è piuttosto difficile su hardware limitato e poco costoso (il tipo che viene gettato nei dispositivi di rete sempre ).

    
risposta data 14.06.2013 - 15:51
fonte
4

Senza accesso alla rete dietro uno degli indirizzi IP consentiti o accesso a una macchina dietro uno degli indirizzi IP consentiti, puoi non passare un Stretta di mano TCP a 3 vie con un indirizzo IP falsificato.

    
risposta data 14.06.2013 - 10:32
fonte
2

È facile inviare un pacchetto TCP con qualsiasi indirizzo IP. Su Linux puoi aprire un socket raw e inviare tutto ciò che vuoi. Il problema sta ricevendo SYN / ACK (o qualsiasi altra risposta), che verrà instradato all'IP originale.

I router tra il tuo cliente potrebbero avere regole firewall per rifiutare la richiesta, ma spesso presumeranno che il tuo client stia semplicemente instradando un pacchetto da un altro host.

    
risposta data 18.09.2015 - 21:06
fonte

Leggi altre domande sui tag