Repercusiones de las pruebas dinámicas

Todo aquel que de alguna manera sea parte de la industria antimalware sabe que el asunto de las pruebas de campo a las que se someten los productos antivirus es actualmente muy controversial, en particular debido a la formación, a principios de este año, de la Organización de patrones de pruebas antimalware, conocida como AMTSO, su sigla en inglés.

El presente artículo no pretende en modo alguno ser el enésimo de su clase que describa la manera en que deberían realizarse las pruebas. Sin embargo, intenta remarcar una consecuencia potencial de la atención actualmente puesta en las pruebas dinámicas: la posibilidad de que la cada vez mayor concentración en las pruebas dinámicas motive a los autores de programas nocivos (malware) a que dediquen mayores esfuerzos a encontrar formas de eludir la capacidad de protección de los productos y no sólo sus mecanismos de detección.

En este artículo se recurre a distintos ejemplos y escenarios para evaluar los riesgos que conllevan las pruebas dinámicas. También se plantean varias sugerencias a los diseñadores de las pruebas sobre las formas de mitigar los riesgos.

Métodos de pruebas

Antes de evaluar los riegos asociados con las pruebas dinámicas, es necesario, en primer lugar, dar un vistazo a otros métodos de pruebas.

Pruebas estáticas

Estas son las pruebas más directas: se ejecuta un análisis a petición sobre una colección de programas nocivos. Para lograr resultados significativos, cualquier moderna prueba estática debe usar una colección de miles de muestras de malware; en este sentido, las pruebas realizadas por entidades como AV-Test y AV-Comparatives suelen contener cientos de miles de muestras, y en algunos casos, más de un millón de muestras.

Puesto que las colecciones de muestras (especimenes de malware) usadas en las pruebas son tan voluminosas, los resultados contienen pocos o ningún detalle que pueda servir a los autores de programas nocivos a mejorar sus creaciones.

Otro aspecto que debe tenerse en cuenta al realizar pruebas estáticas es la forma en que se clasifica la colección para la prueba. Algunas pruebas que no gozan de mucha credibilidad parecen haberse conducido con una enorme pila de muestras sin ningún tipo de orden, y aunque los diseñadores de la prueba hayan enumerado internamente los resultados de distintas series de subpruebas, esto sigue siendo considerado como una mala práctica de pruebas.

Otras pruebas que merecen mayor credibilidad, hacen una correcta diferenciación al publicar sus resultados. Clasifican sus colecciones de muestras en subgrupos, como virus, gusanos y troyanos, y publican los resultados correspondientes a cada subgrupo. Algunas pruebas van más allá e intentan diferenciar, por ejemplo, los troyanos-puertas traseras (backdoors) de los troyanos espía.

Aunque esto proporciona un mayor nivel de detalle, no llega a proporcionar mayor información útil a los autores de malware. El único riesgo posible que conllevan las pruebas estáticas proviene de aquellas que consideran la efectividad con que los productos detectan malware polimorfo o metamorfo. Estas pruebas pueden evidenciar debilidades en ciertos productos.

Sin embargo, los programas nocivos polimorfos o metamorfos son, por su naturaleza, más difíciles de detectar que el malware estático, y si un autor de malware depende de los resultados de una prueba para averiguarlo, posiblemente se trate de uno incompetente. Ahora bien, los delincuentes que carecen de habilidad suficiente para elaborar malware polimorfo tiene la posibilidad de adquirirlo en el mercado clandestino y comprar un código o poner un aviso solicitando alguien capaz de crearlo.

Pruebas de tiempo de respuesta

Aunque las pruebas de tiempo de respuesta son poco frecuentes hoy en día, vale la pena considerarlas. Fueron muy populares en la época de los grandes estallidos de gusanos de correo. Los programas nocivos NetSky, Bagle, Mydoom, Sober y Sobig son clásicos ejemplos de ese periodo.

