Perché "passa il mouse" su un link considerato sicuro? O è dannoso?

27

Utilizziamo un client di posta elettronica basato su browser e il contenuto dell'email è in HTML.

Uno dei miei datori di lavoro ci ha detto che se riceviamo un'e-mail sospetta con collegamenti, dobbiamo passare il mouse sul link (per verificare che non sia falsificato) prima di fare clic su di esso. Il passaggio del mouse attiva un'azione per visualizzare il collegamento sottostante nella barra di stato del browser. Tuttavia, qualcuno sarebbe in grado di spoofare questa azione e provare a fare qualcosa di divertente?

Questo è un thread simile ma discute le miniature degli allegati e non i collegamenti nell'e-mail.

    
posta JOW 03.03.2017 - 15:59
fonte

2 risposte

52

One of my employers told us that if we receive a suspicious email with links, we have to hover over the link (to check that it is not spoofed) before clicking it.

Quando si passa il mouse su un collegamento, il valore dell'attributo href viene visualizzato nella barra di stato. Poiché questo è il target di collegamento, può darti un'idea di dove sta andando il link.

would someone be able to spoof this action and try to do something funny?

In generale, sì. L'obiettivo di collegamento effettivo può essere "spoofed" utilizzando Javascript: è abbastanza comune per i siti Web scambiare il valore di href con un altro link non appena l'utente fa clic su di esso. Ad esempio, puoi osservare questo quando visiti i risultati di ricerca di Google. Quando passi il mouse su uno dei link, verrà visualizzato come https://security.stackexchange.com/... ma non appena fai clic , quell'evento viene catturato e visiti prima un sito intermedio ( https://www.google.com/url?... ) che ti reindirizza al vero obiettivo.

Tuttavia, qualsiasi client di posta elettronica ben progettato (basato sul Web) non eseguirà alcun JS nelle e-mail HTML. Il contenuto di script attivo nei messaggi di posta elettronica è pericoloso, non solo perché potenzialmente si traduce in un difetto XSS nel client di posta, ma perché può essere utilizzato anche per eseguire exploit basati su JS contro il browser o semplicemente informare il mittente che è stato aperto. posta elettronica.

Quindi, se il tuo client di posta elettronica disattiva JS nelle e-mail - cosa che molto probabilmente lo fa - allora il link visualizzato sul mouseover è effettivamente il target di collegamento corretto. Ma dovresti essere a conoscenza di altri tentativi di ingannare te, come ad esempio attacchi omografati o un URL troppo lungo che nasconde il vero dominio di destinazione. Analizzare un URL nella barra di stato non è così facile come lo è guardarlo nella barra degli indirizzi. In un attacco più avanzato, l'utente malintenzionato potrebbe anche aver compromesso in anticipo un sito legittimo (ad esempio tramite un difetto XSS persistente) e non sarà possibile stabilire dal collegamento che il sito attualmente ospita effettivamente contenuti pericolosi.

    
risposta data 03.03.2017 - 16:15
fonte
11

Questo può essere ottenuto solo con JavaScript. Puoi impostare il link su qualsiasi cosa e poi scrivere un'azione onclick che manda l'utente da un'altra parte:

<a href="http://example.com" onclick="window.location = 'http://www.google.com';return false;">click</a>

Ma se permetti al JavaScript di essere eseguito dal tuo client di posta elettronica basato sul browser, sei vulnerabile a XSS persistente, il che significa che hai problemi più grandi.

Per inciso, dire agli utenti di fare [cosa scomoda] non funzionerà quasi mai come meccanismo di sicurezza. Una soluzione migliore sarebbe rimuovere tutti i tag a e sostituire il link effettivo.

    
risposta data 03.03.2017 - 16:04
fonte

Leggi altre domande sui tag