Ayer durante la comida, bromeando con Santos (fsantos) sobre la entrada anterior donde comentaba lo de las revistas en el aeropuerto que derivó en lo de ZoneAlarm y las comparativas antivirus, me contó Julio (jcanto) que alguien había escrito en un blog algunas recomendaciones sobre antivirus basándose precisamente en sus palabras cuando hacía comentarios privados relacionados con VirusTotal, pero sin aportar ningún dato contrastado o práctico. Julio es la "madre" de VirusTotal (quién desarrolla y se pelea todos los días con los motores), mi papel en todo caso sería el del espíritu santo en la concepción ;).
Dejando a un lado que está cuando menos "feo" aprovechar temas privados o poner en propia boca comentarios de otros sin referenciarlo, la verdad es que evidencia un total desconocimiento de lo que habla. Parafraseando a Chema (MS showman), es un típico caso de "tecnico-less", basan todas sus argumentaciones en lo que leen o referencian de terceros pero no tienen conocimientos y experiencia práctica sobre lo que hablan.
Por contra te puedes encontrar webs y foros bastante interesantes sobre antivirus, donde los usuarios cuentan sus propias experiencias sobre tal y cual versión, casos concretos con determinado malware, hay gente que habla de configuraciones específicas, etc. En resumen, al menos se habla desde una perspectiva práctica, y siempre hay cosas interesantes o de las que aprendes. Por último, la gente que más sabe con diferencia (que no son otros que los propios técnicos de los laboratorios y desarrolladores antivirus y casas de seguridad), no suelen hablar del tema, bien por contrato bien porque aprovechan mejor el tiempo. De todas formas hay algunos casos de blogs/webs bastante interesantes (les sigo la pista aunque algunos ni siquieran mencionan a la empresa para la que trabajan), escriben muy de vez en cuando pero suelen ser cosas de calidad y basadas en experiencias personales. Gracias a VirusTotal también compartimos foros privados con ellos, que suelen ser bastante interesantes y hay poco ruido, lo que se agradece bastante.
Volviendo al tema principal, el terreno de los antivirus es variable, en meses pueden variar los rankings de detección (que es sólo una parte de lo que es un antivirus), e incluso puede haber diferencias significativas entre versiones del mismo producto (no en detección, sino a nivel de estabilidad y rendimiento, algo bastante importante), también de vez en cuando meten alguna pifia con las actualizaciones, por lo que no se debe caer en tópicos y requiere un análisis y evaluación continua. Por ejemplo, se puede escuchar a gente que no querían dejar la versión 3.x del producto W porque la nueva rama daba problemas de rendimiento con el monitor residente, la empresa X tuvo que cambiar el nombre comercial a un motor porque cuando lo publicaron estaba bastante verde y se quedó con la fama de desestabilizar más los sistemas que los propios virus, el motor Y que por ahí se escucha que es el más rápido y el que menos consume ya hace tiempo no ocupa el puesto de cabeza en ese apartado, el motor Z que está en el TOP 3 de los más vendidos a nivel mundial es uno de los que peores ratio de detección tiene, etc, etc.
Con respecto a VirusTotal, no se diseñó para hacer comparativas, aunque por mucho que digamos es irremediable que la gente lo haga. Al menos es importante que tengan en cuanta ciertos factores, como por ejemplo que cada motor en VirusTotal está configurado según los parámetros solicitados por los fabricantes. Aunque la mayoría suele encontrarse con el nivel de detección por defecto, hay ciertos laboratorios que solicitan se suba el nivel de heurística, así que puede ocurrir que VirusTotal detecte algo que no lo hace el mismo motor instalado en un PC.
Los motores que utiliza VirusTotal son en línea de comandos. Aunque a nivel de detección por firmas suele tener el mismo comportamiento que la versión completa para escritorios, hay casos puntuales donde el motor de línea de comandos era algo más antiguo y no reconocía ciertos formatos de compresión o admitía firmas extendidas (tipo spyware, hacktools, etc). Por citar un caso concreto, eso ha provocado que retiráramos el motor de Symantec y que estemos esperando una nueva versión para incorporarlos de nuevo.
También es importante hacer notar que en VirusTotal las muestras son analizadas a demanda y que sólo se muestra el resultado de la detección. Otra cosa diferente es que el motor se comporte igual en la vida real, cuando el monitor residente tiene que parar la ejecución de esa muestra. Por ejemplo un caso claro es el de ZoneAlarm de la anterior entrada, donde detectaba un exploit (en VirusTotal lo hubiera detectado igual), pero después vemos que en un sistema real no es capaz de parar el ataque. Estas diferencias aun son más notables si en vez de detección hablamos de desinfección, ahí podemos encontrarnos con todo tipo de sorpresas.
Por no alargar mucho el tema, también debemos tener en cuenta que los productos antivirus están incorporando tecnologías que van más allá del motor de firmas y heurística tradicional de código, y que ese tipo de funciones no pueden (al menos de forma relativamente fácil) reproducirse en un servicio tipo VirusTotal si se quiere unos tiempos de respuesta medio aceptables (requerirían ejecutar todas las muestras a analizar en entornos virtuales diferentes con los productos antivirus residentes).
Estos puntos, unido al gran aumento y diversificación del malware, es el que tiene en jaque a las certificaciones y comparativas del sector, y hablamos de cosas reconocidas como VirusBulletin, ICSA, etc, etc. La In-The-Wild hace tiempo que ha dejado de ser una referencia por el aumento y diversificación del malware, y las pruebas basadas en análisis a demanda de colecciones grandes de archivos tipo ZOO también porque los productos antivirus han evolucionado sus tecnologías. Hoy por hoy no existe una certificación antivirus realista, todas viven del nombre que consiguieron tiempo atrás, pero saben a ciencia cierta que su esquema no es válido para la actualidad.
Hoy en día una evaluación seria de productos antimalware requeriría una colección importante/representativa de muestras y enfrentar a los productos en situaciones reales con las versiones residentes, no con el análisis a demanda de archivos. Algo similar a lo que hicimos con el caso que comentaba de ZoneAlarm y el exploit con troyanos reales, pero multiplicado por muchos casos... y eso es algo que materialmente es muy complicado de hacer, por una simple cuestión de recursos.
Supongo que la comunidad tiene que buscar un nuevo modelo de evaluación de productos antimalware, y probablemente tiene que empezar por replantearse la propia lista ITW que durante tanto tiempo ha servido de referencia y que a día de hoy ha dejado de ser representativa de una realidad que se nos escapa.
Todo lo dicho anteriormente no deja de ser una autocrítica, tampoco tengo (ya me gustaría) la solución sobre la metodología para una evaluación antivirus lo suficientemente buena según la situación actual, así que estaré encantado de recibir comentarios, ideas, etc. y charlar al respecto :)
Mi recomendación personal es que las comparativas actuales (y las antiguas, incluyendo por supuesto las mías) se cojan con pinzas y manga ancha, normalmente pueden servir para hacer dos grandes grupos, descartar los que peores resultados tengan por la cola, y elegir entre los restantes en base a otros muchos criterios y teniendo en cuenta nuestras circunstancias particulares, incluyendo por supuesto la percepción y experiencia personal. Eso si no nos topamos con una comparativa "patrocinada", que también las hay. Aquí si tengo que defender a todas las publicaciones para las que he escrito alguna vez, hubo casos que incluso amenazaron con retirar la publicidad de algún que otro producto al conocer lo que iban a publicar, pero se mantuvieron en su sitio.