¿Qué es el malware sin archivos?

El malware sin archivos es un tipo de software malicioso que utiliza programas legítimos para infectar un equipo. No depende de archivos y no deja rastro, por lo que resulta difícil de detectar y eliminar. Los ciberdelincuentes actuales conocen las estrategias que utilizan las organizaciones para intentar bloquear sus ataques y crean malware dirigido cada vez más sofisticado para eludir las defensas. Es una carrera contrarreloj, ya que las técnicas de hacking más eficaces suelen ser las más nuevas. El malware sin archivos ha conseguido eludir todas las soluciones de seguridad, excepto las más sofisticadas.

Apareció en 2017 como un tipo de ataque común, pero muchos de estos métodos de ataque existen desde hace ya tiempo. Frodo, Number of the Beast y The Dark Avenger fueron todos ellos ejemplos precoces de este tipo de malware. Los ataques sin archivos más recientes y de mayor repercusión incluyen el ataque al Comité Nacional Demócrata y la filtración de Equifax.

Lo que hace que las infecciones sin archivos sean tan insidiosas es también lo que las hace tan eficaces. Hay quien dice que el malware sin archivos es "indetectable". Esto no es literalmente cierto, solo significa que los ataques sin archivos a menudo son indetectables para los antivirus, las listas blancas y otras soluciones de seguridad de endpoints tradicionales. De hecho, el Ponemon Institute afirma que los ataques sin archivos tienen 10 veces más probabilidades de tener éxito que los ataques basados en archivos.

¿Cómo se produce un ataque sin archivos?

Los ataques sin archivos se incluyen en la categoría más amplia de los ataques de características de baja detectabilidad (LOC), un tipo de ataque sigiloso que elude la detección por parte de la mayoría de las soluciones de seguridad y dificulta las tareas de análisis forense. Si bien no se considera un virus tradicional, el malware sin archivos funciona de manera similar: actúa en la memoria. Sin almacenarse en un archivo ni instalarse directamente en un equipo, las infecciones sin archivos van directamente a la memoria y el contenido malicioso nunca afecta al disco duro. Muchos ataques LOC se aprovechan de Microsoft Windows PowerShell, una herramienta legítima y útil utilizada por los administradores para la automatización de tareas y la gestión de la configuración. PowerShell consta de un shell de línea de comandos y el lenguaje de scripting asociado, lo que proporciona a los adversarios acceso a casi todo en Windows.

Example of a fileless attack kill chain

Figura 1. Ejemplo de una cadena de ataque (kill chain) de un ataque sin archivos.

La figura anterior muestra cómo puede producirse un ataque sin archivos. Como la mayoría de los ataques avanzados actuales, los ataques sin archivos a menudo utilizan la ingeniería social para hacer que los usuarios hagan clic en un enlace o datos adjuntos en un correo electrónico de phishing. Los ataques sin archivos se utilizan generalmente para moverse lateralmente, lo que significa que se dirigen de un dispositivo a otro con el objetivo de obtener derechos de acceso a datos valiosos en toda la red de la empresa. Para evitar sospechas, el malware sin archivos se introduce en los recovecos internos de las aplicaciones de confianza incluidas en la lista blanca (como los ejecutables de host de scripts de PowerShell y Windows, como wscript.exe y cscript.exe) o en el sistema operativo para iniciar procesos maliciosos. Estos ataques abusan del modelo de confianza utilizado por las aplicaciones de seguridad para no supervisar los programas en lista blanca.

Lo que es importante tener en cuenta en el caso anterior es que el hacker no necesitó encontrar la manera de evadir las defensas antivirus y antimalware. La mayoría de los sensores automatizados no pueden detectar las alteraciones de la línea de comandos. Un analista capacitado puede identificar estos scripts, pero a menudo no sabe dónde buscar.

¿Cómo puede defenderse de los ataques sin archivos?

A medida que el sector de la ciberseguridad se vuelve más sofisticado a la hora de bloquear exploits, la vida útil de los ataques sin archivos se vuelve cada vez más corta. Una forma de defenderse de las infecciones sin archivos es simplemente mantener el software actualizado. Esto incluye especialmente las aplicaciones de Microsoft y el lanzamiento de la suite Microsoft 365 incluye una mejora de las medidas de seguridad. Microsoft también ha actualizado su paquete de Windows Defender para detectar actividad irregular de PowerShell.

