Diseño digital con el texto "Malware Sin Archivos: Qué Son y Cómo Defenderse" superpuesto sobre una figura encapuchada y código binario, representando la amenaza del malware "invisible".
Los virus "invisibles" son una amenaza creciente. Aprende qué es el malware sin archivos y cómo proteger tu sistema.

Malware Sin Archivos: Qué Son y Cómo Defenderse de los Virus “invisibles”

Una nueva amenaza está afectando a grandes empresas e instituciones financieras: el malware sin archivos (o Fileless Malware, en inglés). Este tipo de malware no infecta archivos, sino que reside en la RAM del PC víctima. A continuación, te explicamos cómo identificarlos y protegerte.

Las nuevas tipologías de ataque más utilizadas hoy en día usan los llamados malware sin archivos, y no implican la instalación de ningún archivo en el disco duro. Por lo tanto, está claro que los antivirus tradicionales no pueden detectar la amenaza y que los atacantes están utilizando cada vez más estas tecnologías.

Malware sin archivos: invisibles para los antivirus

Recordemos brevemente cómo funciona un antivirus:

  1. El atacante coloca archivos en el disco duro de la víctima.
  2. El antivirus analiza los archivos maliciosos.
  3. Si el antivirus identifica el malware, lo pone en cuarentena o lo elimina, manteniendo el PC seguro.
Pantalla que muestra el texto "FILELESS ATTACK" en color naranja brillante sobre un fondo de código binario gris oscuro, ilustrando el concepto de un ataque de malware sin archivos.
El “ataque sin archivos” representa una amenaza sigilosa en ciberseguridad. Comprende este concepto clave para proteger tu información.

Si los primeros malware provocaban caos y síntomas evidentes en los ordenadores comprometidos, fácilmente detectables por los antivirus, hoy en día las operaciones se realizan de forma extremadamente silenciosa y difícilmente detectable, con la complicidad de lo que “habita” en el ordenador. Los hackers utilizan los recursos y las herramientas presentes de forma nativa en el sistema operativo como herramientas de ataque: casi siempre estos componentes aparecen en las listas blancas del antivirus.

Este enfoque hace extremadamente complejo, para quien se defiende, bloquear de manera consistente y segura todos los softwares que dan al atacante la posibilidad de evadir los sistemas de protección y esconderse en el sistema. El hacker puede convertirse en un fantasma que se mueve dentro del ordenador, y posteriormente de la red, de manera silenciosa, sin activar ninguna alarma, ya que utiliza software totalmente lícito y de confianza.

Posteriormente, precisamente desde esta puerta trasera abierta, será posible infectar el ordenador con malware más complejo, sin que la máquina dé señales. Otra característica es que el código infectado se propaga de forma autónoma, utilizando el componente en la lista blanca como escudo frente al antivirus.

Ataques Fileless Malware cada vez más comunes

Los ataques llevados a cabo con malware sin archivos, sin embargo, no son una novedad absoluta, ya que aparecieron en 2001 con Code Red y en 2003 con SQL Slammer, un gusano que podía causar denegación de servicio (ataques DoS o DDoS) ralentizando significativamente el tráfico de internet del host involucrado, aprovechando un desbordamiento de búfer de SQL Server y Desktop Engine.

Los hackers prefieren los ataques sin archivos porque:

  • Son extremadamente silenciosos, operan directamente en memoria o en el registro.
  • No son persistentes en sí mismos y hacen extremadamente complicadas las actividades forenses.
  • No requieren la instalación de herramientas externas, sino que utilizan lo que está disponible de forma nativa.
  • Se pueden ejecutar de forma sencilla porque están presentes en frameworks disponibles libremente en el mercado, como Cobalt Strike, Metasploit y Empire. Pensemos específicamente en Meterpreter, disponible en Metasploit Framework. Encarna perfectamente el tipo de carga útil sin archivos. Cabe destacar que todos estos frameworks están diseñados y propuestos para actividades de hacking ético, pero a menudo también son utilizados por ciberdelincuentes.
