92
Trabajo Fin de Grado – Grado en Ingeniería Informática Escuela de Ingeniería y Arquitectura Universidad de Zaragoza Evaluación de algoritmos de fuzzy hashing para similitud entre procesos Director: Ricardo J. Rodríguez Septiembre de 2017 Curso 16/17 Iñaki Abadía Osta Ponente: José Merseguer Hernáiz

Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

  • Upload
    vanlien

  • View
    228

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Trabajo Fin de Grado – Grado en Ingeniería InformáticaEscuela de Ingeniería y Arquitectura

Universidad de Zaragoza

Evaluación de algoritmos de fuzzy hashing para similitud entre procesos

Director: Ricardo J. Rodríguez

Septiembre de 2017

Curso 16/17

Iñaki Abadía Osta

Ponente: José Merseguer Hernáiz

Page 2: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Contenidos

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 2 / 29

1 Introducción

2 Ejecutables y procesos Windows

4 Herramienta ProcessFuzzyHash

5 Experimentación

6 Trabajo relacionado

7 Conclusiones y líneas futuras

Page 3: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Contenidos

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 2 / 29

Situación actual malware

Funciones de hash criptográfico

Funciones de fuzzy hash

Contribución

1 Introducción

2 Ejecutables y procesos Windows

4 Herramienta ProcessFuzzyHash

5 Experimentación

6 Trabajo relacionado

7 Conclusiones y líneas futuras

Page 4: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Contenidos

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 2 / 29

1 Introducción

2 Ejecutables y procesos Windows

4 Herramienta ProcessFuzzyHash

5 Experimentación

6 Trabajo relacionado

7 Conclusiones y líneas futuras

Ejecutables Windows

Procesos Windows

Page 5: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Contenidos

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 2 / 29

1 Introducción

2 Ejecutables y procesos Windows

4 Herramienta ProcessFuzzyHash

5 Experimentación

6 Trabajo relacionado

7 Conclusiones y líneas futuras

Arquitectura

Ejecución

Page 6: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Contenidos

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 2 / 29

1 Introducción

2 Ejecutables y procesos Windows

4 Herramienta ProcessFuzzyHash

5 Experimentación

6 Trabajo relacionado

7 Conclusiones y líneas futuras

Entorno de pruebas

Resultados

Page 7: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Contenidos

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 2 / 29

1 Introducción

2 Ejecutables y procesos Windows

4 Herramienta ProcessFuzzyHash

5 Experimentación

6 Trabajo relacionado

7 Conclusiones y líneas futuras

Herramientas

Publicaciones

Page 8: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Contenidos

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 2 / 29

1 Introducción

2 Ejecutables y procesos Windows

4 Herramienta ProcessFuzzyHash

5 Experimentación

6 Trabajo relacionado

7 Conclusiones y líneas futuras

Conclusiones

Trabajo futuro

Page 9: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Situación actual software malicioso (malware)

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 3 / 29

Introducción

Malware nuevo2008-2017

* Imágenes tomadas de [AT17]

Page 10: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Situación actual software malicioso (malware)

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 3 / 29

Introducción

Malware nuevo2008-2017

Malware en circulación2008-2017

* Imágenes tomadas de [AT17]

Page 11: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Situación actual software malicioso (malware)

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 3 / 29

Introducción

Malware nuevo2008-2017

Malware en circulación2008-2017

* Imágenes tomadas de [AT17]

85% Windows

Page 12: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Respuesta a incidentes

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 4 / 29

Introducción

* Imágenes tomadas de [AT17]

Page 13: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Respuesta a incidentes

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 4 / 29

Introducción

* Imágenes tomadas de [AT17]

Curso habitual de los eventos

Page 14: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Respuesta a incidentes

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 4 / 29

Introducción

* Imágenes tomadas de [AT17]

Alguien se da cuenta de que hay una máquina comprometida

Curso habitual de los eventos

Page 15: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Respuesta a incidentes

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 4 / 29

Introducción

* Imágenes tomadas de [AT17]

Alguien se da cuenta de que hay una máquina comprometidaSe da la alerta

