Los creación de un programa malicioso, al igual que con cualquier otra aplicación, implica toda una metodología propia de su diseño e implementación. Esta metodología de desarrollo, denominada ciclo de vida, está constituida por una serie de etapas, siendo la creación del malware la que da inicio a este ciclo.
Básicamente este ciclo de vida involucra las siguientes etapas:
- Creación: La mayoría de las veces, la creación de códigos maliciosos comienza con una propuesta, por lo general llevada a cabo por parte de una comunidad de personas malintencionadas o que persiguen fines delictivos. Generalmente, se busca el desarrollo de este tipo de códigos con el objetivo de explotar y aprovechar alguna nueva vulnerabilidad o, más recientemente, con el propósito de hacer dinero.
.
- Desarrollo: Se cree erróneamente que la creación de programas maliciosos requiere conocimientos profundos de algún lenguaje de programación, pero en la actualidad existen muchas herramientas que permiten crear programas que tengan la capacidad de realizar ataques al sistema.
.
- Réplica: Una vez que el malware ha sido desarrollado, se utiliza algún método para su difusión. Por lo general, los mecanismos de propagación elegidos responden a formas de comunicación masiva; entre las cuales, las más comunes están representadas por el correo electrónico y las redes P2P. Es importante destacar que quien desarrolla el programa no necesariamente es el mismo que lo propaga.
.
- Entrega de la carga: También llamado Payload. Esta etapa es una de las más importantes y siempre, obedeciendo a la esencia de un malware, resulta dañino. Esta carga se puede activar mediante un método condicional (cuando el usuario realiza una determinada acción, cuando el reloj del equipo marca una fecha en particular, etc.) o bien, en forma directa (cuando el malware comienza a desplegar su carga dañina en el momento en que se completa su infección).
.
A partir de la liberación del código para su propagación, queda en mano de las casas antivirus su descubrimiento y detección antes de que cause algún daño al usuario:
- Individualización: Es a partir de este momento que las firmas antivirus detectan la propagación e individualizan el código malicioso para luego proceder a crear la firma (su huella digital) que lo identificará unívocamente.
.
- Detección heurística: Es deseable que un programa antivirus sea capaz de detectar un código dañino en forma inteligente y proactiva, sin que el mismo sea agregado a la base de firmas. Con esto se logra una protección efectiva sin realizar tareas adicionales en el laboratorio ni en el producto instalado por el cliente.
.
- Detección por firmas: Después de identificar la amenaza, los desarrolladores de soluciones antivirus analizan el código para encontrar un método de detección adecuado y actualizar la base de firmas. Este debe ser un proceso rápido y fundamental para controlar un ataque y debería ser la situación deseada: detectar el malware para evitar que el sistema del usuario sea dañado.
.
- Eliminación: Esta última etapa se efectiviza cuando se ponen a disponibilidad del usuario final las actualizaciones correspondientes para detectar y erradicar las acciones provocadas por el programa malicioso.
Como se podrá observar, es de vital importancia mantener actualizados nuestros software base y antivirus, no sólo para protegernos de futuros ataques sino también para limpiar nuestra computadora si ya ha sido infectada.
Por otro lado, la constante evolución y modificación de estos programas maliciosos son modificaciones del código original que se realizan para evitar ser detectados y eliminados; por lo tanto, una herramienta antivirus cuyo análisis esté basado sólo en firmas, y no integre capacidades de heurística, puede ser de poca utilidad a la hora de prevenir el accionar de nuevos códigos maliciosos.
Fuente: Forospyware