Elusive Malware Adventures Part II: Scripts VBA ocultos

Elusive Malware Adventures Part II: Scripts VBA ocultos

Este artículo es parte de la serie Fileless Malware. Todas las demás partes de la serie:

soy fan del sitio análisis híbrido (análisis híbrido, en adelante HA). Este es un tipo de zoológico de malware donde puedes observar de forma segura "depredadores" salvajes desde una distancia segura sin ser atacado. HA ejecuta malware en entornos seguros, registra llamadas al sistema, archivos generados y tráfico de Internet, y le brinda todos estos resultados para cada muestra que analiza. Por lo tanto, no puede perder su tiempo y esfuerzo resolviendo el código ofuscado usted mismo, pero comprenda de inmediato todas las intenciones de los piratas informáticos.

Los ejemplos de HA que me llamaron la atención utilizan JavaScript codificado o scripts de Visual Basic para aplicaciones (VBA) incrustados como macros en documentos de Word o Excel y adjuntos a correos electrónicos de phishing. Cuando se abren, estas macros inician una sesión de PowerShell en la computadora de la víctima. Los piratas informáticos suelen enviar un flujo de comandos codificado en Base64 a PowerShell. Todo esto se hace para que el ataque sea difícil de detectar mediante filtros web y software antivirus que respondan a ciertas palabras clave.
Afortunadamente, HA decodifica automáticamente Base64 e inmediatamente muestra todo en una forma legible. Esencialmente, no tiene que concentrarse en cómo funcionan estos scripts, ya que podrá ver el resultado completo de los comandos para ejecutar procesos en la sección HA correspondiente. Vea el ejemplo a continuación:

Elusive Malware Adventures Part II: Scripts VBA ocultos

El análisis híbrido intercepta los comandos codificados en Base64 enviados a PowerShell:

Elusive Malware Adventures Part II: Scripts VBA ocultos

... y luego los decodifica por ti. #por arte de magia

В Publicación anterior Creé mi propio contenedor de JavaScript ligeramente ofuscado para ejecutar una sesión de PowerShell. Entonces, mi secuencia de comandos, como muchos programas maliciosos basados ​​en PowerShell, descarga la siguiente secuencia de comandos de PowerShell desde un sitio web remoto. Luego, como ejemplo, descargué un PS inofensivo que imprimía un mensaje en la pantalla. Pero los tiempos están cambiando, y ahora propongo complicar el escenario.

PowerShell Empire y Reverse Shell

Uno de los propósitos de este ejercicio es mostrar cuán (relativamente) fácil es para un pirata informático eludir las defensas perimetrales clásicas y los antivirus. Si un bloguero de TI sin conocimientos de programación, como yo, en un par de tardes puede crear malware indetectable (totalmente desapercibido, FUD), ¡imagine las posibilidades de un joven hacker interesado!

Y si usted es una persona de seguridad de TI, pero su gerente no comprende las implicaciones potenciales de estas amenazas, simplemente muéstrele este artículo.

Los piratas informáticos sueñan con obtener acceso directo a la computadora portátil o al servidor de la víctima. Esto es muy fácil de hacer: todo lo que necesita un hacker es conseguir algunos archivos confidenciales en la computadora portátil del director ejecutivo.

de alguna manera yo ya писал sobre el tiempo de ejecución de posproducción de PowerShell Empire. Recordemos qué es.

Es esencialmente una herramienta de prueba de penetración basada en PowerShell que, entre muchas otras características, facilita la ejecución de un shell inverso. Puedes explorarlo con más detalle en Sitio de inicio de PSE.

Hagamos un pequeño experimento. Configuré un entorno seguro para la prueba de malware en la nube de Amazon Web Services. Puede seguir mi ejemplo para mostrar de forma rápida y segura un ejemplo práctico de esta vulnerabilidad (y no ser despedido por ejecutar virus dentro del perímetro de la empresa).

Si ejecuta la consola PowerShell Empire, verá algo como esto:

Elusive Malware Adventures Part II: Scripts VBA ocultos

Primero, inicia el proceso de escucha en su máquina hacker. Ingrese el comando "oyente" y especifique la dirección IP de su sistema usando "establecer host". Luego inicie el proceso de escucha con el comando "ejecutar" (abajo). Por lo tanto, por su parte, comenzará a esperar una conexión de red desde un shell remoto:

