http://www.subeimagen.com/images/71BANNER.png

Cómo cazar un Virus


No hay nada como la experiencia práctica y sucia de instalar software antivirus y desafiarlo a que limpie un sistema de prueba saturado de malware como virus, spyware, gusanos, caballos de Troya y demás. Claro que los laboratorios independientes de pruebas someten la mayoría delos productos a pruebas estáticas integrales, y revisamos esos informes en el curso de una evaluación. Pero revisar una tabla o gráfica de resultados no se compara con ver que el producto tenga éxito o fracase en acabar con el malware de verdad.

Como parte de cada reseña de productos antivirus y suites de seguridad, instalo el software en un grupo de sistemas de prueba infectados de malware conocido y observo con cuidado qué tan bien identifica e identifica la aplicación las amenazas. Cada prueba comienza desde la misma instantánea de la máquina virtual, así que cada producto tiene que limpiar lo mismo. Cuando el producto ha terminado, utilizo herramientas para revisar si se eliminaron los residuos del malware. Todos los años desecho las muestras y uso un grupo nuevo. Reunir y analizar las nuevas muestras es una tarea pesada; pero sin duda vale la pena.

Pregúntales a los expertos
Empecé el proceso de reunir una nueva colección de malware preguntando qué me aconsejaban a los investigadores de docenas de empresas importantes de seguridad. No les pido que me manden muestras; eso sería descortés, por no decir que peligroso. Mejor solicito URL actuales de las amenazas que consideran especialmente peligrosas. Algunas compañías prefieren no compartir muestras ni siquiera en forma de URL; pero la mayoría comparte sus sugerencias. Este año empecé con casi 200. Claro que si más de una empresa señala la misma amenaza, procuro al máximo incluir ésa.

Luego reúno los archivos. He escrito un programa sencillo que toma una lista de URL e intenta descargarlos, informando si tuvo éxito. No hay garantía de éxito; un URL válido hoy podría estar muerto mañana. Y, de hecho, cada vez que ejecuto este programa descubro que varias muestras ya desaparecieron.

El deporte de vigilar el malware
Luego viene la parte de miedo; abro cada muestra y anoto con cuidado exactamente qué cambios provoca en el Registro y el sistema de archivos. Claro que hago esto dentro de una máquina virtual, y después de cada prueba, pongo la máquina virtual en su estado original. Para saber qué ocurre durante la instalación del malware, uso una colección ecléctica de herramientas.

Process Explorer de SysInternals (ahora división de Microsoft) informa toda la actividad del Registro y los archivos con detalles. Process Explorer vigila cada proceso, incluidos los componentes de Windows y los procesos no relacionados con la muestra de malware, así que registra gran cantidad de información. Simplemente no puedo ajustarlo para que filtre la actividad no causada directamente por el instalador del malware, porque el instalador podría abrir otros procesos o incluso apoderarse de un proceso existente. Necesito algo de ayuda para comprender qué cambios se relacionan de verdad con la muestra de malware y con los subprocesos que podría haber iniciado.

PC Armor me ayuda a identificar modificaciones al sistema específicos de la muestra de malware analizada. PC Armor mantiene un registro en tiempo real de la actividad del Registro y los archivos relacionada con las instalaciones del programa, ignorando la mayoría de la actividad de programas ya instalados y los componentes de Windows.

También uso InCtrl5. Esta utilería saca una instantánea del sistema de archivos y el Registro antes y después de la instalación del malware. Al comparar ambas instantáneas, InCtrl5 puede generar una lista de las alteraciones. El registro de Process Monitor reporta cuando se crea un archivo aunque dicho archivo se borre más adelante, mientras que la lista de InCtrl4 de trazas añadidas representa estrictamente los elementos del Registro y de los archivos que aún siguen presentes.

