Análisis comparativo de algoritmos de machine learning para detección de malware en aplicaciones Android - Montenegro Guerrero, Victor Agustin (2022)
El malware en dispositivos móviles Android es muy frecuente hoy en día, ya que este sistema operativo posee un amplio mercado y es el más popular en este ámbito, cabe señalar que en enero de 2021 se obtuvo 71.93% de dispositivos que cuentan con Android, todas sus aplicaciones se basan en el kernel de Linux, el cual es código abierto permitiendo la creación de aplicaciones de fuentes poco confiables. A través de estos dispositivos los usuarios comparten su información personal, confiando en que estas aplicaciones faciliten algunas tareas como pagos, descarga de música, toma de fotos, etc., sin prever que puede ser vulnerable a los ataques de aplicaciones maliciosas que pueden robar esta información. A pesar de los notables esfuerzos de los proveedores de teléfonos Android y Google para implementar mecanismos de seguridad en el software como Bouncer o Google Play Protect, y también en el hardware como Sansung Knox, los autores de malware siempre han encontrado la forma de eludirlos. En este escenario, las técnicas de aprendizaje automático aplicadas en la detección de malware en conjunto con la elaboración de una base de datos con características dinámicas de estas aplicaciones, ha mostrado resultados sobresalientes, superando las limitaciones de métodos de detección tradicionales basadas en firmas, siendo de gran ayuda para la prevención de delitos informáticos. En esta investigación, se propone usar los modelos de aprendizaje automático Random Forest (RF), Decisión Tree (DT) y kNearest Neighbor(k-NN) para la detección de malware utilizando características descriptivas del comportamiento dinámico de un malware basado en el tráfico de flujo de red utilizando enfoque propuesto por NetFlowMeter con una cantidad de 15945 muestras entre malware y goodware. La evaluación de los modelos indica que, en cuanto a exactitud, RF tiene un 96%, DT 91.2% y k-NN 85.4% respectivamente. Lo que demuestra que las características de flujo de red generan una base de datos confiable y que el algoritmo Random Forest es el de mejor desempeño en la identificación de malware en aplicaciones android.