Fingerprinting passivo del client di posta elettronica, basato su intestazioni di posta elettronica

6

Ci sono modi per imprigionare passivamente il sistema operativo o il client di posta utilizzato da un mittente dell'e-mail, in base alle intestazioni di un'e-mail da quel mittente?

Ho familiarità con gli strumenti di impronte digitali di rete passive come p0f: data una traccia di alcuni pacchetti inviati da una particolare macchina, cercano di inferire il sistema operativo che sta utilizzando la macchina. Esistono tecniche o strumenti per fare qualcosa di analogo, con i messaggi di posta elettronica?

Posso pensare ad alcune tecniche che ottengono alcune informazioni parziali in alcuni casi, ma non voglio re-inventare la ruota se questa esiste già o è già stata studiata. Ad esempio, conosco l'intestazione X-Mailer: , che se presente rivelerà in genere il client di posta che il mittente sta utilizzando. Ma ci sono tecniche che funzionano per dedurre il client di posta se X-Mailer: non è presente o per inferire il sistema operativo?

    
posta D.W. 05.08.2015 - 22:49
fonte

1 risposta

7

Are there ways to passively fingerprint (infer) the operating system or mail client that an email sender is using, based upon the headers of an email from that sender?

Sì, ma sono estremamente inclini a errori e molto facili da spoofing, intenzionalmente o non intenzionalmente (ad esempio, alcuni sistemi firewall di fascia alta "reimballano" un messaggio dopo aver rimosso / disinfettato gli allegati, modificando alcune informazioni).

Oltre all'intestazione di X-Mailer, puoi raccogliere alcune informazioni da altri campi come ID messaggio e confini multipart, se presenti. Entrambi dovrebbero contenere una sequenza unica e diversi sistemi la generano in modi diversi. Alcuni MUA genereranno un id-messaggio, altri lasceranno il lavoro al server; quindi vedi "[email protected]" e sai che è un cliente GMail e nulla più, mentre [email protected] è un ID prodotto da Forté Agent, un software che gira solo su Microsoft Windows.

Il vecchio Eudora fino a 6.1 aveva un'intestazione X-Sender che rivelava anche il "personaggio" usato per inviare un'email.

Microsoft Outlook utilizza, credo, i limiti del modulo _NextPart_XXX_0000_HHHHHHHH.HHHHHHHH dove H è una cifra esadecimale e XXX rappresenta il numero di sequenza interna (da 000 in poi), mentre Mozilla Thunderbird (che aggiunge anche un'intestazione User-Agent) utilizza un limite di "------------ 0x0x0x0x0x0x0x0x0x0x0x0x" dove x è una cifra 0-9.

In molti casi vedrai che una parte di uniqueid è in realtà un timestamp, che può anche raddoppiare come verifica dell'intestazione della data.

Quindi, alcune informazioni ci sono - ma avresti bisogno di costruire un database di impronte digitali. Inoltre, come ho detto, è relativamente facile modificare una singola intestazione, e forse anche tutte loro; dovresti tenerne conto e vedere se la strategia si adatta ancora al tuo scopo.

    
risposta data 06.08.2015 - 02:02
fonte

Leggi altre domande sui tag