| Basándose en la técnica de Autoencriptación, el virus se codifica o cifra de manera diferente en cada infección que realiza (su firma variará de una infección a otra). Si sólo fuese así estaríamos hablando de un virus que utiliza el cifrado, de un virus encriptado, pero adicionalmente el virus cifrará también el modo (rutina o algoritmo) mediante el cual realiza el cifrado de su firma. Todo esto hace posible que el virus cree ejemplares de sí mismo diferentes de una infección a la siguiente, cambiando de "forma" en cada una de ellas.
Uno de los tipos de cifrados más comunes se realiza mediante la aplicación de la operación lógica XOR (OR-Exclusive -> a XOR b = a’b + ab’), utilizando la clave de cifrado como uno de los operandos.
Además de modificar la firma o clave de cifrado en cada una de las infecciones, el virus también es capaz de modificar la rutina o modo mediante el cual realiza su propio cifrado o codificación. Para ello emplea diferentes caminos en las modificaciones de su código: saltos a otras secciones de código, inclusión de instrucciones que no realizan ninguna operación, etc.
El sistema empleado por los programas antivirus para detectar al virus es la simulación del descifrado. De esta forma, tratan de localizar la rutina que permite decodificar, desencriptar o descifrar el virus. Ésta debería ser siempre la misma e identifica al virus (en lugar de su firma u otras características).
|