Julio 2, 2013
Emulación y exterminación
En primer lugar, rebobinemos un segundo:
No es posible garantizar una protección al 100%. Probablemente, ya seréis todos conscientes de ello. De hecho, incluso los antivirus más fiables, a veces, fallan ante los ataques de profesionales. Esto no son buenas noticias, pero, la situación puede ser aún peor si tenemos un antivirus de baja calidad porque el malware podrá hacer de las suyas con mayor facilidad.
Si quieren, los cibercriminales pueden hackearlo todo; afortunadamente, estos “ciber-Moriarty” escasean. La mayoría de los delitos los comenten programadores corrientes que, seducidos por la avaricia, piensan que pueden con todo (¡ya les gustaría!). Estos oportunistas no poseen la habilidad suficiente para hackear las defensas más avanzadas, pero son capaces de introducirse en ordenadores desprotegidos o con una mala solución de seguridad; los cuales, seguramente, terminarán uniéndose a la lista de equipos infectados del mundo.
La lógica de todo esto es muy sencilla:
Cuanto más robusta es la protección, mayor es la defensa. A su vez, cuanto más profesional es el ataque, más defensas podrá sortear.
Hoy en día, con 2,5 billones de internautas o, mejor dicho, de posibles víctimas, la lógica sigue los siguientes razonamientos económicos:
Los criminales no necesitan hackear un contenedor súper mega seguro, especialmente cuando la información almacenada en él suele ser bastante peligrosa, extraña y espeluznante (mejor ni conocerla). Es más barato y fácil atacar a objetivos más sencillos como la red del vecino; ya que su sistema de protección es menos robusto y es más factible llegar hasta el botín.
Entonces, ésta es la situación: un hacker medio no tiene motivos suficientes para organizar y realizar un ataque profesional. Tampoco tiene sentido, cambiar de objetivo y dirigirse contra equipos Mac en vez de Windows. Es más efectivo bombardear a tantas víctimas como sea posible en una campaña que no acarree demasiados quebraderos de cabeza o esfuerzos.
Cuanto mejor sea la protección, menos interesante será para los chicos malos. Incluso ni se preocuparán de atacarla, simplemente buscarán a otra víctima más vulnerable.
Ahora, permitidme que os hable sobre una función que estropea la fiesta a los cibercrimiminales y les obliga a buscar a otros equipos que carezcan de dicha herramienta. Es la hora de que sepáis más sobre la letra K de la barra de tareas y cómo protege frente a futuras amenazas a través de la emulación.
He escrito más porque ya os hablé, en otra ocasión, sobre la emulación. Para aquellos que no hayáis leído mi post, os aconsejo que le echéis un vistazo. Y si no tenéis, ni tan siquiera, un minuto de tiempo libre, os lo resumo brevemente…
En líneas generales, la emulación es un método para detectar, automáticamente, malware nuevo; analizando el comportamiento de los programas sospechosos sin que entren en funcionamiento ya que podrían dañar al equipo. Pero… ¿cómo podemos analizar un programa sin que esté funcionando? El emulador crea un entorno virtual especial donde opera dicho programa. Digamos que se parece al análisis de un virus (por ejemplo, de la gripe) en un tubo de ensayo en vez de estudiar dicho virus en el cuerpo de un ser humano. Comprenderéis que esta forma es menos dañina, ¿verdad?
Gracias a este método, podríamos decir que la maldad ya no tiene dónde esconderse. Bueno… más o menos, todavía existe un gran “pero” al respecto:
Los programas maliciosos más complejos (y por ende, más peligrosos) reconocen los “tubos de ensayo” y, entonces, automáticamente, cambian la dirección de su ataque al no encontrar un punto débil por donde atacar.
Estamos hablando de los trucos anti-emulador.
Os voy a dar algunos ejemplos: lanzar funciones no documentadas; comprobar la autenticidad del entorno rastreando los cambios en el procesador; analizar los códigos de error; buscar un código específico en la memoria… y un largo etcétera.
Si esto funciona, entonces el programa malicioso sabe que está en un “tubo de ensayo” y se transforma, rápidamente, en un programa totalmente inofensivo. No obstante, intenta realizar ataques furtivos e imperceptibles para el emulador.
Tras muchos años de combate, continuamos la encarnizada lucha por derribar al oponente y poder ayudar al usuario medio. Como esta batalla ha sido tan larga y tediosa y ha consumido tantos recursos, los expertos han decidido que los días de la emulación como tecnología antimalware están llegando a su fin. No obstante, quien ríe el último, ríe mejor…
Lo que se necesitaba para ganar la guerra era crear un “tubo de ensayo” (entorno de prueba) que fuese idéntico al cuerpo humano (equipo informático).
No soy un experto en virus biológicos, pero, en el campo del malware informático, esto es posible. No obstante, es realmente costoso y difícil ponerlo en práctica. ¿Por qué? Básicamente, porque se tiene que desarrollar todo un sistema operativo nuevo que imite al original. Y se debe lanzar dicho sistema operativo para cada archivo sospechoso. Imaginad cuántos recursos del sistema se necesitan para esta operación.
Así que, decidimos desviarnos por otra ruta del camino…
Actualmente, la gran mayoría de los programas maliciosos operan a nivel de usuario. Sin embargo, para las llamadas al sistema (por ejemplo, leer/ escribir un archivo), interactúan con el kernel a nivel de sistema. Existe una gran diferencia entre estos dos niveles: los programas a nivel de usuario pueden ver los cambios en el entorno (y, por supuesto, poner en práctica sus trucos anti-emulación), mientras que, a nivel de sistema, no pueden.
Así, hemos concentrado todos nuestros trucos de emulación antimalware en el nivel de sistema, mientras que, a nivel de usuario, intentamos conseguir un entorno lo más parecido al original. El resultado: una solución casi perfecta para hacer que el “tubo de ensayo” sea invisible.
Así, emulamos la ejecución de todas las llamadas a las API y luego nos movemos al nivel de sistema para un análisis antimalware más profundo. Por consiguiente, el malware a nivel de usuario se cree impune y entra en acción, desplegando todas sus alas maliciosas. ¡Bingo, te hemos pillado!
Al igual que cualquier otra tecnología, nuestro súper emulador ralentiza un poco el equipo y, por eso, hemos añadido un acelerador de hardware. Pero no voy a entrar en más detalle porque la patente todavía está pendiente. Solo quiero deciros que hemos inventado una tecnología que funciona más rápido que el emulador tradicional. ¡Bingo por partida doble!