Curso habitual de los eventos

Page 16: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Respuesta a incidentes

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 4 / 29

Introducción

* Imágenes tomadas de [AT17]

Alguien se da cuenta de que hay una máquina comprometidaSe da la alertaNecesidad de averiguar si la máquina está realmente comprometida

Curso habitual de los eventos

Page 17: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Respuesta a incidentes

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 4 / 29

Introducción

* Imágenes tomadas de [AT17]

Alguien se da cuenta de que hay una máquina comprometidaSe da la alertaNecesidad de averiguar si la máquina está realmente comprometidaAnálisis de la máquina

Curso habitual de los eventos

Page 18: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Respuesta a incidentes

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 4 / 29

Introducción

* Imágenes tomadas de [AT17]

Alguien se da cuenta de que hay una máquina comprometidaSe da la alertaNecesidad de averiguar si la máquina está realmente comprometidaAnálisis de la máquina

Curso habitual de los eventos

Análisis de la máquina

Page 19: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Respuesta a incidentes

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 4 / 29

Introducción

* Imágenes tomadas de [AT17]

Alguien se da cuenta de que hay una máquina comprometidaSe da la alertaNecesidad de averiguar si la máquina está realmente comprometidaAnálisis de la máquina

Curso habitual de los eventos

Extracción del volcado de memoria

Análisis de la máquina

Page 20: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Respuesta a incidentes

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 4 / 29

Introducción

* Imágenes tomadas de [AT17]

Alguien se da cuenta de que hay una máquina comprometidaSe da la alertaNecesidad de averiguar si la máquina está realmente comprometidaAnálisis de la máquina

Curso habitual de los eventos

Extracción del volcado de memoriaAnálisis del volcado

Cálculo de hashes

Análisis de la máquina

Page 21: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Funciones de hash criptográfico

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 5 / 29

Introducción

Page 22: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Funciones de hash criptográfico

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 5 / 29

Introducción

Contraseñas

Integridad

Uso

IrreversibleEvitar colisionesEfecto cascada

Propiedades

Page 23: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Funciones de hash criptográfico

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 5 / 29

Introducción

MD5 2ae4f65fc262c0120b037438d05883f8SHA1 fcbab2d91923161bc46022a2b16ce50e8420fdecTiger df81bf2a909edc6e76f0118a372a19f3f89233f4a5c5a3f6RipeMD128 b259ecc284326e3773c596e14bff2d0675d4320a

Ejemplos

Contraseñas

Integridad

Uso

IrreversibleEvitar colisionesEfecto cascada

Propiedades

Page 24: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Funciones de fuzzy hash

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 6 / 29

Introducción

Evitan efecto cascadaEvitan efecto cascadaEquivalencia = colisiones

Propiedades

Detección de spamCopyright

Uso

ssdeepnilsimsa

Ejemplos

Page 25: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Funciones de fuzzy hash

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 6 / 29

Introducción

Evitan efecto cascadaEvitan efecto cascadaEquivalencia = colisiones

Propiedades

Detección de spamCopyright

Uso

ssdeepnilsimsa

Ejemplos

MD5

Page 26: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Funciones de fuzzy hash

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 6 / 29

Introducción

Evitan efecto cascadaEvitan efecto cascadaEquivalencia = colisiones

Propiedades

Detección de spamCopyright

Uso

ssdeepnilsimsa

Ejemplos

Original: 2ae4f65fc262c0120b037438d05883f8

MD5

Page 27: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Funciones de fuzzy hash

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 6 / 29

Introducción

Evitan efecto cascadaEvitan efecto cascadaEquivalencia = colisiones

Propiedades

Detección de spamCopyright

Uso

ssdeepnilsimsa

Ejemplos

Original: 2ae4f65fc262c0120b037438d05883f8Alterado: faf3e0b7e3008463714c7bf779a014a8

MD5

Page 28: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Funciones de fuzzy hash

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 6 / 29

Introducción

Evitan efecto cascadaEvitan efecto cascadaEquivalencia = colisiones

