Evadiendo el antivirus mediante Early Bird y Syscalls

Uno de los problemas que se intentan evitar durante el desarrollo de un proyecto Red Team es generar alertas que puedan hacer sospechar al Blue Team que un activo ha sido comprometido. En este tipo de proyectos la discreción es fundamental.

Es probable que, si se levantan suficientes sospechas, el Blue Team actúe y se pierda un punto de entrada ya conseguido. Puede que sea incluso necesario reconstruir toda la infraestructura de ataque (probablemente el Blue Team obtendrá IOCs y marcará como maliciosos las IPs, dominios, artefactos, etc. que se estén utilizando). Incluso tras reconstruir la infraestructura de ataque, puede que resulte muy difícil encontrar otro punto de entrada.

Por este motivo, uno de los aspectos que es necesario tener en cuenta en el desarrollo de los artefactos que se preparen para el ejercicio es la evasión del antivirus. Las técnicas de detección utilizadas por los servicios de antivirus instalados en los equipos de usuario van mejorando mucho con el tiempo, principalmente con la incorporación del análisis en la nube.

No obstante, las técnicas utilizadas por los profesionales que trabajan en la parte ofensiva y, cómo no, también por los atacantes reales, también han mejorado notablemente, obligando a mejorar continuamente las protecciones y formas de detección.

En este artículo se comentan un par de técnicas que se explican en profundidad en los cursos RED TEAM Operator: Malware Development Essentials y Intermediate Course del Sektor7 Institute, cursos muy recomendables ya que tienen un temario variado y son muy prácticos.

El código utilizado en los ejemplos de este artículo está basado en el que se presenta en estos dos cursos.

Early Bird es una técnica de inyección de código que hace uso del mecanismo implementado en Windows para las llamadas asíncronas a procedimientos, también conocido como APC o Asynchronous Procedure Calls. Esta funcionalidad permite la ejecución asíncrona de código en el contexto de un determinado proceso y resulta interesante porque puede ser utilizada para la ejecución de código malicioso antes de que llegue a ejecutarse el punto de entrada del hilo principal del proceso original.

[Read more…]

Do Math or Windows Dies! Personalizando un ransomware escrito en .NET

NOTA: El contenido de este artículo es educativo e informativo. El objetivo es aprender cómo funciona el malware y cómo identificar sus capacidades. El autor no se hace responsable de una mala utilización de la información aquí expuesta. El autor NO RECOMIENDA bajo NINGÚN CONCEPTO la ejecución de la muestra en una máquina fuera de laboratorio aislado.

En este artículo vamos a analizar, destripar y personalizar un pequeño malware de tipo screenlocker (una variante de Ransomware que bloquea el equipo pero no cifra los ficheros). Se trata de una muestra torpe pero efectiva que vamos a manipular para crear nuestro propio screenLocker.

SSHBOT, el ScreenLocker chapuza

SSHBOT, también conocido como P4YME, es un malware antiguo y poco sofisticado que pertenece a la familia de los ransomwares.

La muestra utilizada en este artículo es pública y está subida a VirusTotal, donde cuenta con 54 detecciones:

Cuando se ejecuta, reinicia el equipo y muestra este mensaje:

[Read more…]

Análisis campaña Emotet

El post de hoy viene de la mano del CSIRT-CV, el Centro de Seguridad TIC de la Comunitat Valenciana. Nacido en junio del año 2007, como una apuesta de la Generalitat Valenciana por la seguridad en la red, fue una iniciativa pionera al ser el primer centro de estas características que se creó en España para un ámbito autonómico.

A pesar de tratarse de un malware que se comenzó a identificar en 2014, Emotet todavía sigue siendo una de las amenazas más activas hasta la fecha, evolucionado desde las versiones iniciales, en las que se centraba en el robo de credenciales bancarias, hasta la actualidad, dónde se ha ampliado el arsenal de técnicas entre las que se encuentran sniffing de tráfico de red, explotación de vulnerabilidades para conseguir movimiento lateral, etc.

Indicar que EMOTET fue interrumpido la última semana de Enero de 2021 mediante una acción global entre autoridades de los Países Bajos, Alemania, Estados Unidos, Reino Unido, Francia, Lituania, Canadá y Ucrania, con una actividad internacional coordinada por Europol y Eurojust. Esta acción permitió que los investigadores tomaran el control de su infraestructura.

