Prevenire uno spoofing nell'attacco centrale?

12

Stavo canticchiando con la solita routine di ascolto dei vecchi video Defcon cercando di capire alcune delle basi di ciò che sta accadendo nel mondo della sicurezza IT, quando mi sono imbattuto in un uomo che spiegava gli attacchi centrali.

Quindi ho avuto modo di pensare. Bene, cosa potresti davvero fare con quello? Poi ho pensato a un uomo strano nell'attacco centrale che mi sto chiedendo, se funzionasse.

Quindi sappiamo tutti i router che dirigono i pacchetti lungo la loro strada verso dove stanno andando. Questo va bene e dandy. E se mettessi qualcosa di un po 'più malvagio. Quando arriva un pacchetto (la destinazione è uno di un elenco precompilato di siti), e se fingo di essere quella destinazione? Che cosa succede se si dice "Sì, io sono paypal.com! Facciamo una connessione sicura!". Quindi fai una connessione sicura con quel thingy . Dopo aver fatto ciò, puoi stabilire una connessione sicura con PayPal, e fare tutto ciò che l'utente sta facendo, eppure prendi tutte le informazioni che vuoi (cioè quante faccine che stanno mandando al fratello Steve).

L'unico problema che posso pensare di attraversare è, se il pacchetto decide di prendere un percorso diverso. Non ne sono sicuro, ma potresti essere in grado di dire all'altro sistema che stai cambiando il tuo blah blah blah , quindi dovrebbe collegarsi al tuo bla bla bla .

C'è qualcosa là fuori per impedirlo? Non riesco a pensare a nulla, e l'idea che le persone siano in grado di farlo è leggermente spaventosa ...

    
posta Griffin Nowak 07.04.2013 - 20:03
fonte

3 risposte

16

Un router che si comporta male e cerca di comportarsi come un server falso per quanto riguarda il client, e un client falso per quanto riguarda il server vero, l'inoltro dei dati in entrambe le direzioni, è la definizione esatta di un man-in-the-middle attack . Oltre ai router (che agiscono a livello IP), i metodi pratici classici per MitM includono:

(Questo elenco non è assolutamente esaustivo).

Per sconfiggere questi attacchi, utilizziamo autenticazione server che, nel caso di siti Web SSL (come https://www.paypal.com ) utilizza certificati X.509 . Quando il client (un browser Web) si connette al server Paypal, richiede esplicitamente una "connessione sicura" (perché l'URL inizia con https:// , non http:// ) e rifiuterà il server a meno il server utilizza un certificato che:

  1. viene emesso da una delle CA radice che il browser considera attendibile a priori (Verisign / Entrust / Thawte / qualunque sia stato incluso dal fornitore del browser) e:
  2. contiene il nome del server previsto in esso ( www.paypal.com , come specificato nell'URL).

In caso di mancata corrispondenza, il browser avviserà l'utente in modo spettacolare. Il MitM andrà a buon fine solo se uno dei CA prende il sopravvento (cioè la CA emette un certificato contenente www.paypal.com a qualcuno che non è affatto il proprietario del dominio paypal.com ), o l'utente si nasconde (usando un URL che dice www.paypal.com.evilhacker.com , o non prestando attenzione all'allarme spaventoso visualizzato dal suo browser), o il computer dell'utente è già compromesso (ad esempio attraverso alcuni malware che hanno installato una CA radice canaglia).

Generalmente parlando , SSL è stato progettato in modo che la sicurezza sia mantenuta indipendentemente dai meccanismi di trasporto. La sicurezza SSL non si basa sui router che si comportano "onestamente". SSL presume che i router siano tutti ostili.

    
risposta data 07.04.2013 - 20:28
fonte
5

Questo è ciò che i certificati SSL sono per. Il tuo browser ha un elenco di certificati attendibili e fornitori di certificati e, quando un sito dice che sono PayPal.com, il tuo browser sa che il certificato è sbagliato.

Un uomo nel mezzo dell'attacco può falsificare i certificati o convincerti ad accettare un certificato errato, e uno di successo potrebbe davvero fare quello che dici e rubare i tuoi soldi. Succede molto.

Non è così spaventoso come pensi. Si applica una guida abituale: mantieni aggiornato il tuo sistema, usa l'antivirus, evita comportamenti osceni online, ecc.

    
risposta data 07.04.2013 - 20:34
fonte
4

La prevenzione di questo tipo di problema dipende dal tipo di protocollo utilizzato. Partendo dal presupposto che stiamo parlando di accesso Web (HTTP), la difesa principale contro questo tipo di attacco è una configurazione SSL ben configurata combinata con una certa consapevolezza dell'utente.

Se si tenta di intercettare l'accesso a un sito Web crittografato SSL, è necessario presentare un certificato all'utente in cui si pretende di essere il sito che si sta spoofing (nell'esempio paypal.com).

Tuttavia, il browser degli utenti accetta solo certificati che sono stati firmati da determinati certificati "trusted root" (di solito è definito in base al browser o al fornitore del sistema operativo).

Quindi, in qualità di utente malintenzionato, puoi provare a utilizzare un certificato non affidabile (uno che genera te stesso che dichiara di essere www.paypal.com), nel qual caso l'utente riceverà un avviso che non può essere considerato attendibile, oppure potresti provare per presentare l'utente www.paypal.com in chiaro e sperare che non se ne accorgano. che dette protezioni come SSL pinning e HSTS potrebbero rendere questo tipo di attacco più difficile o addirittura impossibile ...

In entrambi i casi, se hai una configurazione di tipo MITM, hai un buon grado di attacchi che puoi eseguire. Per le connessioni Internet, potenzialmente il pezzo più difficile sarebbe arrivare al punto di essere un uomo-in-the-middle.

    
risposta data 07.04.2013 - 20:24
fonte

Leggi altre domande sui tag