Propiedades

Detección de spamCopyright

Uso

ssdeepnilsimsa

Ejemplos

Original: 2ae4f65fc262c0120b037438d05883f8Alterado: faf3e0b7e3008463714c7bf779a014a8

MD5

ssdeep

Page 29: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Funciones de fuzzy hash

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 6 / 29

Introducción

Evitan efecto cascadaEvitan efecto cascadaEquivalencia = colisiones

Propiedades

Detección de spamCopyright

Uso

ssdeepnilsimsa

Ejemplos

Original: 2ae4f65fc262c0120b037438d05883f8Alterado: faf3e0b7e3008463714c7bf779a014a8

MD5

Original:49152:oKPDou/1fcThWebCqvWb/zIEqqG1H8ATR0qeuZEqv8eGYWb/zIEJGd8A90KZE2vJKl

ssdeep

Page 30: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Funciones de fuzzy hash

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 6 / 29

Introducción

Evitan efecto cascadaEvitan efecto cascadaEquivalencia = colisiones

Propiedades

Detección de spamCopyright

Uso

ssdeepnilsimsa

Ejemplos

Original: 2ae4f65fc262c0120b037438d05883f8Alterado: faf3e0b7e3008463714c7bf779a014a8

MD5

Original:49152:oKPDou/1fcThWebCqvWb/zIEqqG1H8ATR0qeuZEqv8eGYWb/zIEJGd8A90KZE2vJKlAlterado:49152:gKPDou/1fcThWebCqvWb/zIEqqG1H8ATR0qeuZEqv8eGYWb/zIEJGd8A90KZE2vJKo

ssdeep

Page 31: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Funciones de fuzzy hash

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 6 / 29

Introducción

Evitan efecto cascadaEvitan efecto cascadaEquivalencia = colisiones

Propiedades

Detección de spamCopyright

Uso

ssdeepnilsimsa

Ejemplos

Original: 2ae4f65fc262c0120b037438d05883f8Alterado: faf3e0b7e3008463714c7bf779a014a8

MD5

Original:49152:oKPDou/1fcThWebCqvWb/zIEqqG1H8ATR0qeuZEqv8eGYWb/zIEJGd8A90KZE2vJKlAlterado:49152:gKPDou/1fcThWebCqvWb/zIEqqG1H8ATR0qeuZEqv8eGYWb/zIEJGd8A90KZE2vJKo

ssdeep

98%

Page 32: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Contribución

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 7 / 29

Introducción

Page 33: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Contribución

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 7 / 29

Introducción

Herramienta ProcessFuzzyHash

Calcular fuzzy hashes de procesos

Comparar fuzzy hashes de procesos

Page 34: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Contribución

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 7 / 29

Introducción

Herramienta ProcessFuzzyHash

Calcular fuzzy hashes de procesos

Comparar fuzzy hashes de procesos

Estudio y evaluación de algoritmos de

fuzzy hashing

Centrado en Windows

Page 35: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Ejecutables Windows

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 8 / 29

Ejecutables y procesos Windows

Page 36: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Ejecutables Windows

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 8 / 29

Ejecutables y procesos Windows

Formato PE

Estándar de cabeceras de ficheros

ejecutables (EXE, OBJ, SCR, etc.)

Page 37: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Ejecutables Windows

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 8 / 29

Ejecutables y procesos Windows

Formato PE

Estándar de cabeceras de ficheros

ejecutables (EXE, OBJ, SCR, etc.)

Estructura

CabecerasTabla de seccionesEspacio de secciones

Page 38: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Ejecutables Windows

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 8 / 29

Ejecutables y procesos Windows

Formato PE

Estándar de cabeceras de ficheros

ejecutables (EXE, OBJ, SCR, etc.)

Estructura

CabecerasTabla de seccionesEspacio de secciones

Secciones

Código (R)Datos (R)Datos (R/W)Recursos (R)…

Page 39: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Procesos Windows

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 9 / 29

Ejecutables y procesos Windows

Page 40: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Procesos Windows

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 9 / 29

