9 sept 2022

GIFShell: ataque con un GIF permite ejecutar código a través de Microsoft Teams

Una nueva técnica de ataque llamada GIFShell permite a los actores de amenazas abusar de Microsoft Teams para nuevos ataques de phishing y ejecutar comandos de forma encubierta para robar datos usando un GIF.

El nuevo escenario de ataque, compartido exclusivamente con BleepingComputer, ilustra cómo los atacantes pueden unir numerosas vulnerabilidades y fallas dpara abusar de la infraestructura legítima de Microsoft para entregar archivos, ejecutar comandos maliciosos y realizar la filtración de datos a través del GIF.

Como la exfiltración de datos se realiza a través de los propios servidores de Microsoft, el tráfico será más difícil de detectar por el software de seguridad que lo ve como tráfico legítimo de Microsoft Team.

En general, la técnica de ataque utiliza una variedad de fallas y vulnerabilidades de Microsoft Teams:

  • Omitir los controles de seguridad de Microsoft Teams permite a los usuarios externos enviar archivos adjuntos a los usuarios de Microsoft Teams.
  • Modificar los archivos adjuntos enviados para que los usuarios descarguen archivos desde una URL externa en lugar del enlace de SharePoint generado.
  • Falsificar los archivos adjuntos de los equipos de Microsoft para que aparezcan como archivos inofensivos, pero descargar un ejecutable o documento malicioso.
  • Esquemas de URI inseguros para permitir el robo de hash NTLM de SMB o ataques de retransmisión NTLM.
  • Microsoft admite el envío de GIF codificados en HTML Base64, pero no analiza el contenido de bytes de esos GIF. Esto permite enviar comandos maliciosos dentro de un GIF de aspecto normal.
  • Microsoft almacena los mensajes de Teams en un archivo de registro analizable, ubicado localmente en la máquina de la víctima y al que puede acceder un usuario con pocos privilegios.
  • Los servidores de Microsoft recuperan GIF de servidores remotos, lo que permite la filtración de datos a través de nombres de archivos GIF.

GIFShell: reverse shell a través de GIF

La nueva cadena de ataque fue descubierta por el consultor de seguridad cibernética y pentester Bobby Rauch, quien encontró numerosas vulnerabilidades o fallas en los equipos de Microsoft que se pueden encadenar para la ejecución de comandos, la exfiltración de datos, las omisiones del control de seguridad y los ataques de phishing.

El componente principal de este ataque se llama GIFShell, que permite a un atacante crear una shell inversa que entrega comandos maliciosos a través de GIF codificados en Base64 en Teams y extrae la salida a través de GIF recuperados por la propia infraestructura de Microsoft.

Para crear esta shell inversa, el atacante primero debe convencer a un usuario para que instale un controlador malicioso que ejecute comandos y cargue la salida del comando a través de una URL en un enlace GIF de Microsoft Teams. Sin embargo, como sabemos, los ataques de phishing funcionan bien para infectar dispositivos, Rauch ideó un nuevo ataque de phishing en Microsoft Teams para ayudar en esto, que describimos en la siguiente sección.

GIFShell funciona engañando a un usuario para que cargue un ejecutable de malware llamado "stager" en su dispositivo. Este escaneará continuamente los registros de Microsoft Teams ubicados en $HOME\AppData\Roaming\Microsoft\Teams\IndexedDB\https_teams.microsoft.com_0.indexeddb.leveldb\*.log.

Todos los mensajes recibidos se guardan en estos registros y todos los grupos de usuarios de Windows pueden leerlos, lo que significa que cualquier malware en el dispositivo puede acceder a ellos.

Un actor de amenazas crearía su propio tenant de Microsoft Teams y se pondría en contacto con otros usuarios de Microsoft Teams fuera de su organización. Los atacantes pueden lograr esto fácilmente ya que Microsoft permite la comunicación externa de forma predeterminada en Microsoft Teams.

Para iniciar el ataque, el actor de amenazas puede usar el aplicativo GIFShell Python de Rauch para enviar un mensaje a un usuario de Microsoft Teams que contiene un GIF especialmente diseñado. Esta imagen GIF legítima se ha modificado para incluir comandos que sde ejecutan en la máquina del objetivo.

Cuando el objetivo recibe el mensaje, este y el GIF se almacenarán en los registros del equipo de Microsoft, que supervisa el manipulador malicioso. Cuando el stager detecta un mensaje con un GIF, extraerá los comandos codificados en Base64 y los ejecutará en el dispositivo.

El GIFShell luego tomará el resultado del comando ejecutado y lo convertirá en texto Base64. Este texto Base64 se usa como nombre de archivo para un GIF remoto incrustado en una tarjeta de encuesta de Microsoft Teams que el organizador envía al webhook público de Microsoft Teams del atacante.

A medida que Microsoft Teams procesa las tarjetas para el usuario, los servidores de Microsoft se conectarán nuevamente a la URL del servidor del atacante para recuperar el GIF, que se nombra utilizando la salida codificada en Base64 del comando ejecutado.