Durante estos 6 años hemos visto cómo nuevas campañas de Emotet aparecían durante unas semanas, y una vez las muestras y los ficheros maliciosos utilizados ya eran bloqueados por las principales casas de Antivirus se detenían unos días hasta las siguiente oleada.

En CSIRT-CV hemos recibido varias de estas campañas, las cuales hemos tratado de analizar y remediar en nuestros sistemas. Vamos a detallar algunos aspectos importantes de este malware, que aunque desactivado, puede enseñarnos muchas cosas de las amenazas que vengan en el futuro.

[Read more…]

Agujas, pajares e imanes: Análisis forense de malware fileless (V)

En el artículo anterior Ángela ya tenía gracias al análisis forense toda la información del ataque, así que le toca continuar con la respuesta al incidente en las fases de contención, erradicación y recuperación.

Respuesta al incidente

Con todas las respuestas importantes en la mano, Ángela puede hacer un esquema muy rápido del incidente:

  1. Los atacantes envían un spear-phishing a Pepe Contento y otros altos cargos el 3 de noviembre sobre las 10.37h.
  2. El usuario Pepe Contento abre el correo y pincha sobre el enlace el mismo día a las 11.05h, ejecutando el código malicioso entregado por Sharpshooter y comprometiendo su equipo con una sesión de Meterpreter.
  3. Los atacantes verifican que tienen privilegios de administrador y obtienen las credenciales del equipo, encontrando el hash de un administrador de dominio (que tenía sesión iniciada en el equipo).
  4. Los atacantes se hacen pasar por la cuenta de administrador de dominio y acceden a las contraseñas cifradas de varios altos cargos.
  5. Estas contraseñas cifradas son rotas por los atacantes mediante un ataque de fuerza bruta, obteniendo las contraseñas en claro.
  6. Los atacantes emplean esas credenciales para acceder a los webmail de diversos altos cargos entre las 11.30h y las 16.00h del mismo día.
  7. A las 15.30h la usuaria maria.feliz detecta un comportamiento inusual de su cuenta de correo y lo comunica al CAU.
  8. A las 15.45h el CAU corrobora el comportamiento extraño y avisa a Seguridad.
  9. Seguridad accede a las 15.55h a los logs del correo y detecta los accesos anómalos.
  10. Se declara incidente de seguridad a las 16.00h.

[Read more…]

Agujas, pajares e imanes: Análisis forense de malware fileless (IV)

Paso 7: Correo

En la entrada anterior Salvador había destripado el malware y encontrado el C2, y Ángela había confirmado que era una sesión de Meterpreter, habiéndose hecho una idea de las posibles acciones realizadas por los atacantes.

Tan solo queda localizar el vector de entrada, que por el análisis de memoria sabíamos que era un correo electrónico malicioso. Es el momento perfecto para recuperar el equipo del usuario pepe.contento, entrar con un LiveUSB forense (como DEFT o SIFT) y recuperar el .ost del usuario del directorio C:\Users\pepe.contento\AppData\Local\Microsoft\Outlook.

Para leerlo en modo solo lectura la forma más cómoda es emplear Kernel OST Viewer, que permite abrir el fichero de correo entero (y con acceso a los metadatos). En 30 segundos Ángela ha encontrado lo que buscaba:
[Read more…]

Agujas, pajares e imanes: Análisis forense de malware fileless (III)

Paso 5: Análisis de malware

En la entrada anterior Ángela había encontrado la persistencia del malware, así que procede analizarlo para ver su contenido. Salvador (a pesar de su espesa barba digna de un administrador de HP-UX de principios de siglo) está más contento que un niño con zapatos nuevos, así que se lanza a por el malware como un fox-terrier hambriento.

Lo primero de todo es comprobar si nos estamos enfrentando a un malware conocido. Para ello Salvador copia el código en base64 a un fichero de texto, calcula su hash con HashMyFiles y lo sube a VirusTotal sin obtener resultados. Interesante…

El segundo paso sería subir el fichero a VirusTotal, pero Salvador ha estado atento a lo explicado por sus profesores del curso de análisis de malware: algunos atacantes vigilan de forma constante VirusTotal para comprobar si su malware ha sido subido a la plataforma, usándola como un sistema de alerta temprana.
[Read more…]