Ejecutables y procesos Windows

Contenedor de hilos

Page 41: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Procesos Windows

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 9 / 29

Ejecutables y procesos Windows

Contenedor de hilos

Ejecutable disco ≠ memoria Carga en memoriaAddress Space Layout Randomization

Page 42: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Plugin de Volatility

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 10 / 29

Herramienta ProcessFuzzyHash

Page 43: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Plugin de Volatility

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 10 / 29

Herramienta ProcessFuzzyHash

Volatility

Page 44: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Plugin de Volatility

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 10 / 29

Herramienta ProcessFuzzyHash

Python 2

Volatility

Page 45: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Plugin de Volatility

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 10 / 29

Herramienta ProcessFuzzyHash

Python 2Framework para análisis de memoria volátil

The Volatility FoundationComunidad

Volatility

Page 46: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Plugin de Volatility

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 10 / 29

Herramienta ProcessFuzzyHash

Python 2Framework para análisis de memoria volátil

The Volatility FoundationComunidad

Volatility

Algunos plugins de Volatility

Page 47: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Plugin de Volatility

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 10 / 29

Herramienta ProcessFuzzyHash

Python 2Framework para análisis de memoria volátil

The Volatility FoundationComunidad

Volatility

pslist: Muestra el listado de procesos en ejecución

Algunos plugins de Volatility

Page 48: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Plugin de Volatility

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 10 / 29

Herramienta ProcessFuzzyHash

Python 2Framework para análisis de memoria volátil

The Volatility FoundationComunidad

Volatility

pslist: Muestra el listado de procesos en ejecucióndumpregistry: Extrae un volcado del registro Windows

Algunos plugins de Volatility

Page 49: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Plugin de Volatility

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 10 / 29

Herramienta ProcessFuzzyHash

Python 2Framework para análisis de memoria volátil

The Volatility FoundationComunidad

Volatility

pslist: Muestra el listado de procesos en ejecucióndumpregistry: Extrae un volcado del registro Windowsvboxinfo: Muestra información de un volcado de una VM VBox

Algunos plugins de Volatility

Page 50: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Arquitectura – diagrama de clases

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 11 / 29

Herramienta ProcessFuzzyHash

Page 51: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Arquitectura – diagrama de clases

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 11 / 29

Herramienta ProcessFuzzyHash

Dcfldd (BBH)Sdhash (SIF)TLSH (LSH)Ssdeep (CTPH)

Facade

Page 52: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Arquitectura – diagrama de clases

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 11 / 29

Herramienta ProcessFuzzyHash

Dcfldd (BBH)Sdhash (SIF)TLSH (LSH)Ssdeep (CTPH)

Facade

Mayor diversidadImplementación en Python

Criterio

Page 53: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Arquitectura – diagrama de sistema

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 12 / 29

Herramienta ProcessFuzzyHash

Page 54: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Arquitectura – diagrama de sistema

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 12 / 29

Herramienta ProcessFuzzyHash

Apoyo en plugins:procdump: Extrae procesos de memoriamemdump: Extrae todas las páginas de memoria en uso

Extracción de procesos

Page 55: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Arquitectura – flujo generación

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 13 / 29

Herramienta ProcessFuzzyHash

Page 56: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Arquitectura – flujo comparación

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 14 / 29

Herramienta ProcessFuzzyHash

Page 57: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Ejecución – salida de generación

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 15 / 29

Herramienta ProcessFuzzyHash

Page 58: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Ejecución – salida de generación

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 15 / 29

Herramienta ProcessFuzzyHash

$ python vol.py --plugins=ProcessFuzzyHash/ -f vmcore.elf \> --profile=Win10x86_15063 processfuzzyhash -A ssdeep -S pe\> -N VBoxService,winlogon,services

Ejecución

Page 59: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Ejecución – salida de generación

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 15 / 29

Herramienta ProcessFuzzyHash

$ python vol.py --plugins=ProcessFuzzyHash/ -f vmcore.elf \> --profile=Win10x86_15063 processfuzzyhash -A ssdeep -S pe\> -N VBoxService,winlogon,services

