Detección de malware de linux con métodos de aprendizaje automático aplicados a datos de análisis estático

Quevedo Muñoz, Jose Antonio (2018). Detección de malware de linux con métodos de aprendizaje automático aplicados a datos de análisis estático. Proyecto Fin de Carrera / Trabajo Fin de Grado, E.T.S.I. de Sistemas Informáticos (UPM), Madrid.

Description

Title: Detección de malware de linux con métodos de aprendizaje automático aplicados a datos de análisis estático
Author/s:
  • Quevedo Muñoz, Jose Antonio
Contributor/s:
  • Pozo Coronado, Luis
Item Type: Final Project
Degree: Grado en Ingeniería de Computadores
Date: 10 July 2018
Subjects:
Freetext Keywords: Aprendizaje automático
Faculty: E.T.S.I. de Sistemas Informáticos (UPM)
Department: Matemática Aplicada a las Tecnologías de la Información y las Comunicaciones
Creative Commons Licenses: Recognition - No derivative works - Non commercial

Full text

[img]
Preview
PDF - Requires a PDF viewer, such as GSview, Xpdf or Adobe Acrobat Reader
Download (2MB) | Preview
[img] Archive (ZIP) (Anexos) - Users in campus UPM only
Download (12kB)

Abstract

En este proyecto se aplican técnicas de aprendizaje automático supervisado sobre dos conjuntos de ficheros binarios compuestos por goodware y malware. Partiendo de sus informes de análisis estático, se pretende de detectar si un fichero es malware o no. Se ha tomado como goodware dos conjuntos de ficheros pertenecientes a la distribución Debian GNU/Linux arquitectura amd64 e i386, y como malware los 3565 ficheros binarios del dataset de malware de Linux de Virushare. Estos conjuntos de datos se han unido de manera que conforman dos datasets, los mismos binarios de malware, distintos binarios de goodware, uno para cada arquitectura. Sobre estos datasets se ha realizado un análisis estático para obtener los informes, los cuales han sido parseados para elaborar una lista con todas las palabras que aparecen en cada uno de ellos junto con su número de apariciones. La selección de características se ha hecho eliminando en primer lugar las palabras con menor varianza en su número de apariciones, y luego se han escogido las k-mejores características utilizando el criterio específico de filtrado para clasificación x2. Estos procesos de filtrado de características se han hecho tomando las decisiones sobre el subconjunto de entrenamiento para evitar fugas de datos y obtener así un resultado fiable. Finalmente, se han entrenado varios modelos de clasificación, se han validado y medido sus resultados para, por último, compararlos. A raíz de los resultados obtenidos, se ha realizado una investigación hacia atrás para identificar las características que producen dichos resultados. Esto nos ha permitido obtener un conocimiento más profundo de los criterios basados en datos que están utilizando los algoritmos para tomar las decisiones de clasificación. Abstract: This project applies supervised machine learning tecniques over two binary files datasets composed by goodware and malware. Starting from their static analysis reports, the goal is to detect if a binary file is malware or not. Two sets of binary files of the Debian GNU/Linux distribution based on amd64 and i386 architectures have been chosen as goodware data, as well as 3565 binary files from the Virushare Linux malware dataset as the malware side. This datasets have been joined to become two datasetsOver this dataset, the same malware files with different goodware files for each architecture. Over this data a static analysis was carried out to get the static analysis reports, which were then parsed to elaborate a list containing all the words appearing in the reports along their repetitions. The feature selection was fulfilled through a two feature selection combination: in the first place the less variance features were removed, and then the K best features following the x2 criteria have been selected. This feature selection stage took place after having splitted the dataset into training and test subsets, in order to avoid any data leakage effect. Finally, some classification models were trained and evaluated, and their results were compared between themselves and with the previously achieved ones in the academic literature. Due to the obtained results, a backward research was performed to identify which features produce the previously reached results. This provided a deeper knowledge on the data based criteria used by the algorithms to form the resolutions.

More information

Item ID: 51846
DC Identifier: http://oa.upm.es/51846/
OAI Identifier: oai:oa.upm.es:51846
Deposited by: Biblioteca Universitaria Campus Sur
Deposited on: 03 Aug 2018 15:19
Last Modified: 03 Aug 2018 15:19
  • Logo InvestigaM (UPM)
  • Logo GEOUP4
  • Logo Open Access
  • Open Access
  • Logo Sherpa/Romeo
    Check whether the anglo-saxon journal in which you have published an article allows you to also publish it under open access.
  • Logo Dulcinea
    Check whether the spanish journal in which you have published an article allows you to also publish it under open access.
  • Logo de Recolecta
  • Logo del Observatorio I+D+i UPM
  • Logo de OpenCourseWare UPM