Enfoque de amenaza: Sigue al mal conejo
El 24 de octubre de 2017, Cisco Talos recibió una alerta sobre una campaña de ransomware a gran escala que afectaba a organizaciones de Europa del Este y Rusia. Como fue el caso en situaciones anteriores, nos movilizamos rápidamente para evaluar la situación y garantizar que los clientes permanezcan protegidos de esta y otras amenazas a medida que surgen en el panorama de amenazas.
Ha habido varias campañas de ransomware a gran escala en los últimos meses. Esto parece tener algunas similitudes con Nyetya en que también se basa en Petya ransomware. Las partes principales del código parecen haber sido reescritas. La distribución no parece tener la sofisticación de los ataques a la cadena de suministro que hemos visto recientemente.
DISTRIBUCIÓN
Talos evalúa con gran confianza que se está entregando una actualización falsa de Flash Player a través de una unidad de descarga y sistemas comprometedores. Los sitios que se vieron re direccionando a BadRabbit eran una variedad de sitios que tienen su sede en Rusia, Bulgaria y Turquía.
Cuando los usuarios visitaban uno de los sitios web comprometidos, se les redirigía a 1dnscontrol [.] Com, el sitio que hospedaba el archivo malicioso. Antes de descargar el archivo malicioso real, se observaba una solicitud POST a una dirección IP estática (185.149.120 [.] 3). Se encontró que esta solicitud se publicaba en una ruta estática de «/ scholasgoogle» y proporcionaba el agente de usuario, el sitio de referencia, la cookie y el nombre de dominio de la sesión. Después del POST, el cuentagotas se descargó desde dos rutas diferentes desde 1dnscontrol [.] Com, /index.php y /flash_install.php. A pesar de que se utilizan dos rutas, solo se descargó un solo archivo. Según la información actual, el malware parece haber estado activo durante aproximadamente seis horas antes de que se retirara el servidor 1dnscontrol [.] Com. La descarga inicial se observó alrededor de 2017-10-24 08:22 UTC.
El cuentagotas (630325cac09ac3fab908f903e3b00d0dadd5fdaa0875ed8496fcbb97a558d0da) requiere que el usuario facilite la infección y no utiliza ningún exploit para comprometer el sistema directamente. Este cuentagotas contiene BadRabbit ransomware. Una vez instalado, se utiliza un componente SMB para el movimiento lateral y una mayor infección. Esto parece usar una combinación de una lista incluida de credenciales débiles y una versión de mimikatz similar a la que se usó en Nyetya. A continuación hay una lista de las combinaciones de nombre de usuario / contraseña que hemos observado. Tenga en cuenta que existe una superposición con el clásico de culto de 1995 «Hackers».

A pesar de los informes iniciales, actualmente no tenemos evidencia de que el aprovechamiento de EternalBlue esté siendo aprovechado. Sin embargo, identificamos el uso del exploit EternalRomance para propagarse en la red. Este exploit aprovecha una vulnerabilidad descrita en el boletín de seguridad Microsoft MS17-010. La vulnerabilidad también fue explotada durante la campaña de Nyetya. Nuestra investigación continúa y actualizaremos a medida que aprendamos más.
DETALLES TÉCNICOS
El malware contiene un dropper que es responsable de extraer y ejecutar la carga útil del gusano. Esta carga contiene binarios adicionales almacenados en los recursos (comprimidos con zlib):
binarios legítimos asociados con DiskCryptor (2 controladores x86 / x64 y 1 cliente);
2 binarios tipo mimikatz (x86 / x64) similares a la muestra observada durante Nyetya. Una herramienta popular de código abierto utilizada para la recuperación de credenciales de usuario de la memoria de la computadora utilizando varias técnicas diferentes.
Cae archivos en el directorio C: \ Windows \. Los binarios similares a mimikatz se ejecutan utilizando la misma técnica que se aprovechó en la campaña de Nyetya. La comunicación entre la carga y el ladrón se realizará mediante un conducto con nombre, por ejemplo:
C: \ WINDOWS \ 561D.tmp \\. \ Pipe \ {C1F0BF2D-8C17-4550-AF5A-65A22C61739C}
El malware luego usa RunDLL32.exe para ejecutar el malware y continuar con las operaciones maliciosas. El malware luego crea una tarea programada con los parámetros que se muestran en la siguiente captura de pantalla:

La encriptación se realiza con 2 técnicas:
Cifrado de disco completo con DiskCryptor (una solución de cifrado de disco de código abierto)
Encriptación individual de archivos
Aquí está la lista de las extensiones específicas: .3ds .7z .accdb .ai .asm .asp .aspx .avhd .back .bak .bmp .brw .c .cab .cc .cer .cfg .conf .cpp .crt. cs .ctl .cxx .dbf .der .dib .disk .djvu .doc .docx .dwg .eml .fdb .gz .h .hdd .hpp .hxx .iso .java .jfif .jpe .jpeg .jpg .js. kdbx .key .mail .mdb .msg .nrg .odc .odf .odg .odi .odm .odp .ods .odt .ora .ost .ova .ovf .p12 .p7b .p7c .pdf .pem .pfx .php. pmf .png .ppt .pptx .ps1 .pst .pvi .py .pyc .pyw .qcow .qcow2 .rar .rb .rtf .scm .sln .sql .tar .tib .tif .tiff .vb .vbox .vbs. vcb .vdi .vfd .vhd .vhdx .vmc .vmdk .vmsd .vmtm .vmx .vsdx .vsv .work .xls .xlsx .xml .xvd .zip
Además de la tarea programada antes mencionada, el malware crea una segunda tarea programada que es responsable de reiniciar el sistema. Esta segunda tarea no ocurre instantáneamente sino que está programada para ocurrir más tarde.

