Cuando el correo se envía a través de SMTP, hay dos lugares diferentes a los que va este tipo de información, la Envolvente (elementos que se configuran con comandos SMTP) y el Encabezado (el primer bloque de texto bajo el comando Datos SMTP, que termina con un linea en blanco). Entonces, por ejemplo, aquí hay una transacción SMTP donde el Sobre no está de acuerdo con los Encabezados. El mensaje se entregará según el Sobre , pero el destinatario verá los encabezados .
mail from: <[email protected]>
250 2.1.0 Ok
rcpt to: <[email protected]>
250 2.1.5 Ok
data
354 End data with <CR><LF>.<CR><LF>
From: "Apple Store" <[email protected]>
To: [email protected]
Subject: We just received your purchase...
Mail body goes here.
.
250 2.0.0 Ok: queued as C5E251FFE2
quit
221 2.0.0 Bye
Connection closed by foreign host.
El destinatario falso va en la línea del encabezado "Para:", pero el correo se entrega de acuerdo con el valor establecido en el comando SMTP "RCPT TO". Y, de hecho, el destinatario ve el encabezado que el atacante quería que viera:
Ahora,hayalgodeproteccióncontraesto.Silediceasuclientedecorreoquedeseaverlosencabezadoscompletos,observaráqueelservidordecorreoinyectóvariosencabezadosquecuentanlaverdaderahistoria:
[email protected]:45:212018Return-Path:<[email protected]>X-Original-To:[email protected]:[email protected]
Pero,porsupuesto,losclientesdecorreosiempreocultanesteniveldedetalledeformapredeterminada,ylainterpretacióncorrectadelosencabezadospuedeserdifícil.Laclavearecordaresquelosservidoreslospreparanamedidaqueavanzan,porloqueelservidorloscolocaenlapartesuperior;sive"Return-Path" en la parte inferior de los encabezados, es probable que el atacante la haya falsificado para intentar desviarlo ... Dado que el mensaje original "datos" contiene encabezados creados por el cliente remitente, pueden poner lo que quieran allí antes de que los servidores comiencen a prepararse.
Según cómo hacerlo -
La primera regla de la falsificación de destinatarios de correo electrónico es, espera que falle miserablemente.
La segunda regla es, use Bcc: para los destinatarios que deseas obtener y Para: para los destinatarios que quieres que se vean. Esta es la forma estándar de hacerlo con un cliente de correo, y generalmente funciona con todo, desde mailx a gmail.
Pero el kilometraje puede variar de forma impredecible. Por ejemplo, si deja Para: en blanco, muchos servidores de correo rellenarán el contenido de Cco: en Para: para compensarlo. Hace 20 años envié spam a miles de "destinatarios ocultos" con las direcciones de cada uno de esa manera, enviando una actualización del concurso a la lista de solicitantes. OOPS.