En contraposición a las pruebas estáticas, el volumen de las muestras usadas en las pruebas de respuesta es muy pequeño. Un tipo de prueba de tiempo de respuesta mide el rendimiento general de los fabricantes de soluciones antivirus en base a una serie mayor, aunque todavía relativamente pequeña1. Este tipo de prueba no muestra los resultados de muestras individuales. El segundo tipo de prueba mide el tiempo de detección
de cada2.

Los resultados específicos de cada muestra pueden ser de gran ayuda para los autores de malware. Se puede especular que la publicación de los resultados de las pruebas de tiempo de respuesta haya inducido a que los autores de programas nocivos se esfuercen en hacer mucho más difíciles de detectar sus creaciones. Un claro ejemplo lo constituye el W32/Sober.K3, que agregó basura aleatoria al final de su archivo durante la instalación en un intento deliberado por debilitar la detección antivirus. Es muy posible que el autor haya introducido esta funcionalidad tras su insatisfacción con los resultados de las pruebas de tiempo de respuesta de anteriores variantes de Sober.

Los resultados de las modernas pruebas de tiempo de respuesta se publican de una manera más genérica haciendo muy poca referencia a muestras específicas. Esto disminuye notablemente el riesgo de que los autores de malware puedan aprovechar la información.

Pruebas retrospectivas

En las pruebas retrospectivas se somete a prueba un producto no actualizado usando con muestras de programas nocivos posteriores a la última actualización, pero más allá de su propósito (investigar la capacidad del producto para detectar muestras desconocidas) y de la antigüedad de las actualizaciones, las pruebas retrospectivas no difieren de las pruebas estáticas. El nivel de riesgo que presenta este tipo de pruebas es muy bajo, parecido al de las pruebas estáticas normales.

Pruebas dinámicas