Ejecución

Volatility Foundation Volatility Framework 2.6

Name PID Create Time Section Algorithm Hashwinlogon.exe 500 131483892000 pe SSDeep 6144:pzP/qv...8ciJQdsyJqjservices.exe 544 131483892003 pe SSDeep 6144:Q/6kXE...jXd5VBoxService 1060 131483892039 pe SSDeep 12288:K/oDR...CxuexSQ

Salida

Page 60: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Ejecución – salida de comparación

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 16 / 29

Herramienta ProcessFuzzyHash

Page 61: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Ejecución – salida de comparación

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 16 / 29

Herramienta ProcessFuzzyHash

$ python vol.py --plugins=ProcessFuzzyHash/ -f vmcore.elf \> --profile=Win10x86_15063 processfuzzyhash -A ssdeep -S pe -N svchost \> -c '768:9n3SsSfvrOtOHW4CO5LTiMRMxVKPhPDjRWWm:d3BGrOtO2NO5LTiqUVKP5/zm'

Ejecución

Page 62: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Ejecución – salida de comparación

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 16 / 29

Herramienta ProcessFuzzyHash

$ python vol.py --plugins=ProcessFuzzyHash/ -f vmcore.elf \> --profile=Win10x86_15063 processfuzzyhash -A ssdeep -S pe -N svchost \> -c '768:9n3SsSfvrOtOHW4CO5LTiMRMxVKPhPDjRWWm:d3BGrOtO2NO5LTiqUVKP5/zm'

Ejecución

Volatility Foundation Volatility Framework 2.6Hash A Hash B Algorithm Score768:9n3Ss...qUVKP5/zm 768:9n3SsS...qDVKP5/0m ssdeep 94768:9n3Ss...qUVKP5/zm 768:9n3SsS...q5VKP5/0m ssdeep 94768:9n3Ss...qUVKP5/zm 768:9n3SsS...qUVKP5/zm ssdeep 100768:9n3Ss...qUVKP5/zm 768:9n3SsS...qFVKP5/zm ssdeep 97768:9n3Ss...qUVKP5/zm 768:9n3SsS...qMVKP5/zm ssdeep 100768:9n3Ss...qUVKP5/zm 768:9n3SsS...qAVKP5/zm ssdeep 97...

Salida

Page 63: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Entorno de pruebas

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 17 / 29

Experimentación

Page 64: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Entorno de pruebas

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 17 / 29

Experimentación

Ubuntu 16.04 x64Intel Core i7-4720HQ @ 2.60GHz12GiB RAMSSD SATA3HDD @ 5400 RPM USB 3.0

Máquina host

Page 65: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Entorno de pruebas

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 17 / 29

Experimentación

Ubuntu 16.04 x64Intel Core i7-4720HQ @ 2.60GHz12GiB RAMSSD SATA3HDD @ 5400 RPM USB 3.0

Máquina host

Windows 7 32 (x86) y 64 bits (x64)Windows 10 32 (x86) y 64 bits (x64)

Máquinas Virtuales

Page 66: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Entorno de pruebas

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 17 / 29

Experimentación

Ubuntu 16.04 x64Intel Core i7-4720HQ @ 2.60GHz12GiB RAMSSD SATA3HDD @ 5400 RPM USB 3.0

Máquina host

Windows 7 32 (x86) y 64 bits (x64)Windows 10 32 (x86) y 64 bits (x64)

Máquinas Virtuales

Sistema operativo (winlogon, svchost, explorer)Software adicional:

Navegador Web (IE, Edge, Chrome, Firefox)Lector de PDF (Acrobat Reader)

Malware:POS RAM Scrapper (ALINA)

Procesos

Page 67: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Entorno de pruebas

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 17 / 29

Experimentación

Ubuntu 16.04 x64Intel Core i7-4720HQ @ 2.60GHz12GiB RAMSSD SATA3HDD @ 5400 RPM USB 3.0

Máquina host

Windows 7 32 (x86) y 64 bits (x64)Windows 10 32 (x86) y 64 bits (x64)

