¿Qué es la función de sleep en un malware?

Autor: | Última modificación: 18 de abril de 2024 | Tiempo de Lectura: 3 minutos

Algunos de nuestros reconocimientos:

Premios KeepCoding

¿Sabes qué es la función de sleep en un malware y por qué se utiliza en ciberataques? Los malwares de la actualidad son programas elaborados y complejos. Además de ejecutar tareas altamente perjudiciales para los sistemas, cuentan con métodos para evadir las medidas más comunes de ciberseguridad. Por eso, a la hora de analizar un malware es necesario conocer las técnicas avanzadas de desarrollo que se usan actualmente para crearlos.

Análisis de malware

En el proceso de análisis de un malware, existen tres etapas fundamentales: el análisis estático, el análisis dinámico y la ingeniería inversa. El análisis estático se refiere al estudio del código malicioso, sin necesidad de ejecutarlo y, por ende, sin correr el riesgo de una infección. En cambio, el análisis dinámico se refiere al estudio del malware en ejecución. La ingeniería inversa es similar, pero el malware se ejecuta paso a paso, con código ensamblado, con el fin de descubrir cómo se construyó.

En este post, hablaremos sobre una técnica utilizada por los desarrolladores de malware con el fin de evadir y superar la fase de análisis dinámico del programa. El análisis dinámico, que implica la ejecución del malware, se realiza en entornos virtuales conocidos como sandbox o cajas de arena. Algunos programas maliciosos, sobre todo los más elaborados, cuentan con métodos para detectar e intentar evitar las sandbox.

Estas técnicas de desarrollo de malware se conocen como métodos antisandbox y, a continuación, te explicaremos uno de los más comunes: la función de sleep en un malware.

¿Qué es la función de sleep en un malware?

La función de sleep en un malware consiste en desactivar su funcionamiento totalmente durante un tiempo, antes de ser ejecutado. Este método se utiliza para evadir el estudio del malware en entornos virtuales por varios motivos.

En primer lugar, algunos estudios de sandbox (principalmente aquellos que se hacen de forma automática) toman muy poco tiempo. De hecho, muchos de ellos duran apenas un par de minutos. Estos sistemas, por medio de la función de sleep en un malware, son realmente fáciles de evadir.

Ahora bien, no todos los análisis dinámicos se ejecutan de forma automática. En gran parte de los casos, se hacen de forma manual. Entonces, la función de sleep de un malware también debe durar lo suficiente como para evadir exámenes manuales en entornos virtuales.

¿Cómo contrarrestar la función de sleep en un malware?

🔴 ¿Quieres entrar de lleno a la Ciberseguridad? 🔴

Descubre el Ciberseguridad Full Stack Bootcamp de KeepCoding. La formación más completa del mercado y con empleabilidad garantizada

👉 Prueba gratis el Bootcamp en Ciberseguridad por una semana

La función de sleep en un malware es uno de los métodos antisandbox complejos más comunes. Se define como complejo, debido a que requiere de una serie de procesos de programación, pero a la vez es fácil de identificar, ya que es una característica usual en los malwares.

Para desactivar la función de sleep en un malware, los analistas pueden adelantar la hora y la fecha de la máquina virtual hasta encontrar el punto en el que el malware se despierta. Usualmente, este tiempo suele tener una duración de 20 minutos en promedio, que es suficiente para, en general, ganarse la confianza de los programas antivirus.

A pesar de esto, también se pueden encontrar funciones de sleep que duren mucho más tiempo o, incluso, algunas variaciones de la técnica que le permiten al malware despertarse solo ciertos días y a ciertas horas. Esta dilatación del tiempo de análisis es útil para los ciberatacantes, pues retrasa el trabajo de quienes buscan soluciones de seguridad.

Variaciones de la función de sleep

La función de sleep en un malware es altamente común, pero por esa razón suele detectarse fácilmente en el análisis. No obstante, existen algunas variaciones que pueden ser más difíciles de identificar en un entorno virtual. A continuación, hablaremos sobre dos de ellas:

  • Función de delay o dilatación: si bien con la función de sleep un malware queda totalmente desactivado por un tiempo, con la función de delay el programa ejecuta acciones neutrales o beneficiosas para el sistema, con el objetivo de pasar desapercibido ante los análisis en sandbox y con programas de antivirus.
  • Timing attack: se trata de una función de sleep avanzada, pues le indica al malware qué días y a qué horas debe despertarse para ejecutar sus tareas maliciosas. Algunos malwares, para robar datos de organizaciones y usuarios, funcionan en altas horas de la noche o fines de semana, para actuar a sus anchas dentro de los sistemas.

Al mismo tiempo que realizan estas funciones antianálisis, es posible que los malwares realicen pruebas en el equipo con el fin de saber si el entorno de ejecución es una máquina virtual.

¿Cómo aprender más?

Ya has aprendido qué es la función de sleep en un malware y por qué se utiliza en el desarrollo de este tipo de software. Para continuar formándote y ser un experto seguridad informática, es el momento de echarle un vistazo a nuestro Bootcamp en Ciberseguridad. ¡Reserva tu plazza ahora y especialízate en solo 7 meses!

Posts Relacionados

¡CONVOCATORIA ABIERTA!

Ciberseguridad

Full Stack Bootcamp

Clases en Directo | Profesores en Activo | Temario 100% actualizado