Nuevo enfoque para la detección de malware basado en métodos de recuperación de información
- Santos Grueiro, Igor
- Pablo García Bringas Director
Universidad de defensa: Universidad de Deusto
Fecha de defensa: 27 de octubre de 2011
- Mario G. Piattini Velthuis Presidente/a
- María José Gil Larrea Secretario/a
- José Luis del Val Román Vocal
- Juan Manuel González Rodríguez Vocal
- Juan Manuel Cueva Lovelle Vocal
Tipo: Tesis
Resumen
Malware es todo código malicioso que tiene potencial para dañar cualquier ordenador, red o información. La cantidad de malware se está incrementado cada año y constituye un serio problema de seguridad. Por lo tanto, la detección de malware se ha convertido en un tema crítico dentro del campo de la seguridad de la información. Actualmente, el método más extendido dentro de las compañías antivirus es la detección basada en firmas. A pesar de que esta técnica aún se utiliza en la mayoría de soluciones antivirus comerciales, sólo es capaz de conseguir la detección una vez que el ejecutable ha causado daño y están documentados. Además los creadores de software malicioso utilizan técnicas de ofuscación para ocultar sus creaciones a estos detectores de malware. Por ello, los sistemas de detección de malware simplemente fallan al detectar, tanto nuevas variantes de malware conocido como familias de malware desconocidas. En esta tesis doctoral proponemos un nuevo sistema de representación de ejecutables basado en recuperación de la información que es capaz de detectar variantes ofuscadas de malware y detectar malware desconocido, reduciendo los esfuerzos del etiquetado mientras mantiene un alto nivel de precisión. En concreto, utilizamos la frecuencia de aparición de secuencias de códigos operacionales (opcodes). En base a esta representación, hemos unificado la detección de variantes ofuscadas de familias de malware con la detección de malware desconocido. Para la detección de variantes, hemos propuesto un sistema completo de recuperación de variantes que se compone de: (i) una base de datos de malware, (ii) una representación de ejecutables, (iii) un sistema para generar consultas que transforma un ejecutable en su representación y (iv) un generador de modelos filogenéticos para monitorizar la evolución de una familia de malware. Para la detección de malware desconocido, hemos usado aprendizaje automático. Hemos empleado aprendizaje supervisado que, aunque requiere una gran cantidad de software etiquetado en clases (benigno o malware), es capaz de ofrecer un alto nivel de precisión. Para reducir el elevado número de ejecutables necesario en el entrenamiento propio del aprendizaje automático, hemos adaptado un enfoque de aprendizaje de clase única, en el que sólo es necesario etiquetar un subconjunto de especímenes de una de las clases de software.