Máquinas Virtuales

Sistema operativo (winlogon, svchost, explorer)Software adicional:

Navegador Web (IE, Edge, Chrome, Firefox)Lector de PDF (Acrobat Reader)

Malware:POS RAM Scrapper (ALINA)

Procesos

Se van a considerar 4 casos

Page 68: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Resultados – caso A

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 18 / 29

Experimentación

ALIN

A

Acr

oRd3

2

chro

me

expl

orer

firef

ox

iexp

lore

svch

ost

win

logo

n0

50

100

Rat

io d

e si

mil

itu

d

ALIN

A

Acr

oRd3

2

chro

me

expl

orer

firef

ox

iexp

lore

svch

ost

win

logo

n0

50

100

Rat

io d

e si

mil

itud

ALIN

A

Acr

oRd3

2

chro

me

expl

orer

firef

ox

iexp

lore

svch

ost

win

logo

n0

50

100

Rat

io d

e si

mil

itud

ALIN

A

Acr

oRd3

2

chro

me

expl

orer

firef

ox

iexp

lore

svch

ost

win

logo

n0

50

100

Rat

io d

e si

mil

itud

ALIN

A

Acr

oRd3

2

chro

me

expl

orer

firef

ox

iexp

lore

svch

ost

win

logo

n0

50

100

Rat

io d

e si

mil

itud

Win7-x86-.text

Win7-x64-.text Win7-x64-pe

Win7-x86-pe

Win7-x86-.rsrc

Misma máquina, mismo ejecutable, distinta ejecución

Page 69: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Resultados – caso B

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 19 / 29

Experimentación

x86-.text

x64-.text x64-pe

x86-pe

x86-.rsrc

Mismo programa y arquitectura, distinto SO

ALIN

A

Acr

oRd3

2

chro

me

expl

orer

firef

ox

svch

ost

win

logo

n0

50

100

Rat

io d

e si

mil

itu

d

ALIN

A

Acr

oRd3

2

chro

me

expl

orer

firef

ox

svch

ost

win

logo

n0

50

100

Rat

io d

e si

mil

itu

d

ALIN

A

Acr

oRd3

2

chro

me

expl

orer

firef

ox

svch

ost

win

logo

n0

50

100

Rat

io d

e si

mil

itu

d

ALIN

A

Acr

oRd3

2

chro

me

expl

orer

firef

ox

svch

ost

win

logo

n0

50

100

Rat

io d

e si

mil

itu

d

ALIN

A

Acr

oRd3

2

chro

me

expl

orer

firef

ox

svch

ost

win

logo

n0

50

100

Rat

io d

e si

mil

itu

d

Page 70: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

win7-.text win7-pe

win10-.text

ALIN

A

Acr

oRd3

2

Mic

roso

ftEdg

e

chro

me

expl

orer

firef

ox

svch

ost

win

logo

n0

50

100

Rat

io d

e si

mil

itud

win7-.rsrc

ALIN

A

Acr

oRd3

2

Mic

roso

ftEdg

e

chro

me

expl

orer

firef

ox

svch

ost

win

logo

n0

50

100

Rat

io d

e si

mil

itud

Resultados – caso C

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 20 / 29

Experimentación

win10-pe

Mismo programa y SO, distinta arquitectura

ALIN

A

Acr

oRd3

2

chro

me

expl

orer

firef

ox

iexp

lore

svch

ost

win

logo

n0

50

100

Rat

io d

e si

mil

itu

d

ALIN

A

Acr

oRd3

2

chro

me

expl

orer

firef

ox

iexp

lore

svch

ost

win

logo

n0

50

100

Rat

io d

e si

mil

itu

d

ALIN

A

Acr

oRd3

2

chro

me

expl

orer

firef

ox

iexp

lore

svch

ost

win

logo

n0

50

100

Rat

io d

e si

mil

itu

d

Page 71: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Resultados – caso D

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 21 / 29

Experimentación

Win7-x86-.text

Win7-x64-.text Win7-x64-pe

