Istruttore: Ora, tutto ciò
che abbiamo fatto finora funzionerà solo su pagine HTTP.
Il motivo per cui funziona contro
HTTP è perché, come
abbiamo visto, i dati in HTTP vengono inviati come testo normale.
Quindi è un testo che gli umani come noi possono leggere e capire.
Ecco perché quando siamo l'uomo nel mezzo,
siamo in grado di leggere
questo testo e se lo vogliamo, siamo in grado di modificare
questo testo come vogliamo.
Ora, questo è ovviamente un
problema e questo problema è stato risolto in HTTPS.
Quindi, come sai, la maggior parte dei siti Web utilizza HTTPS.
Il motivo per
cui, come ho detto, perché è una versione più sicura
di HTTP e fondamentalmente,
il modo in cui funziona è che aggiunge un ulteriore livello su
HTTP, da cui deriva la S.
Quindi è un protocollo HTTP sicuro
e questo livello aggiuntivo crittograferà i dati in testo normale
che HTTP invia.
Quindi, se una persona riesce a diventare l'uomo nel mezzo, sarà
in grado di leggere questi dati ma
i dati saranno incomprensibili.
Non sarà leggibile
dalla persona che intercetta la connessione.
Ora, HTTPS si basa su TLS o SSL per crittografare i dati
e questo è molto difficile da violare.
Pertanto, per aggirare questo problema, il
metodo più
semplice è eseguire il downgrade delle connessioni HTTPS a HTTP.
Quindi, poiché siamo l'uomo
nel mezzo, possiamo verificare se il target richiede un sito Web
HTTPS e invece di dargli la versione HTTPS di quel
sito Web, gli daremo la versione HTTP.
In questo modo, i dati verranno inviati in
chiaro e saremo in grado di leggerli esattamente come ti
ho mostrato nella lezione precedente.
Per fare questo, dovremo
configurare e utilizzare manualmente uno strumento chiamato SSL
Strip e mostro come farlo nei miei corsi
più avanzati ma fortunatamente, bettercap ha un caplet
che fa tutto questo per noi.
Ho anche modificato personalmente questo caplet per
farlo funzionare in modo più affidabile e su più siti web.
Quindi assicurati di utilizzare l'immagine Kali personalizzata che ho
creato per questo
corso perché viene fornita con questo caplet modificato per impostazione predefinita.
Se vuoi usare il Kali
originale, dovrai scaricare manualmente questo caplet e inserirlo
nel percorso giusto.
Sto usando il Kali personalizzato qui, quindi non avrò
bisogno di fare nulla di tutto ciò.
Posso semplicemente eseguire bettercap e usarlo, ma
prima di
farlo, voglio solo andare alla home directory
e modificare il caplet contraffatto che abbiamo usato
nelle lezioni precedenti.
E voglio solo modificare una cosa in questo.
Quindi farò clic con il
pulsante destro del mouse e lo aprirò con Leafpad.
E quello che voglio modificare è aggiungere un'opzione
allo sniff qui dentro.
Quindi, come sai, questa linea di rete. sniff on
accenderà il mio sniffer
ma prima di accenderlo,
voglio impostare la rete. annusare. locale a vero.
E cosa farà questa
opzione, dirà a bettercap di annusare tutti i
dati, anche se pensa che questi dati siano dati locali.
Il motivo per cui ho impostato
questa opzione su true perché una volta utilizzato il caplet
di bypass HTTPS, i dati sembreranno inviati
dal nostro computer.
Quindi bettercap penserà che queste password appartengano
a me, al mio
computer e non me le mostrerà sullo schermo.
Ecco perché lo impostiamo
su true in modo da poter vedere tutti
i nomi utente e le password inviate
sui siti Web di cui eseguiremo il downgrade da HTTPS a HTTP.
Quindi salverò questo, Control + S
e lo chiuderò, Control
+ Q e ora siamo effettivamente
pronti per utilizzare questo caplet
e vedere come possiamo eseguire il downgrade da HTTPS a
HTTP e rubare le password dalle pagine di
accesso che utilizzano HTTPS per impostazione predefinita .
Quindi andrò al mio
terminale e userò bettercap esattamente come
l'ho usato prima.
Quindi stiamo facendo Bettercap, il nome del programma.
Gli stiamo dando
la nostra interfaccia dopo l'argomento iface.
Stiamo usando l'argomento
caplet per specificare un caplet da
eseguire non appena eseguiamo il programma
e stiamo eseguendo lo spoof
caplet, quello che abbiamo creato nella lezione
precedente che eseguirà il comando ARP
spoofing ed eseguirà lo sniffer per noi.
Quindi premo Invio.
E come puoi vedere, tutto è stato eseguito come previsto.
Se aiutiamo,
vedremo tutti i moduli in
esecuzione e avremo l'arp. parodia e lo sniffer in
esecuzione con la ricognizione e con la sonda.
Quindi questo è esattamente quello che volevamo dal nostro caplet.
Quindi, prima di tutto, la capsula di bypass
HSTS è una delle tante compresse fornite con bettercap.
Se vuoi elencare tutti questi caplet,
puoi fare caplet. show e come
puoi vedere,
otterrai un elenco di tutti i
caplet che hai e la loro posizione nel sistema.
Ora, il caplet che vuole eseguire è il caplet hstshijack.
Questo qui.
E per eseguire uno di
questi caplet, tutto ciò che devi fare è letteralmente digitare il suo nome.
E come al solito, puoi utilizzare la scheda per il completamento automatico.
Quindi, per eseguire il nostro caplet
qui, tutto ciò che devo fare è letteralmente digitare
hs e premere Tab e
come puoi vedere, si completerà automaticamente per me
e digiterà il nome del caplet.
Ora, se premo Invio, questo caricherà il caplet
con tutte le sue
opzioni e lo eseguirà per me.
Quindi, come puoi vedere, poiché non vediamo
alcun errore, ciò significa che tutto è stato eseguito come previsto.
Quindi andiamo alla macchina Windows,
navighiamo in alcune pagine
HTTPS e vediamo se possiamo annusare dati, nomi
utente, password e URL che inseriscono sul loro computer.
Quindi ho la mia macchina Windows qui.
Ho installato Chrome.
Questa è l'ultima versione di Chrome al momento
della registrazione di questa lezione.
Una buona idea prima di provare tutte queste cose
è rimuovere i dati di navigazione perché
i siti Web a cui proveremo ad accedere potrebbero essere
memorizzati nella cache e potrebbero essere appena caricati
dalla tua cache.
Ciò accadrà solo se visiti più e più
volte lo stesso sito Web, soprattutto durante i test.
Pertanto, è davvero
una buona idea premere Ctrl + Maiusc
+ Canc e fare clic su Cancella dati di navigazione.
Assicurati che tutto questo sia cliccato.
Assicurati che sia impostato su tutto
il tempo e fai clic su Cancella per rimuoverlo tutto.
E andiamo avanti e andiamo su un sito Web
che utilizza HTTPS.
Quindi un buon esempio sarebbe LinkedIn. com.
E perfetto.
Se guardi qui in
alto, vedrai che il sito web si sta
caricando su HTTP, non su HTTPS.
Pertanto, saremo in grado di vedere tutto ciò che l'utente inserisce
in queste caselle.
Quindi mettiamo un nome utente.
Impostiamolo su zaid@zsecurity. org.
E metterò una password come 1234567890.
Non importa.
Puoi usare qualsiasi password.
E premo Invio per accedere.
Questo è sbagliato, quindi ovviamente stiamo ricevendo un messaggio
di errore ma se torniamo
a Kali, come puoi vedere, stiamo catturando
tutti questi dati perché non vengono più inviati tramite HTTPS.
Viene inviato tramite HTTP.
E se guardi qui,
puoi vedere che abbiamo acquisito le informazioni di accesso.
Viene inviato a LinkedIn. com.
Inviato a questo URL specifico, un URL di accesso e puoi vedere
che il nome utente è zaid@zsecurity. org.
E la password è 123 fino a 90.
Quindi è davvero, davvero buono.
Andiamo avanti e testiamo un altro sito Web HTTPS.
Andiamo a StackOverflow. com.
Di nuovo, puoi vedere in
alto, sta caricando su HTTP, non su HTTPS.
Quindi cliccherò su Accedi.
E ancora, metterò la mia email.
Zaid@zsecurity. org.
E inseriremo una password come 1234567890.
Premi Invio.
E torniamo alla macchina Kali di nuovo.
Scorri verso il basso questa volta perché siamo bloccati in cima.
E perfetto, puoi vedere che abbiamo una richiesta POST qui.
Viene inviato a questo URL specifico.
Di nuovo, puoi vedere il login nell'URL.
Puoi vedere il sito web stesso.
Stackoverflow. com.
E se scorriamo ancora un po' verso il basso, possiamo
vedere che il nome utente è zaid@zsecurity. org e di nuovo
la password, 123, fino a 90.
Quindi è davvero, davvero buono.
Ora possiamo eseguire il downgrade di qualsiasi connessione
HTTPS a HTTP purché il sito
Web di destinazione utilizzi HTTPS, non HSTS.
Quindi questo metodo funzionerà praticamente su tutti
i siti Web che utilizzano HTTPS, ad eccezione dei siti Web
molto popolari, come Facebook, Twitter e così via.
Quindi lascia che ti mostri un rapido esempio.
Se vado qui e provo ad andare su Facebook. com, vedrai che il
sito Web è stato caricato su HTTPS,
non su HTTP, anche se
abbiamo configurato correttamente il nostro caplet e anche se siamo
in grado di eseguire il downgrade delle connessioni HTTPS
su molti
siti Web, come LinkedIn e Stack Overflow.
Ciò sta accadendo perché Facebook utilizza HSTS, che è
un po' più complicato da aggirare.
Nella
prossima lezione parleremo di più su cos'è HSTS,
perché è difficile da
bypassare e come bypassarlo parzialmente e
ottenere comunque nomi utente e password
dai siti Web che lo
implementano, come Facebook, Twitter e così via.