Introducción
El spoofing, en un sentido general, es la suplantación de correos electrónicos de remitentes legítimos. En este artículo abordaremos la suplantación de direcciones de correo electrónico, en la que se falsifica el encabezado “From” de un correo electrónico, es decir, la forma en que el nombre y la dirección del remitente aparecen en el programa de correo electrónico del usuario.
El protocolo SMTP (Simple Mail Transfer Protocol, el principal protocolo de transmisión de correo electrónico en las redes TCP/IP) no ofrece ninguna protección contra la suplantación de identidad, por lo que resulta bastante fácil falsificar la dirección del remitente. De hecho, todo lo que un atacante necesita es un instrumento para elegir en nombre de quién llegará el correo electrónico. Y puede ser tanto un cliente de correo, como una utilidad o script especial, de los que abundan en Internet.
La suplantación de direcciones de correo se utiliza tanto en esquemas fraudulentos como en ataques selectivos contra organizaciones. El objetivo de esta técnica es convencer a la víctima de que el correo electrónico procede de un remitente de confianza e inducirla a realizar las acciones especificadas en éste: hacer clic en un enlace de phishing, transferir dinero a una cuenta específica, descargar un archivo malicioso, etc. Para ser más convincentes, los atacantes pueden copiar el diseño y el estilo de los mensajes de correo electrónico de un remitente concreto, enfatizar la urgencia de la tarea y utilizar otras técnicas de ingeniería social.
En algunos casos, los correos electrónicos falsos forman parte de un ataque de varias etapas, y la primera no requiere que la víctima haga nada sospechoso. En nuestro artículo sobre el doxing de empresas se pueden encontrar ejemplos de este tipo de ataques.
Suplantación de dominios legítimos (Legitimate Domain Spoofing)
El tipo más sencillo de suplantación de una dirección de correo electrónico es la suplantación de un dominio legítimo. Consiste en que el atacante pone el encabezado “From” el dominio de la organización real, en vez del de su propio dominio. En este caso es extremadamente difícil para el usuario distinguir un mensaje falso de uno real.
Para combatir la suplantación de identidad, se han creado varios métodos de autenticación de correo que se mejoran y complementan entre sí: SPF, DKIM y DMARC. Los mecanismos enumerados confirman de una u otra manera que el mensaje de verdad se ha enviado desde la dirección declarada.
- El estándar SPF (Sender Policy Framework) permite al propietario de un dominio de correo restringir el conjunto de direcciones IP que pueden enviar correo desde este dominio y permite al servidor de correo verificar que la dirección IP del remitente esté autorizada por el propietario del dominio. Sin embargo, SPF no comprueba el encabezado “From”, sino el dominio del remitente especificado en la envolvente de SMTP, que se utiliza para transmitir la información de enrutamiento del mensaje entre el cliente de correo y el servidor, y que no se muestra al destinatario.
- El método DKIM resuelve el problema de la autenticación del remitente con una firma digital que se genera a partir de la clave privada almacenada en el servidor del remitente. La clave pública para la verificación de la firma se coloca en el servidor DNS responsable del dominio de envío. Si el correo electrónico se ha enviado desde otro dominio, la firma no será válida. Pero esta tecnología también tiene un punto débil: un atacante puede enviar un correo electrónico falsificado sin una firma DKIM y resultará imposible verificarlo.
- DMARC (Domain-based Message Authentication, Reporting and Conformance) permite comprobar el dominio del encabezado “From” con el dominio validado por DKIM y/o SPF. Por lo tanto, al utilizar DMARC, un correo electrónico que suplante un dominio legítimo no pasará la inspección. Sin embargo, si se elige una política estricta, DMARC también puede bloquear correos electrónicos utilizables. En uno de nuestros artículos hablamos de cómo nuestras soluciones mejoran esta tecnología y reducen al mínimo los falsos positivos.
Por cierto, con la adopción generalizada de las tecnologías mencionadas, los atacantes se enfrentaron a una difícil elección: confiar en que la empresa por la que se hacen pasar no tenga autenticación de correo electrónico o esté mal configurada (ambas cosas siguen pasando), o utilizar métodos de falsificar el encabezado “From” que burlen la autenticación.
Suplantación del nombre para mostrar (Display Name Spoofing)
El nombre para mostrar es el nombre del remitente que aparece en el encabezado “From”, antes de su dirección. En el caso del correo corporativo, el nombre del remitente suele ser el nombre real de la persona, el nombre del departamento, etc.
Ejemplo de nombre para mostrar
Muchos clientes de correo electrónico ocultan la dirección del remitente para comodidad del destinatario y solo ponen el nombre para mostrar en el correo electrónico. Esto es utilizado activamente por los atacantes, que falsifican un nombre, pero dejan su dirección real en el encabezado “From”. Es común que esta dirección esté protegida por una firma DKIM y SPF, así que los mecanismos de autenticación dejan pasar el mensaje como legítimo.
Ghost Spoofing
El tipo más popular y común de suplantación de nombres de pantalla es el Ghost Spoofing. La idea es que el atacante no solo utilice el nombre de la persona o empresa por la que pretende hacerse pasar, sino también la dirección de remitente prevista, como se ve en el ejemplo de la captura de pantalla siguiente.
Ejemplo de Ghost Spoofing
En este caso, la carta procede en realidad de una dirección completamente diferente
Dirección real del remitente en Ghost Spoofing y autenticación de correo
AD Spoofing
El AD (Active Directory) Spoofing es también una forma de suplantación de nombres para mostrar, pero a diferencia de la técnica Ghost Spoofing no implica especificar una dirección falsificada como parte del nombre. La dirección maliciosa desde la que se envían dichos correos electrónicos utiliza el nombre de la persona en cuyo nombre se envían.
Ejemplo de AD spoofing
Este método parece más primitivo en comparación con el Ghost Spoofing, pero los estafadores pueden preferirlo por varias razones. En primer lugar, si el agente de correo del destinatario muestra el contenido del encabezado “From” en su totalidad, una dirección de doble remitente despertará más sospechas en el usuario que la dirección de un dominio público. En segundo lugar, el Ghost Spoofing es técnicamente más fácil de bloquear con los filtros de spam: basta con enviar correos electrónicos de spam en los que el nombre para mostrar del remitente contenga la dirección de correo electrónico. Es imposible prohibir todos los correos electrónicos entrantes de los tocayos de todos los colegas y contrapartes.
Spoofing de dominios similares
En los ataques más sofisticados, los atacantes utilizan dominios especialmente registrados similares al dominio de la organización objetivo. Requiere un poco más de gasto, ya que encontrar y comprar un dominio específico, configurar el correo, las firmas DKIM y SPF y la autenticación DMARC es más complicado que simplemente cambiar un poco el encabezado “From”. Pero también es más difícil detectar una falsificación.
Primary Lookalike
Los dominios Lookalike son dominios que tienen una ortografía similar a los dominios de una organización falsa, pero difieren de ellos en una o más letras. Los hemos descrito con más detalle en el artículo “Dominios parecidos y como superarlos”. Por ejemplo, el correo electrónico de la captura de pantalla siguiente procede del dominio deutschepots.de, que es muy fácil de confundir con el dominio de la empresa postal alemana Deutsche Post (deutschepost.de). Si la víctima sigue el enlace de un correo de este tipo e intenta pagar la entrega del paquete, no solo puede perder 3 euros, sino también dejar a los estafadores los datos de la tarjeta bancaria.
Ejemplo de correo electrónico de un dominio similar
Sin embargo, es posible notar dicho error si uno está lo suficientemente atento. Pero también hay casos en los que la simple atención ya no es suficiente.
Unicode Spoofing
El Unicode Spoofing es un tipo de suplantación en el que uno de los caracteres ASCII de un nombre de dominio se sustituye por un carácter de escritura similar del rango Unicode. Para entender esta técnica, es necesario comprender cómo se codifican los dominios que utilizan caracteres no latinos (como el cirílico o las diéresis). El método de conversión Punycode se creó para convertir los caracteres Unicode en las llamadas secuencias ACE (ASCII Compatible Encoding, codificación compatible con ASCII), compuestas por letras latinas, guiones y números del 0 al 9. Muchos navegadores y clientes de correo electrónico muestran la versión Unicode del dominio. Por ejemplo, el dominio:
1 |
касперский.рф |
se convierte en:
1 |
xn--80akjebc7ajgd.xn--p1ai |
Sin embargo, en el navegador es probable que vea “касперский.рф”. Al mismo tiempo, como esta tecnología implica una codificación parcial (no se codifica toda la cadena, sino un solo carácter), el dominio puede contener tanto caracteres ASCII como Unicode, y los malhechores lo utilizan activamente esta debilidad.
Ejemplo de un correo electrónico con Unicode Spoofing
En la captura de pantalla anterior, vemos un mensaje supuestamente enviado desde el dominio apple.com. La escritura coincide completamente, y el mensaje pasó la autentificación postal. El diseño del correo electrónico es sorprendente, pero el usuario medio rara vez recibe mensajes de bloqueo, así que no tiene mucho con qué compararlo. Si un usuario desprevenido hace clic en el enlace, se lo conduce a un sitio falso y deja allí los datos de su cuenta.
Si se da un vistazo a los encabezados de este correo electrónico (se puede hacerlo en la mayoría de los clientes de correo electrónico para PC y servicios de correo electrónico basados en la web), se obtiene una imagen muy diferente:
Registro de dominio Punycode
El caso es que el dominio de “apple.com” acaba de caer bajo la regla de codificación de caracteres Unicode en ASCII: los tres primeros caracteres son “a” y “p” cirílicos. Pero el programa de correo electrónico que abrió el mensaje convirtió, para comodidad del usuario, la combinación Punycode a Unicode y el correo electrónico se mostró como “apple.com”.
Vale decir que algunos clientes de correo electrónico advierten al usuario si se utilizan caracteres no estándar en el nombre de dominio, o incluso mostrarán Punycode en el encabezado “From”. Sin embargo, este tipo de mecanismos de protección no están siempre previstos, y esto juega a favor de los estafadores.
Conclusión:
Hay diferentes maneras de convencer al destinatario de que un mensaje procede de un remitente de confianza. Algunas de ellas parecen rudimentarias, pero permiten a los atacantes eludir con éxito la autenticación del correo electrónico. Al mismo tiempo, el spoofing como técnica se utiliza para implementar muchos tipos de ataques, que van desde el phishing común hasta los BEC avanzados. Y estos, a su vez, pueden ser una de las etapas de un ataque selectivo más complejo. En consecuencia, los daños causados por la suplantación de identidad, incluso en un solo ataque, pueden ir desde el robo de identidad hasta la interrupción de las operaciones empresariales, la pérdida de reputación y pérdidas multimillonarias.
También hay una variedad de maneras de protegerse contra la suplantación de identidad, desde prestar atención, que es una forma simple pero no muy fiable, hasta usar componentes especiales que son parte de las soluciones empresariales. Kaspersky ha incluido el módulo necesario en las soluciones para servidores de correo para Microsoft Exchange, Linux y entornos de virtualización, así como en un producto independiente para Microsoft Office 365.
Spoofing de direcciones de correo electrónico: cómo los atacantes se hacen pasar por otros