Diagrama de flujo hexagonal que ilustra el "Proceso de Ataque de Malware sin Archivo" paso a paso, desde un correo de spam hasta la exfiltración de datos, mostrando el rol de PowerShell y Flash.
Descubre el sigiloso proceso de un ataque de malware sin archivos, desde la infección inicial hasta la exfiltración de datos.

Anatomía de un ataque con un malware sin archivos

Un ataque informático llevado a cabo mediante malware sin archivos se produce en dos fases:

Fase 1: Compromiso inicial del sistema

Fase 2: Post Explotación

  • Escalada de privilegios:
  • Ejecución de carga útil:
    • Reflective DLL Injection
    • Process Hollowing
  • Persistencia:
    • Colocación de scripts maliciosos en el registro del sistema
    • Explotación de GPO
    • Explotación de Windows Management Instrumentation
    • Movimientos laterales mediante herramientas de acceso remoto y ejecución de software

¿Cuáles son los tipos de ataque sin archivos?

Los ataques sin archivos se pueden clasificar de la siguiente manera:

  • En memoria: mediante exploits, los atacantes pueden ejecutar código malicioso directamente en memoria.
  • Métodos de persistencia sin archivos: el atacante obtiene la persistencia en los sistemas comprometidos cargando una carga útil en memoria. La infección puede hacerse persistente incluso después de reiniciar Windows, mediante scripts o tareas programadas específicas.
  • Herramientas de doble uso: el atacante utiliza herramientas ya presentes en Windows con fines maliciosos.
  • Ataque de archivos no ejecutables portátiles (PE): tipo de ataque de doble uso en el que se utilizan tanto un script como una herramienta legítima, como PowerShell o WScript.

Analicemos cada uno en detalle.

Ataques en memoria

Los ataques solo en memoria fueron el primer tipo de ataque sin archivos en extenderse, con los gusanos Code Red y SQL Slammer. Ambos gusanos aprovechaban las vulnerabilidades de los servicios de Windows para ejecutar su carga útil directamente en memoria. Un ejemplo más reciente es EternalBlue, un exploit utilizado para desplegar la puerta trasera DoublePulsar, utilizada por el ransomware WannaCry. El atacante explota remotamente una vulnerabilidad, obtiene una shell y, por lo tanto, puede operar con privilegios administrativos sin escribir nada en el disco. Un comportamiento similar se ha detectado también en el exploit kit Angler, capaz de ejecutar el troyano Snifula directamente en memoria.

Las infecciones provocadas por ataques en memoria no son persistentes y un reinicio del PC provocaría una desinfección. Sin embargo, el atacante a menudo no está interesado en mantener la persistencia, por dos razones:

  • Un sistema que se ve comprometido no está parcheado y probablemente no lo estará en breve, por lo que la reinfección es extremadamente sencilla.
  • Los sistemas críticos, es decir, los más interesantes, rara vez se reinician, haciendo que el tiempo de persistencia sea suficiente para lograr sus objetivos.

Ataques con métodos de persistencia sin archivos

Se dividen en subcategorías adicionales:

  • Residente en el registro: un método comúnmente utilizado en los ataques sin archivos es inyectar código dentro del registro de Windows.

La mayoría de estas incursiones comienzan mediante un archivo .doc, .lnk, .pdf o un enlace contenido en un mensaje de correo electrónico; cuando el usuario abre el archivo adjunto o hace clic en el enlace, el malware escribe la carga útil dentro del registro de Windows y luego desaparece.

La carga útil generalmente contiene un script que se enmascara eliminando los privilegios de acceso del usuario o con técnicas estándar de ofuscación. El script invoca un software legítimo de Windows, como por ejemplo PowerShell, para ejecutar e insertar código dentro de procesos estándar de Windows (regsvr32, dllhost, etc.), de modo que el código en sí no pueda ser detectado por los productos antivirus: de hecho, no hay archivos infectados o procesos maliciosos.

  • Windows Management Instrumentation (WMI): WMI es una herramienta extremadamente útil y cómoda para los administradores de red. Permite instalar actualizaciones, ejecutar, copiar o eliminar archivos, cambiar valores de registro, recopilar información sobre el sistema y tiene acceso a todos los recursos de la máquina. WMI está presente de forma nativa en las versiones recientes de Windows.

