NOD32 protege su mundo digital
   
    Sala de Prensa
    Introducción
    Últimas noticias
    Noticias antiguas
    Últimas distinciones
    Análisis comparativos
    Análisis estadísticos
    Documentos
    • Análisis heurístico:
   Detectando
   virus desconocidos
    •• Conclusión:
   Una paradoja heurística
    Glosarios
    Medidas de protección
adicionales
    Enciclopedia Virus
    Noticias RSS Suscriba esta dirección a su lector RSS
 
 
Documentos complementarios sobre ESET NOD32 Antivirus y virus
 
En esta sección se publican documentos, opiniones y literatura técnica que amplian la información sobre las capacidades de ESET NOD32 Antivirus así como sobre la problemática de los virus y código malicioso en general, y su incidencia sobre la seguridad de los ordenadores y sus usuarios.
 
Análisis heurístico: Detectando virus desconocidos
Conclusión: Una paradoja heurística
 
Nota Este documento ha sido dividido en numerosas secciones para facilitar su lectura
        y está disponible para su descarga completa en formato PDF. Documento en formato PDF
Es interesante destacar que, aun a pesar de que la tecnología heurística es más sofisticada ahora que en los noventa, las tasas de detección generales han disminuido dramáticamente, mientras que las de los códigos maliciosos de “la vieja escuela” (macro virus, correo masivo, etc.) se mantienen impresionantemente altas.

Si bien se sugiere con frecuencia que esta disminución general se debe a la ineficacia de la industria antivirus, o a su deseo de aferrarse a un modelo de detección de virus específicos, no es esta la causa del problema.

Un factor importante que contribuye con esta situación es la creciente sofisticación de los autores de código malicioso, que han desarrollado un amplio rango de enfoques para minimizar la susceptibilidad de sus productos a la detección heurística, y que prueban su eficacia en base a analizadores adecuadamente actualizados y configurados.

El problema es más conflictivo ahora que hace unos pocos años atrás, cuando se consideraba (al menos por los desarrolladores) una especie de bonificación adicional si un producto antivirus detectaba algo más que virus.

Actualmente, los virus (por ejemplo los programas con una funcionalidad multiplicativa identificable), son solo una porción muy pequeña del conjunto de programas maliciosos [17].

En cierto sentido, esto dificulta mucho más el trabajo de los analizadores: conceptualmente es simple detectar un virus heurísticamente si se puede desenmarañar suficientemente el código para determinar que su intención es multiplicarse, aunque no siempre es técnicamente posible detectar un programa de este tipo.

Determinar automáticamente que un programa es un robot (bot), o cierta clase de troyano, o simplemente malicioso, es un desafío mucho mayor. [5]

Analicemos el ejemplo clásico: una aplicación que formatea un disco no es malicioso por definición, de hecho, tal vez esa sea su función única y evidente.

Sin embargo, si el usuario del ordenador ejecuta este programa, creyendo que verá una película o que mejorará su acceso a Internet, es razonable considerarlo malicioso.

El problema real en este tipo de casos, reside en establecer un algoritmo que discrimine en base al conocimiento que tiene el usuario acerca del propósito de la aplicación, y de la intención del programador, más que analizando una característica del código.

Si no podemos establecer una heurística confiable para distinguir los intentos maliciosos, de todos modos podemos aplicar otro tipo de heurística y asignar un puntaje conveniente a cada programa.

Una aplicación cuyo código tiene un parecido cercano a un programa malicioso conocido, tendrá un puntaje alto.
Existen muchos comportamientos diferentes que pueden disparar señales de alerta, de acuerdo al contexto, por ejemplo al abrir un canal de IRC, o un SMTP (Simple Mail Transfer Protocol, Protocolo simple de  transferencia de correo electrónico) o un mecanismo de transferencia de archivos.

El análisis de los archivos ejecutables puede señalar muchas irregularidades de la codificación, tales como parches sospechosos y combinaciones de marcas, inconsistencias en el encabezado, indicaciones de diferencias de tamaño, y demás.

El contexto más amplio, en el cual se descubre un programa posiblemente malicioso, también puede brindar claves sobre su naturaleza.

El análisis de los mensajes podría indicar similitudes con algún programa de envío de correo masivo conocido, o un troyano que se disemina por este medio.
Incluso, podría contener información útil, como la contraseña de un archivo cifrado.

A pesar de que algunos analizadores tienen esta capacidad, sería demasiado optimista esperar que un motor de análisis heurístico busque automáticamente una frase de acceso secreta (passphrase), especialmente en un mensaje con un alto porcentaje de contenido gráfico.
Las posibilidades de detectar este tipo de frases podría ser más alto en un mensaje que se parece a otros mensajes maliciosos.

Los mensajes que transportan programas dañinos, o localizadores de recursos (URL, Uniform Resource Locator) también podrían parecerse a otros tipos de medios maliciosos, como correos masivos o mensajes de falsificación de sitios.

Los programadores de virus y de aplicaciones de envío de correo no deseado, han estado compartiendo técnicas entre sí durante muchos años: la evidencia muestra una creciente confluencia de intereses entre estos dos grupos anteriormente disímiles.

A menudo se espera que los analizadores de correo electrónico detecten este, y otros tipos de abuso, además del código malicioso puro.

Los análisis de tráfico, podrían mostrar patrones asociados con actividad maliciosa, como aplicaciones de envío de correo masivo, correo no deseado y fraudes generados por botnets (redes de ordenadores robot) y demás.

Por estas razones, el análisis (heurístico o no) de las puertas de enlace en busca de correo basura, puede sumar un aporte considerable a la eficacia de la detección de código malicioso.

Sin embargo, es absolutamente falso creer que en un futuro cercano veremos los altos porcentajes de detecciones proactivas que obteníamos en los primeros días del análisis heurístico, por mucho que les pese a los usuarios y a los desarrolladores.

Los autores de código malicioso tienen otras prioridades.
Más que en un enfoque expansivo (máxima diseminación de una sola variante), ahora su técnica se basa en breves ráfagas de una determinada instancia de código malicioso, que podría estar dirigido a individuos o grupos específicos.

Aun pequeños cambios como una rápida serie de rutinas en tiempo de ejecución diseñadas para modificar las huellas de un programa, pueden reducir la detección (heurística o no) y limitar los recursos incluso en los laboratorios más grandes del rubro.

Las formas de código malicioso que utilizan tecnología botnet frecuentemente, para actualizarse y modificarse a sí mismas, son muy difíciles de detectar una vez que se han instalado en un ordenador comprometido.

Sin embargo, no hay motivos para entrar en pánico: hemos convivido con estos problemas durante muchos años.
La higiene sensata del ordenador, las buenas prácticas de emparchado, y las actualizaciones frecuentes de las aplicaciones contra código malicioso aún brindan una buena protección.     

No solamente eso: la sofisticación cada vez mayor de las técnicas de virtualización y emulación, junto con el análisis heurístico, siguen siendo un componente poderoso y en continuo perfeccionamiento del arsenal de la industria de seguridad.

Sin embargo, ni los desarrolladores de aplicaciones antivirus, ni los adeptos a las tecnologías alternativas del momento pueden asegurar que son capaces de detectar todas las amenazas futuras proactivamente.

La clave, entonces, radica en mantener las expectativas dentro de límites realistas.

 
Actualizado: 14-May-2008 12:59
Ontinet.com, S.L.