top of page

Aprendizaje automático para la ciberseguridad

Extracción de N-gramas

Los N-gramas son secuencias de N elementos consecutivos (tokens) dentro de un conjunto de datos, como texto, código fuente o datos binarios. Estos tokens pueden representar palabras, caracteres o bytes, dependiendo del contexto del análisis.

Por ejemplo, dado el texto: "Hola mundo":

    • 1-gramas (unigramas): "Hola", "mundo".

    • 2-gramas (bigramas): "Hola mundo".

    • 3-gramas (trigramas): No aplicable, al no haber suficientes palabras.

Este enfoque también se emplea en contextos más allá del procesamiento del lenguaje natural, incluyendo el análisis de código fuente y datos binarios.

 

Aplicaciones de los N-gramas en ciberseguridad

En el ámbito de la ciberseguridad, los N-gramas se utilizan para identificar patrones en datos y predecir comportamientos maliciosos en archivos, redes y registros del sistema. Las principales aplicaciones incluyen:

    1. Detección de malware

     • Extracción de N-gramas de archivos ejecutables, código fuente o secuencias de bytes.

     • Análisis de patrones para distinguir entre software benigno y malicioso.

     • Implementación en clasificadores basados en algoritmos de aprendizaje automático.

        Ejemplo: Si un archivo contiene secuencias de bytes típicas en troyanos, un modelo puede identificarlo como sospechoso.

 

    2. Detección de phishing y spam

     • Análisis de N-gramas en correos electrónicos o páginas web.

     • Identificación de patrones lingüísticos comunes en mensajes de phishing.

        Ejemplo: La presencia de bigramas como "hacer clic", "urgente pago" o "verificación cuenta" puede indicar contenido malicioso.

​

    3. Análisis de tráfico de red

    • Generación de N-gramas a partir de paquetes de red para identificar patrones anómalos.

    • Detección de comportamientos maliciosos, como ataques de denegación de servicio (DDoS) o exfiltración de datos.

       Ejemplo: Secuencias repetidas en comandos enviados a un servidor podrían señalar intentos de explotación.

 

    4. Detección de intrusos (IDS)

     • Modelado del comportamiento normal mediante N-gramas en registros del sistema.

    • Detección de desviaciones en los patrones como indicativo de actividad sospechosa.

      Ejemplo: Combinaciones atípicas de comandos en registros de conexión SSH podrían señalar un ataque por fuerza bruta.

 

En conclusión, los N-gramas constituyen una herramienta eficaz para modelar patrones en datos estructurados y no estructurados. Su aplicación en la detección de malware, análisis de tráfico, detección de phishing e intrusiones los posiciona como una técnica clave dentro de los sistemas modernos de ciberseguridad.

Google colab:

bottom of page