Métodos antisandbox

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

Algunos de nuestros reconocimientos:

Premios KeepCoding

¿Sabes qué son los métodos antisandbox en el desarrollo de malware y cómo puedes detectarlos? Los malwares actuales son programas diseñados meticulosamente con el fin de ejecutar tareas perjudiciales en un sistema determinado. Para ello, sus desarrolladores utilizan técnicas que les permitan ejecutar malwares en el ordenador o la red de un objetivo, sin que este sea detectado por los sistemas de ciberseguridad.

Los atacantes modernos saben que el análisis de malware consiste de tres fases:

  • Análisis estático: analiza el código del archivo sin ejecutarlo y, por ende, sin correr el riesgo de infectar un equipo.
  • Análisis dinámico: ejecuta el virus en un entorno virtual controlado y preparado especialmente para ello, para ver cómo funciona.
  • Ingeniería inversa: significa analizar el código del malware en conjunto con su ejecución para examinar el paso a paso de su funcionamiento. Este proceso podría tomar días, semanas o, incluso, meses.

¿Qué es un sandbox?

Los sandbox son entornos virtuales en los cuales puedes ejecutar malwares sin correr el riesgo de infectar un dispositivo real. Estos entornos virtuales están diseñados para simular dispositivos reales, que actúan como máquinas que puedes infectar con ficheros maliciosos y observar cómo funcionan. El problema es que existen numerosos métodos para evadir estos entornos.

Métodos antisandbox

Los métodos antisandbox son un conjunto de mecanismos que se encuentran embebidos en las funciones de un malware, con el fin de determinar si el entorno de ejecución es virtual o real.

Actualmente, cualquier malware que esté bien diseñado ejecuta estos mecanismos para evadir todo tipo de máquinas virtuales. Para esto existen técnicas simples y complejas:

Métodos antisandbox simples

Los métodos sencillos para evadir sandboxes se vinculan principalmente a malas configuraciones o descuidos por parte del analista. Por esta razón, son más fáciles de detectar y se pueden hallar con una simple comprobación.

Algunos datos característicos que identifican los malwares para saber que están siendo ejecutados en un entorno virtua, son especificaciones de la máquina que sean los valores mínimos permitidos por softwares como VirtualBox o VMware, ya que son los más seleccionados. Algunos valores que identifican los malwares son:

  • Número de cores del sistema operativo (mínimo 2).
  • Tamaño del disco duro (mínimo 65 GB).
  • Nombre del disco.
  • Nombres de las carpetas compartidas en red.
  • Nombres de adaptadores virtuales de red.
  • Nombre de la pantalla del equipo.
  • Tamaño de la memoria RAM (mínimo 4GB).
  • Nombre del usuario del sistema.
  • Nombre del hardware del sistema.
  • Número de la BIOS.
  • Nombres de procesos o servicios.
  • Nombres o valores de las claves de los registros.
  • Direcciones MAC determinadas.
  • Directorios específicos.

🔴 ¿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

Algunos adaptadores que si son detectados por un malware, no se ejecutará el fichero son:

  • \\.\VBoxMiniRdrDN
  • \\.\pipe\VoxMiniRdDN
  • \\.\VBoxTrayIPC
  • \\.\pipe\VBoxTrayIPC
  • \\.\HGFS
  • \\.\vmci

Métodos antisandbox complejos

Los métodos antisandbox complejos no se suelen basar en una mera comprobación de datos, como en los métodos anteriores. Estos requieren de una metodología con más código y, sobre todo, más tiempo para llevarlas acabo. Estas técnicas suelen ser comprobaciones duraderas en el tiempo, lo cual permite también detectar al malware.

Timing de la CPU

Conocido también como RDTSC, que consiste en conocer la velocidad con la que un procesador es capaz de ejecutar órdenes. Lo normal es comprobar el timing del equipo con el envío de órdenes a su CPU y, así, verificar su nivel de velocidad.

Time acceleration

Si al enviarle órdenes a la CPU del equipo y medir su velocidad de procesamiento, el malware se da cuenta de que está siendo ejecutado en una sandbox, comienza a comportarse de manera benigna o neutral, conectándose a direcciones IP comunes y corrientes o, sencillamente, no haciendo nada.

Sleep

Uno de los métodos antisandbox más conocidos es el de que el malware «duerma» por un tiempo para evitar los sistemas de antivirus. Sin embargo, este método se volvió en contra de los desarrolladores de malware, porque la característica se convirtió en un claro indicativo de que el programa podría ser un fichero malicioso.

Delay

El delay es parecido al sleep, pero son métodos antisandbox diferentes. El efecto delay consiste en que el malware ejecuta una actividad sin importancia hasta ganarse la confianza de los motores antimalware. También es típico del delay que el virus aproveche esta fase para intentar saber si está en una máquina virtual.

Timing attack

Son malwares que se ejecutan y, por tanto, se despiertan solo ciertos días o a ciertas horas para realizar su actividad maliciosa. Lo que se hace para contrarrestar este tipo de malwares es cambiar la hora del sistema y así poder analizarlos sin problemas. Esto garantiza que se despierten a una hora controlada y, de esta forma, se pueden conocer sus intenciones.

¿Cómo aprender más?

Si quieres aprender más sobre métodos antisandbox y análisis de malware, en KeepCoding tenemos la formación íntegra e intensiva ideal para ti. Ingresa a nuestro Ciberseguridad Full Stack Bootcamp y especialízate en tan solo 7 meses. ¡No sigas esperando e inscríbete ya!

¡CONVOCATORIA ABIERTA!

Ciberseguridad

Full Stack Bootcamp

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