En manos maliciosas, la comodidad y la potencia de esta herramienta pueden volverse extremadamente peligrosas, ya que un atacante podría utilizarla de la misma manera que un administrador del sistema, ejecutando código malicioso.

WMI puede, por lo tanto, verse como el componente esencial en el que se basan los ataques sin agente mediante malware sin archivos. La ejecución del código malicioso se realiza sin complicaciones particulares, de forma instantánea y silenciosa: WMI está en la lista blanca del sistema de protección de endpoints. WMI puede claramente deshabilitarse, pero no desinstalarse; sin embargo, tal operación no puede decidirse a la ligera, ya que limitaría significativamente las capacidades del propio sistema operativo (por ejemplo, falta de ejecución de Windows Update).

Un atacante puede obtener la persistencia en el sistema creando, a título de ejemplo, un filtro para un ejemplo específico que, al verificarse, inicie un script confeccionado a medida.

Pensemos en algo muy simple, como un trabajo cron en Unix. En este escenario, son necesarias tres clases WMI:

  1. Filter,
  2. Consumer,
  3. FilterToConsumer.

La carga útil ejecutada suele ser un script de PowerShell. PowerShell es un lenguaje de scripting nativo de Windows que permite acceder a las API y se utiliza habitualmente para la automatización de tareas de diversa naturaleza. PowerShell tiene acceso completo a numerosos componentes del sistema operativo, incluido .NET.

De ello se deduce que se pueden ejecutar softwares completos a través de PowerShell. Esto permite a un atacante introducir código, cifrado u ofuscado, dentro de PowerShell y ejecutarlo directamente desde la memoria. Esta táctica lleva a que los softwares de protección de endpoints estándar no detecten las acciones maliciosas.

Sin embargo, lo que transforma a PowerShell en una herramienta formidable para los atacantes es el hecho de que puede ejecutarse de forma remota mediante WinRM, creando un acceso directo a través del Firewall de Windows del cliente comprometido. El hacker puede, por lo tanto, ejecutar scripts o simplemente iniciar una sesión interactiva de PowerShell, con acceso administrativo al ordenador. En este caso tampoco se instala ningún tipo de malware.

  • Tarea programada: una tarea programada se puede crear para:
    • Ejecutar comandos en PowerShell
    • Realizar una escalada de privilegios, evitando el UAC
    • Las tareas programadas se ejecutan de manera que el atacante pueda mantener la persistencia incluso en caso de reiniciar el ordenador
  • Objetos de directiva de grupo (GPO): los GPO se pueden utilizar como punto de carga para puertas traseras, creando o actualizando el valor de una clave de registro con un script de PowerShell como valor. Este tipo de ataque no está muy extendido, ya que el uso de GPO es poco frecuente en ordenadores domésticos.

Ataques con herramientas de doble uso

El uso de aplicaciones del sistema o herramientas nativas con fines maliciosos a menudo se incluye en el llamado “live off the land“. El atacante puede realizar sus acciones basándose únicamente en lo que ofrece la naturaleza: el sistema operativo.

Por herramientas de doble uso se entiende, por lo tanto, el uso con fines maliciosos de aplicaciones legítimas. A título de ejemplo, podemos mencionar:

  • notepad.exe utilizable para modificar o leer archivos
  • comandos ejecutados mediante PowerShell para modificar los permisos de los usuarios

Un atacante también podría actuar descargando e instalando herramientas adicionales legítimas que no estén presentes de forma predeterminada en el sistema operativo, como por ejemplo PsExec. La principal ventaja de la técnica de herramientas de doble uso reside en el hecho de que todos los softwares utilizados durante las operaciones de acceso y posible exfiltración son completamente lícitos desde el punto de vista de los sistemas de protección de endpoints, que no detectan la amenaza, dejando el objetivo expuesto.

