Spam y phishing

Uso de archivos adjuntos HTML en los mensajes electrónicos de phishing

El uso de archivos adjuntos HTML en los correos electrónicos es una de las técnicas más utilizadas por los atacantes en los envíos masivos de phishing. Gracias esta técnica, los estafadores ya no tienen que incluir enlaces en el cuerpo del mensaje electrónico, que suelen ser fácilmente detectados por los motores antispam y los antivirus de correo electrónico. El formato HTML ofrece más oportunidades para enmascarar el contenido de phishing que el mensaje de correo electrónico en sí.

Los atacantes usan dos tipos principales de archivos adjuntos HTML: archivos HTML con un enlace a un sitio web fraudulento o páginas HTML de phishing completas. En el primer caso, los atacantes no sólo pueden ocultar el enlace en un archivo, sino también redirigir automáticamente al usuario a un sitio fraudulento cuando éste lo abre. El segundo tipo de archivos adjuntos HTML les permite prescindir de los sitios web y reducir los gastos de alojamiento, ya que el formulario de phishing y el script que recoge los datos están en el mismo archivo adjunto. Además, el archivo HTML, al igual que el correo electrónico, puede modificarse en función de la víctima y del vector de ataque previstos, con lo que se logra una personalización más precisa del contenido de la estafa.

Fig.1 Ejemplo de correo electrónico con un archivo adjunto HTML

Fig.1 Ejemplo de correo electrónico con un archivo adjunto HTML

Cómo funcionan los archivos adjuntos HTML de phishing

Los elementos de phishing en los archivos adjuntos HTML suelen implementarse mediante JavaScript, que se encarga de redirigir al usuario a un sitio de phishing o de recopilar y enviar las credenciales a los estafadores.

Figura 2 Página HTML de phishing y su código fuente

Figura 2 Página HTML de phishing y su código fuente

La mayoría de las veces, los atacantes envían los datos desde la página HTML a un sitio web malicioso cuya dirección URL está especificada en el script. Algunos archivos adjuntos están conformados en su totalidad, o casi en su totalidad, por un script JS.

En el código fuente del correo electrónico, el archivo adjunto HTML parece un texto sin formato, por lo general codificado en base64.

Figura 3 Apariencia del adjunto HTML en el código fuente del correo electrónico

Figura 3 Apariencia del adjunto HTML en el código fuente del correo electrónico

Si el archivo contiene scripts maliciosos o enlaces de texto sin formato, nada impide que el software de seguridad los descifre y bloquee al instante. Para evitar que los bloqueen, los atacantes recurren a varios trucos.

Ofuscación de JavaScript

La ofuscación de JavaScript es una de las técnicas más populares para enmascarar los archivos adjuntos HTML. Para impedir que se identifique la URL del archivo y se la bloquee de inmediato, los phishers distorsionan y ofuscan al máximo el propio enlace de phishing o todo el script. Y a veces todo el archivo HTML. En algunos casos, los atacantes ofuscan el código de forma manual, pero a menudo recurren a herramientas listas para usar que son de dominio público, como JavaScript Obfuscator.

Por ejemplo, si abre en un editor de texto el archivo adjunto HTML del mensaje fraudulento de la Figura 1 que se envió en nombre del banco HSBC, verá un código JS bastante enmarañado, que no parece indicar que vaya a abrir un enlace ni a realizar ninguna otra acción que tenga sentido.

Figura 4 Ejemplo de ofuscación en un archivo adjunto HTML

Figura 4 Ejemplo de ofuscación en un archivo adjunto HTML

Sin embargo, en realidad se trata de un script ofuscado que remite al usuario a un sitio de phishing. Los atacantes utilizaron una herramienta lista para usar para disfrazar el enlace de phishing, por lo que no tuvimos problemas para desofuscar el script.

Figura 5 Script desofuscado de un archivo adjunto en un correo electrónico enviado en nombre del banco HSBC: enlace para redirigir al usuario a un sitio fraudulento

Figura 5 Script desofuscado de un archivo adjunto en un correo electrónico enviado en nombre del banco HSBC: enlace para redirigir al usuario a un sitio fraudulento