La verdadera clave para contrarrestar con éxito los ataques sin archivos es un enfoque integrado que aborde todo el ciclo de vida de la amenaza. Al disponer de una defensa multicapa, obtiene una ventaja sobre los atacantes ya que puede investigar todas las fases de una campaña antes, durante y después de un ataque.

Hay dos elementos especialmente importantes:

  • La capacidad de ver y medir lo que está sucediendo: descubrir las técnicas utilizadas por el ataque, supervisar las actividades en PowerShell u otros motores de scripting, acceder a datos de amenazas agregados y obtener visibilidad de las actividades de los usuarios.
  • La capacidad de controlar el estado del sistema de destino: detener procesos arbitrarios, corregir los procesos que forman parte del ataque y aislar los dispositivos infectados.

Interrumpir correctamente los ataques sin archivos requiere un enfoque integral que pueda escalar y ejecutar rápidamente las acciones adecuadas, en el lugar y momento adecuados.

¿Cómo protegerse frente a tipos específicos de amenazas sin archivos?

Nuestros equipos de investigación incluyen a más de 250 investigadores de todo el mundo. Con Trellix, dispondrá de un equipo de expertos que analizarán objetos y comportamientos sospechosos en busca de amenazas maliciosas y desarrollarán herramientas que bloqueen directamente distintas variantes de amenazas sin archivos. Hemos publicado varias firmas que bloquean distintas variantes de amenazas sin archivos. Concretamente:

Amenaza sin archivos: autoinyección reflexiva
La carga reflectante hace referencia a la carga de un ejecutable portátil (PE) desde la memoria y no desde el disco. Un script o función creado expresamente puede cargar de forma refleja un ejecutable portátil sin quedar registrado como un módulo cargado en el proceso y, por tanto, puede realizar acciones sin dejar rastro. PowerShell es una de las aplicaciones más utilizadas para ejecutar estos scripts diseñados. Este evento indica un ataque sin archivos en el que un script de PowerShell intenta inyectar un PE en el propio proceso de PowerShell.

Amenaza sin archivos: autoinyección reflectante de EXE
La carga reflectante hace referencia a la carga de un archivo PE desde la memoria y no desde el disco. Un script o función creado expresamente puede cargar de forma refleja un ejecutable (EXE) sin quedar registrado como un módulo cargado en el proceso y, por tanto, puede realizar acciones sin dejar rastro. PowerShell es una de las aplicaciones más utilizadas para ejecutar estos scripts diseñados. Este evento indica un ataque sin archivos en el que un script de PowerShell intenta inyectar un EXE en el propio proceso de PowerShell.

Amenaza sin archivos: autoinyección reflectante de DLL
La carga reflectante hace referencia a la carga de un archivo PE desde la memoria y no desde el disco. Un script o función creado expresamente puede cargar de forma refleja un archivo DLL sin quedar registrado como un módulo cargado en el proceso y, por tanto, puede realizar acciones sin dejar rastro. PowerShell es una de las aplicaciones más utilizadas para ejecutar estos scripts diseñados. Este evento indica un ataque sin archivos en el que un script de PowerShell intentó inyectar un archivo DLL en un proceso remoto.

Amenaza sin archivos: ejecución de código malicioso mediante la técnica
DotNetToJScriptEste evento indica un intento de ejecutar shellcode malicioso mediante la técnica DotNetToJScript, utilizada por ataques sin archivos prevalentes como CACTUSTORCH. Los vectores de ataque DotNetToJScript permiten la carga y ejecución de ensamblados .NET maliciosos (DLL, EXE, etc.) directamente desde la memoria con la ayuda de bibliotecas .NET expuestas a través de COM. Al igual que con cualquier otra técnica de ataque sin archivos, DotNetToJScript no escribe ninguna parte del archivo DLL o EXE .NET malicioso en el disco duro del equipo.

Explore more Security Awareness topics