El malware que utiliza tecnología de rootkits puede ocultarse de algunas de estas herramientas, así que también ejecuto Rootkit Revealer (otro producto de SysInternals). Como lo sugiere el nombre, este producto sólo revela la actividad de los rootkits; no intenta eliminarlos. Lo ejecuto con un switch de línea de comandos que le indica que escanee, escriba un archivo de registro y salga. Para tener una segunda opinión confío en Panda Anti-Rootkit, muy efectivo para detectar rootkits pero no produce el tipo de archivo de registro que me hace falta.

Para administrar todas estas herramientas, escribí un programa sencillo que las abre en el orden apropiado, recopila la información resultante, y escribe un archivo de registro maestro por cada amenaza.

El filtrado de la información
El registro maestro de una sola amenaza puede extenderse de cientos a miles de líneas. Mis programas de filtrado eliminan automáticamente los duplicados evidentes y quitan las líneas que son irrelevantes; pero al final tengo que examinar cada registro y dejar yo mismo las líneas realmente importantes. A veces después de eliminar lo irrelevante no queda nada, así que, en esta fase, algunas más de las muestras quedan descartadas.

Cada análisis completado añade información a una base de datos que liga los residuos del Registro y los archivos con la muestra correspondiente. Otro de mis programitas, uno muy importante, lee esa base de datos y marca cada traza del Registro y archivo que ahora está presente en el sistema. Además comprueba si alguno de los archivos ejecutables se está ejecutando de verdad en la memoria. Para revisar lo sensato de la colección, utilizo esta herramienta con un sistema totalmente limpio para asegurarme de que no incluí trazas que no correspondían.

Cuando llega la hora de tomar la decisión final en cuanto a qué muestras voy a incluir, empleo una hoja de cálculo de Excel para asegurarme de que incluyo las recomendaciones de todas las empresas y mantengo una buena mezcla de tipos de malware. Todo lo que queda es repartir las muestras en lechos de prueba en máquinas virtuales, no más de cuatro cada una. Procuro evitar poner dos amenazas del mismo tipo en un solo sistema y además trabajo para darle a cada sistema una mezcla de muestras chicas y grandes. Una vez que todos los sistemas están listos, hago una prueba final para cerciorarme de que el programa con que reviso el malware detecta bien los residuos que sé que quedan presentes.

Revisión de la muestra
Antes de empezar a usar la nueva colección para evaluar productos, me gusta ejecutar un par de programas antivirus conocidos de alta capacidad con el nuevo grupo de pruebas. Esto ayuda a revisar lo sensato de la nueva colección y además me da datos actuales para comparar mientras evalúo nuevos productos. Esta vez usé Spyware Doctor with Antivirus 2010 y Norton AntiVirus 2010, los que mejor se desempeñaron la última vez que evalúe. Sometí ambos a mi régimen completo de evaluación y entonces seguí con una nueva revisión de la versión más reciente de Malwarebytes Anti-Malware.

Ninguno de los tres detecto algunas pocas muestras de la nueva colección. Las revisé con VirusTotal, sitio web que informa si 42 soluciones antimalware diferentes consideran si un archivo en particular es malicioso. Esa última revisión eliminó un par de muestras que habían llegado hasta el final. Si los 42 productos certifican que el archivo está limpio no me voy a poner a discutir.

Con el transcurso de los años, he elaborado un sistema para convertir el desempeño de cada producto en un resultado numérico que refleje hasta qué punto limpió los sistemas de prueba o qué tan bien impidió que el malware infectara un sistema limpio. Esos resultados llegan a una hoja de cálculo monstruosa que me deja ver y comparar los diversos productos.

Como pueden ver, estar a la caza de los virus y preparar una nueva colección de malware requiere un esfuerzo considerable. Pero en realidad vale la pena. Tengo experiencia real con los productos de seguridad con que de otro modo no contaría.

Creditos: Neil J. Rubenking

Fuente: jambitz.com

0 Comentarios,Deja Tu Comentario:

Publicar un comentario

:-) :-S :-P :-[ :-D }:-] X* ;-D :-| :-} :*) :-( ;-) XD