En las pruebas dinámicas, se ejecutan muestras de malware en el sistema sometido a pruebas. Debido a que el proceso de ejecutar cada una de las muestras consume considerable cantidad de tiempo, sólo se puede usar un reducido número de muestras en estas pruebas. AMTSO publicó un documento que explica en detalle en qué consisten las pruebas dinámicas (http://www.amtso.org/documents.html).

En condiciones ideales, las muestras se deberían introducir en el sistema en la forma “correcta”, por ejemplo, a través de descargas del tipo “drive-by”. Incluso si se automatiza el proceso, se trata de una tarea que consume gran cantidad de tiempo, circunstancia agravada por el hecho de que no se debe usar máquinas virtuales para obtener resultados válidos.

Hoy en día, el número de muestras incluidas en las pruebas se cuenta por docenas. Con el tiempo, con mejor hardware y procesos optimizados, podemos esperar que el número de pruebas llegue a cientos. Sin embargo, el riesgo al que se expone la industria con la introducción de las pruebas dinámicas es mucho mayor que el proveniente de cualquier otro tipo de pruebas comunes.

Una gran parte de la industria gasta enormes sumas de dinero en capacitar a su gente en (nuevas) tecnologías proactivas, y AMTSO ha hecho muchos esfuerzos para compilar las mejores prácticas para las pruebas dinámicas (http://www.amtso.org/documents.html). Suele decirse que el enfoque de los diseñadores de las pruebas sólo en los índices de detección está pasado de moda, y que actualmente deberían considerar también las medidas de protección.

Sin duda alguna, los autores de malware también siguen con mucha atención todas estas peripecias.

Los tiempos cambian

Hace unos cinco años, Symantec incorporó una característica de protección llamada “antigusano” en sus productos Norton. Se trataba de un sistema de comportamiento que detectaba gusanos de manera proactiva. Symantec estimaba tener que actualizar su tecnología en no más de seis meses después de su lanzamiento para mantener su efectividad contra el evolutivo malware. Sin embargo, nunca tuvieron que actualizarlo4. Los autores de malware o bien desconocían esta tecnología, no se molestaron en evadirla, o no pudieron hacerlo.

En mayo de 2006, Kaspersky Lab lanzó la versión 6 de su línea de productos que introducía un bloqueador de comportamiento de nueva generación. Seis meses después se tuvo que lanzar un parche porque las nuevas variantes de la familia troyana LdPinch estaban burlando la tecnología que en un principio era capaz de detectarlos.

¿Cuál era la diferencia entre los dos bloqueadores de comportamiento? El “antigusano” se introdujo en la era de las grandes epidemias de malware, provocadas, por lo general, por autores en busca de notoriedad. Hasta 2006 la mayoría de los programas nocivos o malware que circulaban en Internet tenían fines lucrativos, incluyendo LdPinch. Otro aspecto a tener en cuenta es que Kaspersky Lab es una compañía rusa y que LdPinch era una creación también rusa, dirigida en particular al mercado ruso.

Sin embargo, puede darse una tercera explicación a esta diferencia (aunque debe notarse que el autor de este artículo está lejos de ser experto en marketing): parecería que Kaspersky Lab invirtió más recursos en el marketing de su bloqueador de comportamiento que Symantec cuando introdujo su “antigusano”, por lo que los autores de programas maliciosos estaban más al corriente del producto de Kaspersky y se esforzaron más en neutralizarlo.

Multi-scanners

Los multi-scanners, o analizadores múltiples, son otra interesante muestra de que los autores de malware utilizan servicios legítimos para obtener información que sirva a sus propósitos particulares. Los multi-scanners en línea gozan hoy de gran popularidad, destacándose entre ellos JottiScan y VirusTotal.

El servicio que estos sitios web proporcionan permite al usuario cargar un archivo y someterlo al análisis de una amplia serie de scanners para ver lo que diferentes productos detectan, si logran detectar algo.

Estos servicios también gozan de cierta popularidad entre los autores de malware que los usan para probar sus últimas creaciones y ver si son capaces de burlar la detección. Mientras que algunos fabricantes de soluciones antimalware proporcionan a los sitios de multi-scanners los más modernos scanners y piden al encargado que haga uso de los parámetros más estrictos para detectar la mayor cantidad posible de programas nocivos, otros vendedores no ofrecen sus más recientes scanners a estos sitios. También pueden solicitar al encargado que utilice parámetros menos estrictos, de manera que el producto detecte menos programas nocivos de lo que es capaz en su aplicación en el mundo real5, con el fin de no revelar su verdadera capacidad de detección.

Repercusiones de la clandestinidad

Hoy en día, los programas nocivos capaces de burlar los sistemas de detección ya no son escasos. Sin embargo, la vasta mayoría de los autores de malware siguen concentrándose sólo en evadir los mecanismos de detección.

Algunos productos antimalware ofrecen poco en cuanto a medidas de protección, lo que significa que burlar su capacidad de detección equivale burlar todo el producto. Entonces, no resulta extraño ver muestras de malware Win32 PE enmarañadas (obfuscated) de tal modo que se tarda un par de minutos en descifrarlas en un procesador Core 2 Duo funcionando a 2500 Mhz.Sin embargo, las mismas muestras de malware se pueden detectar de manera proactiva usando la tecnología de bloqueo de comportamiento, disponible desde hace dos años6.

No quedan dudas de que el actual revuelo alrededor de las tecnologías de protección y las pruebas dinámicas está haciendo que los autores de malware presten mayor atención a estas tecnologías. Con el alboroto que actualmente genera el tema, es posible que crezca el número de autores de malware interesados.

Hay varios posibles escenarios que pueden darse: Primero, es probable que se formen nuevos grupos clandestinos cuyo objetivo sea proporcionar los medios necesarios para que los programas nocivos evadan las tecnologías de protección. Segundo, pueden surgir nuevos mercados para multi-scanners perfeccionados que prueben las tecnologías de protección de los productos así como su capacidad de detección. El gran desafío que conlleva el malware que burla las tecnologías de protección es el arreglar las brechas explotadas por los autores de malware. Mientras los fabricantes de soluciones antimalware pueden lanzar una nueva actualización de firmas en cuestión de horas o incluso de minutos, eliminar las brechas requiere de más tiempo (estamos hablando de un tiempo de respuesta de semanas en vez de días, sin mencionar ya las horas).

¿Qué pueden hacer los diseñadores de las pruebas?

Revelar los detalles de los resultados de las pruebas de cada muestra es una idea mucho más peligrosa con las pruebas dinámicas que con las pruebas de tiempo de respuesta. Mientras que existe un riesgo bajo o moderado en revelar muchos detalles con las pruebas de tiempo de respuesta, este riesgo se torna muy alto con las pruebas dinámicas.

Contar con un limitado número de muestras para las pruebas significa que las muestras sometidas a prueba deben ser muy relevantes. Si los diseñadores de pruebas se proponen publicar los resultados de cada prueba importante, incluyendo información sobre el rendimiento de los productos individuales en las pruebas, entonces se estaría poniendo en manos de los autores de programas nocivos datos extremadamente valiosos, ya que les revelaría contra qué productos necesitan mejorar sus creaciones.

Virus Bulletin aún no ha publicado los resultados de las pruebas dinámicas, pero planea usar información de su (próxima) tabla de prevalencia para elegir muestras para las pruebas. Aunque los diseñadores de pruebas comenzarán mencionando las familias de programas nocivos, pueden terminar revelando nombres específicos de malware7

AV-Comparatives tampoco ha publicado todavía los resultados de las pruebas dinámicas, pero pretende publicar los nombres de las pruebas utilizadas para sus futuras pruebas dinámicas.

Por todo lo argumentado, debería evitarse este forma de hacer las cosas. AV-Test, que ya está realizando pruebas dinámicas, tiene un mejor enfoque. Las revistas tienen prohibido revelar los nombres de programas nocivos o fragmentos de archivos usados en las pruebas. Sin embargo, AV-Test compartirá los fragmentos o las muestras con los fabricantes antivirus que participaron en la prueba7.

Aunque un poco menos transparente para los usuarios finales, este enfoque es preferible, con mucho, en cuanto a la mitigación de riesgos, permitiendo, además, a cualquier fabricante notificar al diseñador de pruebas si encuentra que se han utilizado muestras no relevantes en las pruebas.

Conclusiones

La adopción de las pruebas dinámicas trae aparejados nuevos desafíos. Hoy, más que nunca, las pruebas pueden tener consecuencias reales para los autores de malware y sus acciones. Los fabricantes de soluciones antivirus deben ser cautelosos para que en su búsqueda educativa no pierdan de vista lo que realmente importa: la protección de los usuarios.

Se debe tener cuidado para evitar situaciones en las que la educación acelere la evolución de malware y genere más problemas que soluciones. La primera regla de AMTSO en sus principios fundamentales para pruebas, establece que las pruebas no deben poner en riesgo al público 4.

La atención dada a las tecnologías de protección y a las pruebas dinámicas está llevando de manera inevitable a una mayor toma de conciencia en todos los bandos, incluyendo los de los autores de programas nocivos. Dependerá de la industria en su conjunto, posiblemente en el seno de AMTSO, minimizar el riesgo y asegurarse de que los responsables de las pruebas no revelen muchos detalles en la publicación de sus resultados.



  1. AV-Test prueba de tiempo de respuesta 2005


  2. AV-Test W32/Sober resultados de tiempos variables de respuesta

  3. F-Secure W32/Sober.K write-up
  4. Kennedy, M. comunicación personal.
  5. Bosveld, J.; Canto, J. comunicaciones personales.
  6. Es posible conocer el nombre exacto de la muestra contactando al autor del presente artículo.
  7. Clementi, A.; Hawes, J.; Marx, A. comunicaciones personales.

Este artículo se publicó en la revista Virus Bulletin de diciembre de 2008.

Publicaciones relacionadas

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *