Mates aplicadas 8. Funciones hash convencionales y de lógica difusa.

Los antivirus utilizan diversos métodos estáticos y dinámicos para decidir si un determinado archivo es o no malicioso.

Entre los métodos dinámicos se encuentran las funcions hash o resumen, que ya introdujimos en posts anteriores de la serie de Matemáticas aplicadas. 


Al final del post incluiré un video de un curso de Criptología en el que se destripa un algoritmo de cifrado, en concreto el DES.

De momento observamos que el algoritmo de Hash cambia totalmente el resultado frente a la más mínima alteración del original.




Estos ejemplos han sido realizados en onlinemd5.com

El problema que podemos intuir es el siguiente. Los AV toman una parte de un malware, realizan una función hash (normalmente CRC o MD5) y utilizan este dato para marcar ese malware en concreto.

Si el diseñador de malware encuentra la zona "reconocida" de su creación y la modifica, el nuevo hash resultará radicalmente distinto y el malware se volverá virtualmente invisible.

Este problema queda diluido con las funciones hash de lógica difusa; como ssdeep.

En este caso una pequeña variación del archivo original, provocará una pequeña variación del hash y se podrá relacionar el segundo malware con el primero; e incluso caracterizar familias de malwares muy similares.

El siguiente ejemplo ejecutado en ssdeep ha utilizado los mismos textos que en el caso anterior.




Se observa que el cambio del espacio añadido tras "Mancha" y la "d" no han provocado un cambio tan radical. 

De hecho en la comparación se la asigna a ambos hashes una puntuación  de semejanza de 12 puntos.

Comentarios

Entradas populares