cómo detectar un virus encriptado

1

un código de virus (x bytes de longitud) está XORed con una palabra de x bytes de longitud (lo llamamos T). Esta palabra T se construye repitiendo varias veces una clave secreta de 8 bytes.

el archivo infectado contiene este código de virus XORed (ofuscado), la clave secreta de 8 bytes y un cargador. No sabemos la ubicación de esas 3 entidades dentro del archivo. El cargador, cuando se ejecuta, usa la clave secreta para compilar T y extraer el código del virus.

Si tengo el código de virus original (pero no el cargador ni la clave secreta), ¿cómo puedo determinar si un archivo está infectado?

    
pregunta 26.05.2015 - 13:39
fuente

2 respuestas

3

No puedes. Deberá detectar el cargador y marcar todos los archivos que contengan el virus como virus, o detectar dónde está T y el área cifrada y descifrar el área cifrada para verificar si el área cifrada contiene el virus que está buscando.

    
respondido por el Lie Ryan 26.05.2015 - 14:04
fuente
1

Hay algunas posibilidades.

Primero, si un explorador de virus puede descubrir el cargador. Para esto, es necesario que el escáner de virus reconozca al cargador como una pieza de malware conocido.

Segundo, si hay un sistema implementado para descubrir la manipulación de archivos, es posible que descubras que el archivo infectado se modificó.

Finalmente, si por alguna razón está seguro de que este ataque en particular está ocurriendo, puede ir a cada archivo sospechoso, capturar cada secuencia de 8 bytes en el archivo, y XOR con cada secuencia de 8 bytes en el archivo hasta que encuentre el código de virus real.
Si no sabes T, primero deberías probar T = 1, luego intentar T = 2, y así sucesivamente.
El proceso tiene una complejidad de tiempo cuadrática. El creador del virus puede causar que tenga una complejidad factorial al distribuir las partes de la clave sobre el archivo, no ponerlas en secuencia.

    
respondido por el S.L. Barth 26.05.2015 - 14:20
fuente

Lea otras preguntas en las etiquetas