Sì, supponendo che HTTPS non sia utilizzato.
Nella tua situazione, esegui il gateway wireless e hai la possibilità di convertire bankofamerica.com
in un host diverso da quello che avrebbe su Internet pubblica. Questo è un attacco pharming .
I cookie sono legati a un nome di dominio . Quando un server invia un'intestazione di risposta Set-Cookie
, o uno script usa document.cookie
per impostare un cookie, diciamo che il cookie è impostato da (o per ) < em> quel dominio . In generale, la capacità di leggere i cookie per un determinato nome di dominio è limitata al server con quel nome di dominio. Questo ha implicazioni di attacco evidenti se il nome bankofamerica.com
si riferisce improvvisamente a un indirizzo IP diverso.
Ogni volta che il browser invia una richiesta a un server denominato bankofamerica.com
, include i cookie impostati da bankofamerica.com
nella richiesta. Se il server (o l'indirizzo IP) effettivo raggiunto quando il tuo computer richiede bankofamerica.com
, il tuo browser non si preoccupa e invierà i tuoi cookie bankofamerica.com
al server con il nome accettabile (ma in realtà dannoso) . (Si consideri che a volte l'indirizzo IP associato a un nome di dominio può cambiare in modo legittimo, in che modo il sistema dovrebbe sapere se una modifica è legittima o un attacco?)
Dal momento che controlli questo server canaglia, puoi vedere tutto il traffico che entra ed esce. Pertanto, è possibile visualizzare le intestazioni dei cookie inviate dal browser del client al server. Tuttavia, se controlli il router, puoi vedere tutte quelle informazioni anche prima che raggiungano il tuo server malevolo (tramite il router stesso), quindi non c'è una buona ragione per impostare effettivamente un server malevolo oltre a il tuo router dannoso. Se in qualche modo sei riuscito a modificare il record DNS di bankofamerica.com
del client senza controllare completamente il router, tuttavia, l'idea del server canaglia risponde perfettamente alle tue esigenze.
Nota che HTTPS fa un buon lavoro nel bloccare questo attacco. Il tuo server non può impersonare correttamente una connessione sicura a bankofamerica.com
, perché non ha un certificato firmato da un'autorità di certificazione che l'utente considera attendibile. Nessuna autorità di certificazione ti darebbe un certificato firmato per bankofamerica.com
, a meno che tu non possa dimostrare che la tua proprietà è di proprietà reale (cosa che ovviamente non puoi provare, perché non la possiedi). Quando provi a reindirizzare la connessione sicura del client al tuo server falso, il client verrà avvisato che sta accadendo un possibile attacco.
Se l'utente prima ha provato http://bankofamerica.com
invece di andare direttamente a https://bankofamerica.com
, il tuo malvagio server potrebbe dire "Non c'è bisogno di eseguire l'upgrade a HTTPS, diciamo semplicemente su HTTP semplice" e il client non riceverebbe un avvertimento certificati. Questo attacco di stripping SSL . Questo può essere impedito da HSTS , che un server può utilizzare per comunicare a un cliente, "Non contattare mai questo host con una connessione non sicura per i prossimi XX giorni / mesi / anni. "
Un'altra misura protettiva possibile con HTTPS è la bandiera cookie sicura . Il browser non invierà cookie contrassegnati in modo sicuro al dominio proprietario, a meno che la richiesta non avvenga su HTTPS. Poiché il tuo server non può impersonare il dominio di destinazione su una connessione sicura, non potrai mai vedere i cookie sicuri.