2016-04-15 23 views
9

Recentemente ho ricevuto una e-mail contenente il seguente pezzo (non cliccare!):In che modo un URL/@ trovato nello spam può essere risolto?

<A HrEf="/@/0X0a290d92b/UALI=28389-UI=176738575-OI=279-ONI=5477-SI=0-CI=0-BI=577-II=27913-IDSP=1-KLEM=11-TIE=A-IDE=276135-MID=572-FID=0-DIOM=0" sTyLe=color:#000;font-size:10px;font-family:arial;> 
<span>UNS</span></a> 

Ecco un link per l'e-mail prima: https://gist.github.com/anonymous/16963a230cab0a3a1bcfc81209f297f1

Per quanto ne so, non è un /@ url valido. In che modo il mio browser è in grado di risolverlo su un sito?

+1

[ '@' è consentito in percorsi URL] (http://stackoverflow.com/a/19737890/1591669), in modo da '/ @' è un URL relativo valida. – unor

+0

Rispetto a cosa? Il link è in una e-mail.'https: //mail.google.com/@/0X0a290d92b /' non sembra risolvere nulla. –

+0

Che browser o client di posta stai usando? Forse si rivolge a una specifica implementazione. IE11, Edge e Vivaldi non potevano aprire "/ @/0X0a290d92b" – Sascha

risposta

0

Tratta tutto prima della @ come informazione di autenticazione che viene passata all'URL. L'url "reale" inizia dopo @, che è l'indirizzo IP codificato che vsminkov ha menzionato. Quindi la barra diretta in avanti viene scartata.

Un più facile da leggere esempio: http://username:[email protected]/

è tutto solo strati di offuscamento.

Ecco un link interessante che va su di esso in modo più dettagliato:

http://www.pc-help.org/obscure.htm

ed ecco RFC 2396 descrivere quella parte del URL:

schemi URL che implicano l'uso diretto di un Il protocollo IP su un server specificato su su Internet utilizza una sintassi comune per il componente server dei dati specifici dello schema dell'URI:

<userinfo>@<host>:<port> 

dove può consistere di un nome utente e, opzionalmente, scheme- informazioni specifiche su come ottenere l'autorizzazione per accedere al server . Le parti "@" e ":" possono essere omesse.

server  = [ [ userinfo "@" ] hostport ] 

Le informazioni utente, se presente, è seguita da uno spot a-segno "@".

userinfo  = *(unreserved | escaped | 
        ";" | ":" | "&" | "=" | "+" | "$" | ",") 
+0

Forse se è iniziato con un' @ ', ma a'/@ 'dovrebbe essere un assoluto percorso perché inizia con una barra e il protocollo viene omesso. –

+0

Questo è un buon collegamento però. –

+0

Quando l'url viene analizzato, tutto prima che @ venga estratto, inserito nel campo dell'intestazione della richiesta e inviato all'URL che inizia dopo @. Quindi l'url che viene risolto sarà/0X0a290d92b ... Estrae le informazioni di autenticazione (in questo caso solo una barra rovesciata) prima di provare a risolvere l'URL. Cercherò di trovare un buon riferimento e postarlo qui. –

2

Come già menzionato nei commenti @ is allowed in URL paths.

Riguardo alla risoluzione dell'URL. Immagino che l'attaccante usi il tag <base> per impostare in modo esplicito l'URL predefinito per tutti i collegamenti relativi nel corpo dell'email e spera che il tuo browser/client di posta elettronica lo risolva per te.

UPDATE

L'ipotesi originale potrebbe essere corretta dal momento che è not supported by majority of mail clients

Dopo un po 'di ricerca ho capito che in realtà è 0x0A290D92B è hex-encoded indirizzo IPv4 162.144.217.43. L'unica cosa che non ho ancora capito è come dovrebbe essere trasformato in http(s)://0x0A290D92B nel browser. Sembra che l'autore dell'attacco stia prendendo di mira un comportamento specifico del browser/client di posta.

+0

In base a ciò, i tag di base non funzionano nell'e-mail: http: // stackoverflow .com/questions/14611225/html-base-tag-in-email –

+0

@NealFultz Mi incuriosisce :) Si può cadere da qualche parte nel corpo di spam della posta elettronica che hai ricevuto? – vsminkov

+0

Ho aggiunto un link all'email non elaborata nella mia domanda: –

Problemi correlati