El servidor GIFShell que se ejecuta en el servidor del atacante recibirá esta solicitud y decodificará automáticamente el nombre del archivo, lo que permitirá a los atacantes ver el resultado del comando ejecutado en el dispositivo de la víctima, como se muestra a continuación.

Por ejemplo, un archivo GIF recuperado llamado 'dGhlIHVzZXIgaXM6IA0KYm9iYnlyYXVjaDYyNzRcYm9iYnlyYXVJa0K.gif' se decodificaría en la salida del comando 'whoami' ejecutado en el dispositivo infectado: the user is bobbyrauch6274\bobbyrauIkB

Los actores de amenazas pueden continuar usando el servidor GIFShell para enviar más GIF, con más comandos integrados para ejecutar, y continuar recibiendo la salida cuando Microsoft intenta recuperar los GIF.

Dado que estas solicitudes las realiza el sitio web de Microsoft, urlp.asm.skype.com, que se utiliza para la comunicación regular de los equipos de Microsoft, el tráfico se considerará legítimo y el software de seguridad no lo detectará. Esto permite que el ataque GIFShell extraiga datos de forma encubierta al mezclar la salida de sus comandos con la comunicación de red legítima de Microsoft Teams.

Abusar de los equipos de Microsoft para ataques de phishing

Como dijimos anteriormente, el ataque GIFShell requiere la instalación de un ejecutable que ejecute los comandos recibidos dentro de los GIF. Para ayudar en esto, Rauch descubrió las fallas de Microsoft Teams que le permitían enviar archivos maliciosos a los usuarios de Teams pero falsificarlos para que parecieran imágenes inofensivas en ataques de phishing.

"Esta investigación demuestra cómo es posible enviar archivos adjuntos de phishing altamente convincentes a las víctimas a través de Microsoft Teams, sin que el usuario pueda evaluar previamente si el archivo adjunto vinculado es malicioso o no", explica Rauch en su artículo sobre el método de phishing.

Como dijimos anteriormente en nuestra discusión sobre GIFShell, Microsoft Teams permite a los usuarios de Microsoft Teams enviar mensajes a los usuarios en otros inquilinos de forma predeterminada. Sin embargo, para evitar que los atacantes usen Microsoft Teams en ataques de phishing de malware, Microsoft no permite que los usuarios externos envíen archivos adjuntos a miembros de otro tenant.

Mientras jugaba con los archivos adjuntos en Microsoft Teams, Rauch descubrió que cuando alguien envía un archivo a otro usuario en el mismo tenant, Microsoft genera un enlace de Sharepoint que está incrustado en una solicitud JSON POST.

Sin embargo, este mensaje JSON se puede modificar para incluir cualquier enlace de descarga que desee un atacante, incluso enlaces externos. Peor aún, cuando el JSON se envía a un usuario a través de Teams, también se puede usar para enviar archivos adjuntos como un usuario externo, sin pasar por las restricciones de seguridad de Microsoft Teams.

Por ejemplo, el JSON a continuación se ha modificado para mostrar un nombre de archivo de Christmas_Party_Photo.jpeg, pero en realidad entrega un ejecutable remoto Christmas_Party_Photo.jpeg.............exe. Sin embargo, cuando el usuario hace clic en el enlace, el archivo adjunto descargará el ejecutable del servidor del atacante.

Además de usar este ataque de phishing de suplantación de identidad de Microsoft Teams para enviar archivos maliciosos a usuarios externos, los atacantes también pueden modificar el JSON para usar URI de Windows, como ms-excel:, para iniciar automáticamente una aplicación para recuperar un documento.

Rauch dice que esto permitiría a los atacantes engañar a los usuarios para que se conecten a un recurso compartido de red remoto, permitiendo que los actores de amenazas roben hashes NTLM, o que los atacantes locales realicen un ataque de retransmisión NTLM para elevar los privilegios.

"Estos esquemas de URI permitidos y potencialmente inseguros, combinados con la falta de aplicación de permisos y las vulnerabilidades de suplantación de archivos adjuntos, pueden permitir un One Click RCE a través de la retransmisión NTLM en Microsoft Teams", explica Rauch en su informe sobre el ataque de suplantación de identidad.

Microsoft no corrigió los errores de inmediato

Rauch le dijo a BleepingComputer que reveló las fallas a Microsoft en mayo y junio de 2022 y, a pesar de que Microsoft dijo que eran problemas válidos, decidieron no solucionarlos de inmediato.

Cuando BleepingComputer se puso en contacto con Microsoft para preguntar por qué no se solucionaron los errores, no sorprendió su respuesta con respecto a la técnica de ataque GIFShell, ya que requiere que el dispositivo ya esté comprometido con malware.

Sin embargo, Microsoft ha dejado la puerta abierta para resolver estos problemas y le ha dicho a BleepingComputer que pueden recibir servicio en futuras versiones.

Fuente: BC

Suscríbete a nuestro Boletín

0 Comments:

Publicar un comentario

Gracias por dejar un comentario en Segu-Info.

Gracias por comentar!