Detección de software malicioso mediante el análisis de artefactos distintivos utilizando algoritmos de aprendizaje automático y aprendizaje profundo
Autores: Ashik, Mathew; Jyothish, A.; Anandaram, S.; Vinod, P.; Mercaldo, Francesco; Martinelli, Fabio; Santone, Antonella
Idioma: Inglés
Editor: MDPI
Año: 2021
Acceso abierto
Artículo científico
2021
Detección de software malicioso mediante el análisis de artefactos distintivos utilizando algoritmos de aprendizaje automático y aprendizaje profundo
Categoría
Ingeniería y Tecnología
Subcategoría
Ingeniería Eléctrica y Electrónica
Palabras clave
Malware
Análisis
Métodos de prevención
Firmas
Aprendizaje automático
Aprendizaje profundo
Licencia
CC BY-SA – Atribución – Compartir Igual
Consultas: 29
Citaciones: Sin citaciones
El malware es una de las amenazas más significativas en el mundo informático actual, ya que el número de sitios web que distribuyen malware está aumentando a un ritmo rápido. Los métodos de análisis y prevención de malware son cada vez más necesarios para los sistemas informáticos conectados a Internet. Este software explota las vulnerabilidades del sistema para robar información valiosa sin el conocimiento del usuario y enviarla sigilosamente a servidores remotos controlados por atacantes. Tradicionalmente, los productos anti-malware utilizan firmas para detectar malware conocido. Sin embargo, el método basado en firmas no escala en la detección de malware ofuscado y empaquetado. Considerando que la causa de un problema a menudo se comprende mejor estudiando los aspectos estructurales de un programa como los mnemónicos, códigos de instrucción, llamadas API, etc. En este documento, investigamos la relevancia de las características de ejecutables maliciosos y benignos desempaquetados como mnemónicos, códigos de instrucción y API para identificar una característica que clasifique el ejecutable. Las características prominentes se extraen utilizando Mínima Redundancia y Máxima Relevancia (mRMR) y Análisis de Varianza (ANOVA). Se realizaron experimentos en cuatro conjuntos de datos utilizando enfoques de aprendizaje automático y aprendizaje profundo como Máquina de Vectores de Soporte (SVM), Naïve Bayes, J48, Bosque Aleatorio (RF) y XGBoost. Además, también evaluamos el rendimiento de la colección de redes neuronales profundas como red densa profunda, Red Neuronal Convolucional Unidimensional (1D-CNN) y CNN-LSTM en la clasificación de muestras desconocidas, y observamos resultados prometedores utilizando API y llamadas al sistema. Al combinar API/llamadas al sistema con características estáticas, se logró una mejora marginal en el rendimiento comparando con modelos entrenados solo con características dinámicas. Además, para mejorar la precisión, implementamos nuestra solución utilizando distintos métodos de aprendizaje profundo y demostramos una red neuronal profunda afinada que resultó en un puntaje F1 del 99.1% y 98.48% en el Conjunto de Datos-2 y Conjunto de Datos-3, respectivamente.
Descripción
El malware es una de las amenazas más significativas en el mundo informático actual, ya que el número de sitios web que distribuyen malware está aumentando a un ritmo rápido. Los métodos de análisis y prevención de malware son cada vez más necesarios para los sistemas informáticos conectados a Internet. Este software explota las vulnerabilidades del sistema para robar información valiosa sin el conocimiento del usuario y enviarla sigilosamente a servidores remotos controlados por atacantes. Tradicionalmente, los productos anti-malware utilizan firmas para detectar malware conocido. Sin embargo, el método basado en firmas no escala en la detección de malware ofuscado y empaquetado. Considerando que la causa de un problema a menudo se comprende mejor estudiando los aspectos estructurales de un programa como los mnemónicos, códigos de instrucción, llamadas API, etc. En este documento, investigamos la relevancia de las características de ejecutables maliciosos y benignos desempaquetados como mnemónicos, códigos de instrucción y API para identificar una característica que clasifique el ejecutable. Las características prominentes se extraen utilizando Mínima Redundancia y Máxima Relevancia (mRMR) y Análisis de Varianza (ANOVA). Se realizaron experimentos en cuatro conjuntos de datos utilizando enfoques de aprendizaje automático y aprendizaje profundo como Máquina de Vectores de Soporte (SVM), Naïve Bayes, J48, Bosque Aleatorio (RF) y XGBoost. Además, también evaluamos el rendimiento de la colección de redes neuronales profundas como red densa profunda, Red Neuronal Convolucional Unidimensional (1D-CNN) y CNN-LSTM en la clasificación de muestras desconocidas, y observamos resultados prometedores utilizando API y llamadas al sistema. Al combinar API/llamadas al sistema con características estáticas, se logró una mejora marginal en el rendimiento comparando con modelos entrenados solo con características dinámicas. Además, para mejorar la precisión, implementamos nuestra solución utilizando distintos métodos de aprendizaje profundo y demostramos una red neuronal profunda afinada que resultó en un puntaje F1 del 99.1% y 98.48% en el Conjunto de Datos-2 y Conjunto de Datos-3, respectivamente.