Las herramientas de doble uso se pueden clasificar en función de su uso:

  • Reconocimiento de la red interna (whoami, net, ipconfig): muestran información sobre el entorno al que está conectado el objetivo.
  • Recopilación de credenciales (Mimkatz, pwdump): recopilan credenciales de acceso a los sistemas objetivo.
  • Movimiento lateral (RDP, PowerShell, PsExec): permiten realizar movimientos laterales y realizar acciones de diversa naturaleza para obtener persistencia o acceso a datos específicos.
  • Exfiltración de datos (FTP, PuTTY, PowerShell): garantizan al atacante la posibilidad de exportar datos fuera del ordenador comprometido.
  • Puerta trasera de reserva (RDP, servidor Telnet): habilita una puerta trasera secundaria que se utilizará en caso de que el punto de acceso principal se vuelva inalcanzable.

Ataques de archivos no ejecutables portátiles (PE)

Un ataque de archivo no PE implica una herramienta legítima y un script, generalmente PowerShell, CScript o WScript, pertenecientes a la categoría de herramientas de doble uso. El troyano Trojan.PPDropper es un ejemplo de no PE: ataca archivos de PowerPoint utilizando un script de PowerShell.

Los archivos no PE suelen distribuirse en campañas de ingeniería social, mediante el envío de correos electrónicos con archivos adjuntos maliciosos o la vulneración de sitios web.

Los Exploit Kits en los ataques con malware sin archivos

En cualquier ataque mediante malware sin archivos que tenga éxito, el exploit kit tiene un papel fundamental. Se trata de un software diseñado para detectar y explotar (generalmente de forma semiautomática) vulnerabilidades, fallos o debilidades de los sistemas y las aplicaciones, con el objetivo de obtener acceso a los ordenadores afectados.

Los exploit kits se han convertido, a lo largo de los años, en un tipo de productos extremadamente difundidos y disponibles como EKaaS (exploit kits como servicio). Las habilidades técnicas necesarias para aprovechar las capacidades del producto son menores, ya que el productor está interesado en simplificar las operaciones de gestión, para tener un parque de clientes más amplio. Esto ha llevado a la entrada en el mercado de ciberdelincuentes de todo tipo, aumentando exponencialmente el número de ataques que se realizan diariamente.

Los productores de malware son, además, extremadamente eficientes y logran introducir en su oferta decenas de millones de nuevos malware cada año.

El exploit kit es la herramienta que permite la Fase 1 de los ataques sin archivos, es decir, el compromiso inicial del sistema.

Entre los exploit kits más difundidos en la actualidad, podemos mencionar:

  • RIG-v EK: sin duda, es el más popular en la actualidad y se utiliza en diversos ámbitos, desde troyanos bancarios hasta ransomware y mineros de criptomonedas.
  • GrandSoft EK: se trata de un antiguo exploit kit que ha reaparecido en el mercado y se ha utilizado para distribuir el ransomware GrandCrab y mineros de diversa índole.
  • GreenFlash Sundown: exploit kit que utiliza patrones URI que no se pueden bloquear sin causar complicaciones en el uso diario de los ordenadores. Utiliza Flash Player para ocultar sus actividades y contiene el zero day que se utilizó para la distribución del ransomware Hermes.

El escenario actual: el malware sin archivos Rozena

Rozena es un troyano conocido desde 2015, que ha evolucionado hasta volver a aparecer a finales de junio de 2018 en una versión totalmente actualizada, mejorada y que utiliza técnicas de ataque sin archivos.

La versión 2015 de Rozena (también conocida como Win32/Bedep) estaba compuesta por DLL que se entregaban a los sistemas objetivo mediante el exploit kit Angler. Estas DLL podían instalarse sin crear ningún archivo, cargarse directamente en memoria, modificando el registro de Windows. Tras estas modificaciones, Rozena/Bedep lanzaba explorer.exe inyectando código malicioso dentro del proceso. Se establecía entonces una conexión con un servidor de comando y control, con el objetivo de descargar otro malware y recopilar información sobre el ordenador.