Win7-x86-pe

Win7-x86-.rsrc

Mismo programa y misma máquina, distinta versión

chrom e firefox0

50

100

Rat

io d

e si

mil

itud

chrom e firefox0

50

100

Rat

io d

e si

mil

itud

chrom e firefox0

50

100

Rat

io d

e si

mil

itud

chrom e firefox0

50

100

Rat

io d

e si

mil

itud

chrom e firefox0

50

100

Rat

io d

e si

mil

itud

Page 72: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Herramientas y publicaciones

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 22 / 29

Trabajo relacionado

Page 73: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Herramientas y publicaciones

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 22 / 29

Trabajo relacionado

Malfunction: Análisis de funcionesBinwally: Detección de cambios entre versiones de software

Herramientas

Page 74: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Herramientas y publicaciones

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 22 / 29

Trabajo relacionado

Malfunction: Análisis de funcionesBinwally: Detección de cambios entre versiones de software

Herramientas

[SBAAN16] Evaluación de algoritmos fuzzy hash[NMAM+16] Análisis estático de ejecutables[AS15] Malware → JPEG. Clusterización.

Publicaciones

Page 75: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Conclusiones

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 23 / 29

Conclusiones y líneas futuras

Page 76: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Conclusiones

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 23 / 29

Conclusiones y líneas futuras

Mejor algoritmo: dcfldd (BBH)TLSH (LSH) irregularSdhash (SIF) y ssdeep (CTPH) similar (ssdeep más ceros)

Page 77: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Conclusiones

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 23 / 29

Conclusiones y líneas futuras

Mejor algoritmo: dcfldd (BBH)TLSH (LSH) irregularSdhash (SIF) y ssdeep (CTPH) similar (ssdeep más ceros)

Mejor sección: datos sólo lecturaSección de código en segundo lugar, ejecutable completo últimoSección de código en x64 casi como datos lecturaVariaciones en código muy dependiente del programa

Page 78: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Conclusiones

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 23 / 29

Conclusiones y líneas futuras

Mejor algoritmo: dcfldd (BBH)TLSH (LSH) irregularSdhash (SIF) y ssdeep (CTPH) similar (ssdeep más ceros)

Mejor sección: datos sólo lecturaSección de código en segundo lugar, ejecutable completo últimoSección de código en x64 casi como datos lecturaVariaciones en código muy dependiente del programa

ProgramasALINA no supera el 50%Procesos de sistema dan resultados excelentescaso AVersiones del mismo software varían mucho salvo en datos de lectura

Page 79: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Líneas futuras

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 24 / 29

Conclusiones y líneas futuras

Page 80: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Líneas futuras

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 24 / 29

Conclusiones y líneas futuras

Independencia de otros plugins

Page 81: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Líneas futuras

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 24 / 29

Conclusiones y líneas futuras

Independencia de otros plugins

Paralelización completa

Page 82: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Líneas futuras

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 24 / 29

Conclusiones y líneas futuras

Independencia de otros plugins

Paralelización completa

Implementación de más algoritmos

Page 83: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Líneas futuras

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 24 / 29

Conclusiones y líneas futuras

Independencia de otros plugins

Paralelización completa

Implementación de más algoritmos

Extender herramienta para hash de otras

partes de la cabecera

Page 84: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Líneas futuras

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 24 / 29

Conclusiones y líneas futuras

Independencia de otros plugins

Paralelización completa

Implementación de más algoritmos

Extender herramienta para hash de otras

partes de la cabecera

Estudiar otras partes de un proceso

Page 85: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Líneas futuras

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 24 / 29

Conclusiones y líneas futuras

Independencia de otros plugins

Paralelización completa

Implementación de más algoritmos

Extender herramienta para hash de otras

partes de la cabecera

Estudiar otras partes de un proceso

Evaluación de rendimiento de algoritmos

Page 86: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Líneas futuras

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 24 / 29

Conclusiones y líneas futuras

Independencia de otros plugins

Paralelización completa

Implementación de más algoritmos

Extender herramienta para hash de otras

partes de la cabecera