Si el script, el enlace o la página HTML están ofuscados de forma manual, es mucho más difícil obtener el código fuente. Para detectar el contenido de phishing en un archivo de este tipo, puede ser necesario un análisis dinámico que requiera ejecutar y depurar el código.

Codificación

A veces los autores utilizan métodos aún más interesantes. En uno de los correos electrónicos de phishing, nos encontramos con un archivo adjunto HTML inusual. Utilizaba JavaScript, como en el ejemplo anterior. Debido a que el código era muy compacto, era fácil pensar que estaba haciendo lo mismo que el código del correo electrónico falso enviado en nombre de HSBC: redirigir al usuario a un sitio de phishing. Pero al ejecutarlo, resultó que este pequeño script contenía, codificada, una página de phishing en toda regla.

Figura 6 Archivo HTML que utiliza el método unescape: el código fuente del archivo contiene sólo cinco líneas, entre ellas una en blanco

Figura 6 Archivo HTML que utiliza el método unescape: el código fuente del archivo contiene sólo cinco líneas, entre ellas una en blanco

Figura 7 Página de phishing en archivo adjunto HTML

Figura 7 Página de phishing en archivo adjunto HTML

El truco que utilizaron los atacantes es bastante interesante: recurrieron al anticuado método unescape() de JS. La esencia de su funcionamiento es que cuando se le pasa una secuencia de caracteres “%xx”, los sustituye por sus equivalentes en ASCII. Si se ejecuta el script y se lee el código fuente de la página resultante, se verá un HTML común y corriente.

Figura 8 Archivo HTML

Figura 8 Archivo HTML “decodificado”

En la actualidad, JavaScript utiliza los métodos decodeURI() y decodeURIComponent() en lugar de unescape(), pero la mayoría de los navegadores modernos siguen siendo compatibles con unescape(). No podemos decir con certeza por qué los atacantes recurrieron a un método obsoleto, pero puede deberse a que es más probable que los motores antispam interpreten y detecten los métodos modernos.

Estadísticas

En los primeros cuatro meses de 2022, las soluciones de seguridad de Kaspersky detectaron casi 2 millones de correos electrónicos que contenían archivos adjuntos HTML maliciosos. Casi la mitad fueron identificados y bloqueados en marzo: 851 328 correos electrónicos. Enero fue el mes más tranquilo, y nuestras soluciones antispam detectaron 299 859 correos electrónicos con archivos adjuntos HTML de phishing.

Número de correos electrónicos con archivos adjuntos HTML maliciosos detectados, enero-abril de 2022 (descargar)

Conclusión

Los phishers utilizan varios trucos para impedir que se bloqueen los envíos masivos y atraer al mayor número posible de usuarios a la página fraudulenta. Una de sus técnicas habituales consiste en utilizar archivos adjuntos HTML con código ofuscado de forma parcial o completa. Los archivos HTML permiten a los atacantes utilizar scripts, ofuscar el contenido malicioso para hacerlo más difícil de detectar y enviar una página de phishing como un archivo adjunto en lugar de un enlace.

Las soluciones de seguridad de Kaspersky detectan los archivos adjuntos HTML que contienen scripts, sin importar el grado de ofuscación del código.

Uso de archivos adjuntos HTML en los mensajes electrónicos de phishing

Su dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

 

Informes

BlindEagle vuela alto en LATAM

Kaspersky proporciona información sobre la actividad y los TTPs del APT BlindEagle. Grupo que apunta a organizaciones e individuos en Colombia, Ecuador, Chile, Panamá y otros países de América Latina.

MosaicRegressor: acechando en las sombras de UEFI

Encontramos una imagen de firmware de la UEFI infectada con un implante malicioso, es el objeto de esta investigación. Hasta donde sabemos, este es el segundo caso conocido en que se ha detectado un firmware malicioso de la UEFI usado por un actor de amenazas.

Suscríbete a nuestros correos electrónicos semanales

Las investigaciones más recientes en tu bandeja de entrada