La versión 2018 de Rozena se difunde a través de técnicas de ingeniería social, distribuida mediante correo electrónico o páginas web comprometidas, a menudo generadas utilizando exploit kits, y se presenta como un ejecutable con el icono de Microsoft Word, para inducir al usuario a pensar que se trata de un documento legítimo.

Hoy en día, el malware utiliza scripts ejecutados mediante PowerShell, sin escribir ningún archivo en el disco.

En el curso de las pruebas realizadas por los laboratorios GDATA, se ha descubierto que la ejecución de PowerShell se oculta a los ojos de los usuarios con las siguientes técnicas de ofuscación:

  • -noniNtE: sintaxis para -NonInteractive. Se utiliza para no mostrar el indicador de PowerShell al usuario.
  • -nOlOG: sintaxis para -NoLogo. Oculta los banners de copyright cuando se ejecuta PowerShell.
  • -NOpROFI: sintaxis para -NoProfile. No se carga el perfil de PowerShell.
  • -windOwsTY HiddeN: sintaxis para -WindowStyle Hidden. Como en el caso anterior, impide que se visualice PowerShell durante la ejecución.
  • -ExeCUTIonPOlic BypaSS: sintaxis para -ExecutionPolicy bypass. Establece la política de ejecución predeterminada para la sesión.

Una vez que el ataque ha tenido éxito, el ordenador comprometido intenta abrir una conexión reverse_tcp con el servidor de comando, gestionado por el atacante, que está a la escucha en un puerto definido dentro de la carga útil. En el caso de los laboratorios GDATA, fue necesario, para verificar las capacidades de Rozena, crear un comando y control utilizando Metasploit Framework y, en concreto, exploit/multi/handler.

El módulo exploit/multi/handler es simplemente un controlador de carga útil genérico, es decir, un stub que puede proporcionar todas las funciones del sistema de explotación Metasploit incluso a exploits que se han ejecutado fuera del framework.

Al estar el ordenador infectado conectado al servidor de comando y control, es posible, mediante meterpreter, ejecutar una serie de instrucciones que proporcionan acceso completo al ciberdelincuente.

Cómo prevenir los ataques de malware sin archivos

Un hombre de traje extendiendo su mano frente a un fondo de código binario rojo y blanco, con la palabra "MALWARE" en el centro, simbolizando la protección contra ataques de software malicioso.
Detén el malware más evasivo. Descubre estrategias clave para prevenir ataques de malware sin archivos y mantener tu seguridad informática.

Como se ha indicado, el malware sin archivos se presenta en numerosas variantes y, por lo tanto, es difícil encontrar una solución siempre válida.

Las directrices generales son, sin embargo, las de mantener los sistemas siempre actualizados, especialmente con la instalación de parches de seguridad. Estas actualizaciones pueden eliminar o limitar la superficie de ataque para un malintencionado que, recordemos, utiliza el método “live off the land“. Menos software vulnerable, menor riesgo.

Utilizar siempre el sentido común durante el tratamiento del correo electrónico y durante la navegación en internet. El malware sin archivos, como en el caso de Rozena, a menudo se entrega con técnicas de ingeniería social. Prestar atención y consultar al departamento de TI antes de proceder a abrir un archivo adjunto contenido en un correo electrónico sospechoso o aceptar la ejecución de software en un sitio web de dudosa reputación.

No es posible deshabilitar PowerShell, pero se puede configurar el modo de lenguaje restringido. De este modo, PowerShell seguirá pudiendo admitir las tareas administrativas diarias, pero tendrá acceso restringido a aquellos elementos sensibles que podrían utilizarse para invocar las API de Windows.

También es posible evaluar la activación de AppLocker, junto con PowerShell. AppLocker se diferencia conceptualmente de las políticas de restricción de software, ya que la regla de acción predeterminada es denegar.

AppLocker permite controlar de forma más granular los permisos para grupos o incluso para un solo usuario, controlando archivos ejecutables, scripts, archivos de instalación y DLL.

Mi Carro Close (×)

Tu carrito está vacío
Ver tienda