Agujas, pajares e imanes: Análisis forense de malware fileless (II)

Paso 3: Logs de eventos

En la entrada anterior dejamos a Ángela blasfemando por la manera en la que los atacantes habían empleado un antiguo dominio del MINAF para realizar su ataque. Ahora toca comprobar lo sigilosos que han sido revisando los logs del sistema.

Todo equipo Windows tiene un registro de eventos, situado en los equipos modernos en:

C:\Windows\System32\winevt\Logs

Existen diversos registros en función de los eventos que se guardan. Los clásicos son Seguridad, Sistema y Aplicación, pero a día de hoy tenemos varias docenas más de registros, que en algunos casos nos pueden dar información vital. Estos registros se guardan en formato binario, por lo que necesitamos algún programa para abrirlos.

[Read more…]

Agujas, pajares e imanes: Análisis forense de malware fileless (I)

[Nota: Esta serie de posts es una narración de un análisis forense de un caso práctico totalmente ficticio (pero contada, esperamos, de forma didáctica y con gracia y salero). Si queréis una versión con la misma dosis técnica pero con menos narrativa, podéis consultar el vídeo de la charla que el autor dio en las XII Jornadas STIC del CCN-CERT, o echar un ojo las slides de la presentación].

[Nota 2: Estos posts desgranan un taller de análisis forense básico. Habrá algunas cosas que se podrían hacer de manera más eficiente y elegante, pero la idea era hacerlas de forma sencilla para que fueran fáciles de entender. Y como todo buen taller práctico, se puede seguir paso a paso: el CCN-CERT está alojando en LORETO todo el material, que podéis descargar desde aquí. Tenéis tanto las evidencias en bruto (si queréis primero intentar encontrar el bicho por vuestra cuenta sin leer nada de la solución) como una guía paso a paso con todas las herramientas y evidencias necesarias en cada paso].

Un nuevo día empieza en las instalaciones del MINAF (Ministerio de la Alegría y la Felicidad), lo que para Ángela de la Guarda (CISO del MINAF) significa café, reuniones y papeleo. Al menos, el proyecto del ENF (Esquema Nacional de Felicidad) está de una vez saliendo adelante…

[Read more…]

Análisis de Linux.Haikai: dentro del código fuente

Hace unos días conseguimos el código fuente del malware Haikai, el cual corresponde a una más de la multitud de implementaciones llevadas a cabo por el continuo reciclaje de código fuente perteneciente a diferentes botnets IoT. A pesar de que no hemos identificado ninguna novedad respecto a versiones de malware IoT anteriores, nos ha permitido la obtención de mucha información sobre las técnicas, mejoras y autores.

Comentar también que, según diferentes registros obtenidos, esta botnet ha estado actuando durante gran parte del último mes de junio.

En las siguientes líneas se analizará el código, así como las posibles atribuciones y las implementaciones no referenciadas en el hilo de ejecución, las cuales nos permiten adivinar que el código va mutando en diferentes líneas en paralelo para una misma función.

Así pues vamos a comenzar analizando la estructura de los ficheros. [Read more…]

TeleRAT: Un nuevo troyano que utiliza Telegram como covert channel.

Este es el nombre del último troyano de Android, que ha sido descubierto por investigadores de Palo Alto Network. Está diseñado y programado para usar los servicios de Telegram, más concretamente se utiliza el “API Bot de Telegram” como canal encubierto para la comunicación con su servidor Command and Control (C&C) con el fin de exfiltrar datos.

Según informan, la API Bot de Telegram ya estaba siendo empleada por atacantes para robar información que abarca desde SMS e historial de llamadas hasta listas de archivos de dispositivos Android infectados. Funcionalidades de otro malware denominado IRRAT.  Gracias a los estudios que se estaban realizando, se encontraron las trazas de este nuevo malware.

Pero… ¿cómo funciona TeleRAT?

Aunque se están haciendo comparaciones entre IRRAT y TeleRAT, el funcionamiento de ambos es muy diferente. Si hablamos de IRRAT,, este roba contactos, lista de cuentas de Google registradas en los dispositivos, historial de SMS, etc. Una vez que se ha hecho esto, mantiene a los datos robados en la tarjeta SD del teléfono y además los envía a un servidor después del primer lanzamiento de la aplicación.
[Read more…]