Elusive Malware Adventures Part II: Scripts VBA ocultos

Por otro lado, deberá generar un código de agente ingresando el comando "lanzador" (ver más abajo). Esto generará el código de PowerShell para el agente remoto. Tenga en cuenta que está codificado en Base64 y representa la segunda fase de la carga útil. En otras palabras, mi código JavaScript ahora hará que este agente ejecute PowerShell en lugar de mostrar texto en la pantalla de manera inofensiva y se conectará a nuestro servidor PSE remoto para ejecutar el shell inverso.

Elusive Malware Adventures Part II: Scripts VBA ocultos
Magia de concha inversa. Este comando codificado de PowerShell se conectará a mi oyente e iniciará un shell remoto.

Para mostrarles este experimento, asumí el papel de una víctima inocente y abrí Evil.doc, ejecutando así nuestro JavaScript. ¿Recuerdas la primera parte? PowerShell se configuró para que no aparezca, por lo que la víctima no notará nada fuera de lo común. Sin embargo, si abre el Administrador de tareas de Windows, verá un proceso de PowerShell en segundo plano, que aún no causará ninguna alarma para la mayoría. Porque es PowerShell normal, ¿no?

Elusive Malware Adventures Part II: Scripts VBA ocultos

Ahora, cuando ejecute Evil.doc, un proceso en segundo plano oculto se conectará al servidor que ejecuta PowerShell Empire. Poniéndome el sombrero blanco de hacker-penster, volví a la consola de PowerShell Empire y ahora veo un mensaje que indica que mi agente remoto está activo.

Elusive Malware Adventures Part II: Scripts VBA ocultos

Luego escribí el comando "interactuar" para abrir un shell en PSE, ¡y aquí estoy! En resumen, pirateé el servidor de Taco que configuré hace algún tiempo.

Elusive Malware Adventures Part II: Scripts VBA ocultos

Lo que acabo de demostrar no requiere tanto trabajo de su parte. Puede hacer todo esto fácilmente en un descanso para almorzar durante una o dos horas para mejorar su conocimiento de la seguridad de la información. También es una excelente manera de comprender cómo los piratas informáticos eluden las defensas perimetrales de seguridad externas y se cuelan en sus sistemas.

Los administradores de TI que creen que han construido una defensa impenetrable contra cualquier tipo de intrusión probablemente también lo encontrarán educativo, bueno, si puede convencerlos de que se sienten a su lado el tiempo suficiente, por supuesto.

De vuelta a la realidad

Como esperaba, el truco real, invisible para el usuario promedio, es solo una variación de lo que acabo de describir. Para recopilar material para la próxima publicación, comencé a buscar una muestra en HA, que funciona de la misma manera que mi ejemplo inventado. Y no tuve que buscarlo durante mucho tiempo: hay muchas opciones para tal técnica de ataque en el sitio.

El malware que terminé encontrando en HA es un script VBA que estaba incrustado en un documento de Word. Es decir, ni siquiera necesito falsificar la extensión doc, este malware es realmente el documento de Microsoft Word de aspecto más común. En caso de que te lo estés preguntando, elegí este patrón llamado rfq.doc.

Rápidamente aprendí que a menudo no se pueden extraer scripts VBA maliciosos directamente de un documento. Los piratas informáticos los comprimen y ocultan, y no son visibles en las herramientas de macro integradas de Word. Necesitará una herramienta especial para extraerlo. Por suerte encontré un escáner oficinamalescáner Frank Balduino. gracias franco

Con esta herramienta, pude extraer un código VBA altamente ofuscado. Se veía algo como esto:

Elusive Malware Adventures Part II: Scripts VBA ocultos
La ofuscación fue realizada por profesionales en su campo. ¡Estaba impresionado!

Los atacantes son realmente buenos para ofuscar el código, no como mis esfuerzos para crear Evil.doc. De acuerdo, en la siguiente parte, obtendremos nuestros depuradores de VBA, profundizaremos un poco más en este código y compararemos nuestro análisis con los resultados de HA.

Fuente: habr.com

Añadir un comentario