Si los nombres de estas tareas programadas parecen familiares, parecen ser una referencia a Game of Thrones, específicamente coinciden con los nombres de los dragones.
Luego, el malware se propaga por la red, la técnica para enumerar los sistemas de red es exactamente la misma que Nyetya. Es realizado por las características legítimas de Microsoft Windows, a través de:
• SVCCTL: la gestión del servicio remoto
• SMB2
• SMB
• NTLMSSP authentication brute force
• WMI
Y un exploit:
• EternalRomance
El malware también crea un archivo en el escritorio del usuario infectado llamado DECRYPT. La ejecución de este archivo hace que se muestre la siguiente nota de rescate a las víctimas.

Para demostrar qué tan rápido se puede propagar este tipo de amenazas a nivel mundial, el siguiente gráfico refleja la actividad relacionada con DNS asociada a uno de los dominios que se utilizaban para distribuir la actualización falsa de Adobe Flash que se usó para eliminar el malware en los sistemas de las víctimas.


ETERNALROMANCE EXPLOIT
Cisco Talos ha identificado un exploit en la muestra BadRabbit. Es muy similar a la implementación de Python disponible públicamente del exploit EternalRomance que también es explotado por Nyetya. Sin embargo, la implementación del exploit BadRabbit es diferente a la de Nyetya, aunque todavía se basa principalmente en el exploit EternalRomance publicado en la fuga de ShadowBrokers.
La siguiente captura de pantalla muestra que BadRabbit está construyendo estructuras de contexto de seguridad modificadas para varias versiones del sistema operativo:

Las estructuras se ofuscan usando una operación NOT. Por ejemplo, aquí está el valor original de WIN7_32_SESSION_INFO en la muestra:
"\ xD5 \ xFD \ xE3 \ xFF \ xFE \ xFF \ xFF \ xFF \ xF \ xFF \ xFF \ xFF \ xFF \ xFF \ xFF \ xFF \ xFD \ xFF \ xFF \ xFF \ xFF \ xFF \ xFF \ xFF \ xFE "
Después de actualizar el orden de bytes endian y el formato para que coincida con un campo en la estructura WIN7_32_SESSION_INFO, el valor es:
0x001C022A, 0x00000001, 0x00000000, 0x00000000, 0x00000002, 0x00000000, 0x00000001
El valor extraído coincide con los datos FAKE_SECCTX en el exploit EternalRomance de acceso público mencionado anteriormente:

El ejemplo luego analiza una respuesta SMB que contiene la fuga de kernel de la estructura de grupo Frag:

Una vez más, el código BadRabbit coincide con la función leak_frag_size () en el exploit público.
El ejemplo también verifica el código de estado de NT en una solicitud NT_Trans después de intentar modificar los datos en otra estructura de transacción:

La misma acción se realiza en el exploit público:

Después de la verificación NT Trans, la muestra envía múltiples comandos NT_TRANSACT_SECONDARY utilizando diferentes valores de MultiplexID.

El equivalente también lo realiza la implementación de script Python de explotación pública en la función write_data (). Finalmente, podemos confirmar los hallazgos del análisis estático observando el tráfico generado por una captura pcap.

La muestra primero obtiene un FileID de 0x4000 y luego se usa el mismo valor como un MultiplexID en una solicitud NT_Trans:

Una vez más, esto demuestra un intento de confusión de tipo similar al que intentó el exploit EternalRomance (la técnica de «pares combinados»). Concuerda con el siguiente código de Python:

Con todo esto en mente, podemos estar bastante seguros de que BadRabbit incluye una implementación de EternalRomance utilizada para sobrescribir el contexto de seguridad de la sesión del kernel para permitirle iniciar servicios remotos, mientras que en Nyetya se utilizó para instalar la puerta trasera DoublePulsar. Ambas acciones son posibles debido al hecho de que EternalRomance le permite al atacante leer / escribir datos arbitrarios en el espacio de la memoria del kernel.
ENLACES ENTRE NYETYA Y BADRABBIT
Evaluamos con alta confianza:
- Que BadRabbit está construido en el mismo código base que Nyetya.
- Que la cadena de herramientas de construcción para BadRabbit es muy similar a la cadena de herramientas de construcción para Nyetya.
Las técnicas de evasión presentes en las modificaciones de la puerta trasera DoublePulsar en Nyetya y EternalRomance en BadRabbit demuestran niveles de comprensión similares y avanzados de los exploits involucrados, las detecciones de red implementadas en el momento de la implementación y la explotación general del kernel de Windows.
La base de código compartida se modificó para la compilación BadRabbit. En lugar de aprovechar PSEXEC, la ubicación remota de archivos y la administración remota del Servicio de Windows se implementaron directamente. Se agregó una segunda exportación al dll que permite que la ejecución remota se reinicie en un nuevo proceso de rundll32, posiblemente para evitar que el proceso principal se inicie claramente como un servicio. La implementación SMB que Nyetya contuvo para aprovechar exploits SMB ha sido reemplazada con una implementación SMB completamente diferente, así como una técnica de explotación diferente. El cifrado de la unidad posterior al reinicio con Petya se ha reemplazado con el cifrado de la unidad con DiskCryptor de código abierto.
La funcionalidad no modificada de Nyetya incluye la autorreubicación de dll malintencionado, las manipulaciones de tokens de proceso y de hilos, la identificación de pares de red y las colecciones seguras para subprocesos para administrar las credenciales y la información de destino. La funcionalidad ligeramente modificada que demuestra las modificaciones del nivel de fuente se encuentran en el flujo del punto de entrada malicioso, la interacción con el mimikatz incorporado y modificado, y en aspectos de la inicialización del sistema y el control de función basado en bitflag.
Si bien estos enlaces no son una prueba absoluta, con base en estos hallazgos, Talos evalúa con poca confianza que los autores de Nyetya y BadRabbit son los mismos.
CONCLUSIÓN
Este es otro ejemplo de cuán efectivo puede ser el ransomware entregado aprovechando los métodos de propagación secundaria, como SMB para proliferar. En este ejemplo, el vector inicial no era un sofisticado ataque a la cadena de suministro. En cambio, se trataba de una descarga básica basada en descargas que aprovechaba los sitios web comprometidos. Esto se está convirtiendo rápidamente en la nueva norma para el panorama de amenazas. Las amenazas se propagan rápidamente, para una ventana corta, para infligir el máximo daño. Ransomware es la amenaza de elección tanto por su ganancia monetaria como por su naturaleza destructiva. Siempre que haya dinero o destrucción que hacer, estas amenazas continuarán.
Esta amenaza también amplifica otra área clave que debe abordarse, la educación del usuario. En este ataque, el usuario debe facilitar la infección inicial. Si un usuario no ayuda con el proceso instalando la actualización flash, sería benigno y no causaría la devastación que tiene en toda la región. Una vez que un usuario facilita la infección inicial, el malware aprovecha los métodos existentes, como SMB, para propagarse por la red sin interacción del usuario
COBERTURA
Advanced Malware Protection ( AMP ) es ideal para evitar la ejecución del malware utilizado por estos actores de amenazas.
El escaneo web CWS o WSA evita el acceso a sitios web maliciosos y detecta el malware utilizado en estos ataques.
Los dispositivos de seguridad de red como NGFW , NGIPS y Meraki MX pueden detectar actividad maliciosa asociada con esta amenaza.
INDICADORES DE COMPROMISO
Hashes (SHA256)
Cuentagotas:
• 630325cac09ac3fab908f903e3b00d0dadd5fdaa0875ed8496fcbb97a558d0da
Carga útil:
• 8ebc97e05c8e1073bda2efb6f4d00ad7e789260afa2c276f0c72740b838a0a93 C: \ Windows \ dispci.exe (cliente diskcryptor)
• 682ADCB55FE4649F7B22505A54A9DBC454B4090FC2BB84AF7DB5B0908F3B7806 C: \ Windows \ cscc.dat (x32 diskcryptor drv)
• 0b2f863f4119dc88a22cc97c0a136c88a0127cb026751303b045f7322a8972f6 C: \ Windows \ cscc.dat (x64 diskcryptor drv)
• 579FD8A0385482FB4C789561A30B09F25671E86422F40EF5CCA2036B28F99648 C: \ Windows \ infpub.dat
• 2f8c54f9fa8e47596a3beff0031f85360e56840c77f71c6a573ace6f46412035 (mimikatz-like x86)
• 301b905eb98d8d6bb559c04bbda26628a942b2c4107c07a02e8f753bdcfe347c (mimikatz-like x64)
Nombres de tareas programadas
• viserion_
• Rhaegal
• drogon
Dominios
Dominio de distribución:
• 1dnscontrol [.] Com
Rutas de distribución:
• /flash_install.php
• /index.php
Servidor intermediario:
• 185.149.120 [.] 3
Sitios de referencia:
• Argumentiru [.] Com
• Fontanka [.] Ru
• Adblibri [.] Ro
• Spbvoditel [.] Ru
• Grupovo [.] Bg
• www.sinematurk [.] com
Servicio oculto:
• caforssztxqzf2nm [.] cebolla
Biasini, N. (24 de octubre de 2017). Threat Spotlight: Follow the Bad Rabbit. TALOS. Recuperado de http://blog.talosintelligence.com/2017/10/bad-rabbit.html