Estudiar otras partes de un proceso

Evaluación de rendimiento de algoritmos

Ampliar a más tipos de malware

Page 87: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Trabajo Fin de Grado – Grado en Ingeniería InformáticaEscuela de Ingeniería y Arquitectura

Universidad de Zaragoza

Evaluación de algoritmos de fuzzy hashing para similitud entre procesos

Director: Ricardo J. Rodríguez

Septiembre de 2017

Curso 16/17

Iñaki Abadía Osta

Ponente: José Merseguer Hernáiz

Page 88: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Horas de trabajo

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 26 / 29

Anexos

w. 06 w. 07 w. 08 w. 09 w. 10 w. 11 w. 12 w. 13 w. 14 w. 15 w. 16 w. 17 w. 18 w. 19 w. 20 w. 21 w. 22 w. 23 w. 24 w. 25 w. 26 w. 27 w. 28 w. 29 w. 30 w. 31 w. 32 w. 33 w. 34

Lanzamiento

Planificación del diseño

Planificación de implementación

Planificación de memoria

Reunión final

Estado del Arte

Algoritmos de Fuzzy Hash

Volatility

Plugins de Volatility

Arquitectura de alto nivel

Arquitectura de implementación

Plugin de Volatility

Algoritmos de Fuzzy Hash

Preparación de entorno

Extracción de hashes

Comparación de hashes

LaTeX setup

Redacción

Figuras

Reuniones

Investigación

Aprendizaje

Diseño

Implementación

Experimentación

Memoria

Page 89: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Horas de trabajo

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 27 / 29

Anexos

Aprendizaje

Diseño e Implemen tación

Experimentación

Investigación

Memoria

Reuniones

Tare

as

0 10 20 30 40 50 60 70 80 90 100

Horas

15

30.5

55

72.5

90.5

37.5

Page 90: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Horas de trabajo

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 27 / 29

Anexos

Aprendizaje

Diseño e Implemen tación

Experimentación

Investigación

Memoria

Reuniones

Tare

as

0 10 20 30 40 50 60 70 80 90 100

Horas

15

30.5

55

72.5

90.5

37.5

Total: 301 horas

Page 91: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Bibliografía I

I. Abadía Osta Evaluación de algoritmos de fuzzy hashing para similitud entre processos 28 / 29

Anexos

[AT17] AV-TEST. Malware statistics. https://www.av-test.org/en/statistics/malware/, 2017. [Online; accedido 26 de Julio de 2017].

[SBAAN16] N. Sarantinos, C. Benzaïd, O. Arabiat, and A. Al-Nemrat. ForensicMalware Analysis: The Value of Fuzzy Hashing Algorithms in IdentifyingSimilarities. In 2016 IEEE Trustcom/BigDataSE/ISPA, pages 1782-1787, Aug2016.

[NMAM+16] A. P. Namanya, Q. K. A. Mirza, H. Al-Mohannadi, I. U. Awan, and J. F. P. Disso. Detection of Malicious Portable Executables Using EvidenceCombinational Theory with Fuzzy Hashing. In 2016 IEEE 4th International Conference on Future Internet of Things and Cloud (FiCloud), pages 91-98, Aug2016.

[AS15] M. Arefkhani and M. Soryani. Malware clustering using image processing hashes. In 2015 9th Iranian Conference on Machine Vision and Image Processing (MVIP), pages 214-218, Nov 2015.

Page 92: Evaluación de algoritmos de fuzzy hashing para similitud ...webdiis.unizar.es/~ricardo/files/PFCs-TFGs/Fuzzy-Hashing-Procesos/... · I. Abadía Osta Evaluación de algoritmos de

Trabajo Fin de Grado – Grado en Ingeniería InformáticaEscuela de Ingeniería y Arquitectura

Universidad de Zaragoza

Evaluación de algoritmos de fuzzy hashing para similitud entre procesos

Director: Ricardo J. Rodríguez

Septiembre de 2017

Curso 16/17

Iñaki Abadía Osta

Ponente: José Merseguer Hernáiz