Raúl's profileTodo sobre Star WarsPhotosBlogLists Tools Help
    8/8/2007

    Antivirus: rendimiento vs. protección

    Este interesantísimo artículo de Hispasec va a ser mi último post hasta después de vacaciones, me marcho a un lugar donde la cobertura de móvil es limitada y no hay ni teléfono, ni ADSL, ni 3G. Eso es desconectar....

    El mundo de los antivirus está en crisis técnica, que no comercial, sigue siendo un buen negocio. Pero a estas alturas a nadie escapa que los antivirus a duras penas logran tapar parte de la ventana de riesgo de infección a la que todo usuario de Windows se expone en Internet. Ante este panorama cabría pensar que están triunfando los antivirus que mayor protección ofrecen, si bien la realidad es distinta.

    La gran proliferación y diversificación del malware ha puesto en jaque a un esquema basado en tener fichados a los malos: firmas para identificar al malware conocido, firmas genéricas para identificar variantes de una misma familia, y heurísticas basadas en la detección de código sospechoso.

    Los malos han ganado la partida en este juego. Modifican una y otra vez el código para que las firmas y heurísticas existentes no puedan detectarlos, cambian la cara de sus especímenes para evitar ser reconocidos aunque en el fondo siguen haciendo el mismo daño. Lo hacen de forma tan masiva que los antivirus a duras penas pueden seguir el ritmo para actualizarse, no dan a basto, están saturados. Es una carrera sin final y nos llevan mucha ventaja.

    Hay que cambiar de estrategia. Visto que actualizar firmas de forma constante no es suficiente, los antivirus han optado por implementar nuevas tecnologías que les permita más proactividad. El fin es poder detectar el malware nuevo, desconocido o variante. No depender de una firma reactiva, ser más genéricos y proactivos en la protección.

    Son varias las empresas antivirus que han arriesgado en ese campo,incorporando nuevas tecnologías y capas de seguridad al motor antivirus tradicional, que dotan a la solución de un mayor poder de protección. Pero no todos son ventajas a la vista del usuario, la incorporación de este tipo de tecnologías adicionales suele conllevar también un software más "pesado", que consume más recursos, enlentece el sistema, tiende a dar más falsos positivos y/o termina haciendo preguntas incomodas al usuario:

    "El proceso svchost.exe intenta conectar a Internet.
    ¿Permitir o denegar?"

    ¿No se supone que el antivirus debe saber si es algo peligroso o no?, ¿por qué me pregunta a mí?. Después de una serie de pensamientos similares, el usuario acabará por tomar alguna decisión del tipo:
    Intentará averiguar en google que es "svchost.exe" (no llegará a ninguna conclusión, y a la segunda o tercera pregunta sobre otros
    procesos desistirá en la búsqueda de la verdad)

    • Permitir Todo (tarde o temprano terminará infectándose)
    • Denegar Todo (dejará de funcionarle algún software legítimo)
    • Desinstalar el antivirus e instalar otro que no le haga perder tiempo con ventanitas emergentes y preguntas que no sabe contestar (sin excluir las decisiones anteriores, el usuario suele terminar desembocando en este punto y cambiando de antivirus)


    Percepción del usuario

    Ahora tenemos a un usuario con un antivirus tradicional, basado en firmas, que no incluye tecnologías adicionales, que no enlentece el arranque de su sistema, que no le consume mucha memoria, que no le  importuna con preguntas... tenemos a un usuario menos protegido, pero un usuario que está teniendo una "buena experiencia" con su antivirus.

    Y es que aunque teóricamente un desarrollador antivirus debe balancear entre rendimiento y protección, la realidad es que el usuario sólo puede percibir el rendimiento. Un usuario no sabe de tecnologías, un usuario no puede evaluar el grado de protección que le ofrece una solución, en la lógica de un usuario un antivirus debe protegerle de infecciones y punto.

    En los años 90 cuando un virus infectaba el ordenador se notaba de inmediato: borraba archivos, mostraba imágenes en pantalla, etc. Cuando un usuario se veía infectado por un virus aun teniendoantivirus, motivaba el cambio de producto: "este antivirus no es
    bueno, ha permitido que me infecte". Pero ahora el panorama es bien diferente, el malware de hoy día está diseñado para permanecer oculto y el mayor tiempo en los sistemas infectados, sin dar señales de vida. Así que el usuario seguirá con la buena experiencia de su "antivirus ligero" pese a que su sistema esté infectado. Simplemente, el usuario no se entera.

    Lo que si va a notar un usuario de inmediato es si el antivirus interfiere en su sistema y en el trabajo diario. Esa experiencia que si puede percibir de forma directa es la que decanta hoy día la evaluación de un antivirus y la elección final por parte del usuario.
    La balanza por parte del usuario está inclinada claramente hacia un lado: el rendimiento. Mientras que algunos antivirus son conscientes de ello y explotan esta visibilidad parcial por parte de los usuarios para ganar mercado, otros siguen intentando equilibrar la balanza, o dándole más peso a la protección, y perdiendo clientes en el camino.

    ¿Deben las empresas antivirus renunciar a ofrecer una mejor protección? Evidentemente no, pero la experiencia del usuario debe ser
    un objetivo igual o más importante si cabe, incluso en muchas ocasiones tendrá mayor peso. De nada sirve diseñar el antivirus más seguro si los usuarios no lo pueden utilizar. Para el usuario el mejor antivirus no es el más seguro, sino el más confortable.

    Algunos ejemplos

    La pregunta sobre el svchost.exe me saltó ayer mientras probaba un antivirus, y no fue la única pregunta que hizo. Es más, después de instalarse, tras el primer reinicio del sistema, hizo un análisis completo de todos los archivos del disco duro en segundo plano. Por la actividad del disco duro deduje lo que estaba haciendo, y haciendo doble click en el icono del antivirus pude confirmarlo en la ventana del escaner.

    Como medida de seguridad estaba muy bien, pero, ¿cuál es la experiencia de un usuario común? Pues no tiene dudas, tras instalar el antivirus el sistema se ha vuelto muy lento y apenas lo deja trabajar. El usuario no sabe que es una acción que llevará a cabo sólo en el primer reinicio y no en posteriores, la percepción es que instalando el antivirus X el sistema inmediatamente se vuelve lento.

    ¿Por qué el antivirus no deja el análisis de todos los archivos para más tarde, cuando detecte que el sistema lleva un tiempo en "reposo" en vez de hacerlo justo en el inicio? Incluso podría pausar ese análisis en segundo plano si detecta que el usuario comienza a utilizar el ordenador, o al menos regular la velocidad y consumo de recursos del análisis para no interferir la actividad del usuario.
    Probando otros antivirus se puede notar claramente el cambio de enfoque, acertado desde el punto de vista comercial, explotando al máximo los conceptos de velocidad y rendimiento. Aunque en ocasiones sea a costa de una menor protección o simplemente aplicando cierta picaresca.

    Hay un antivirus que se vende como uno de los más rápidos, para ello tiene una opción por defecto de análisis a demanda donde no utiliza las técnicas de heurística que más recursos consume, con las que hacen las pruebas de velocidad. Cuando toca hacer una prueba de detección, piden encarecidamente que se utilice la opción con la heurística más lenta activada. Objetivo: aparecer en las evaluaciones como el más rápido sin perder capacidad de detección. Lo logran.


    Resumiendo

    Demostrar que una tecnología antivirus ofrece mejor protección que otra es complicado. Desde el punto de vista de marketing el usuario está cansado, al fin y al cabo todos los antivirus afirman ser los mejores, y se deja llevar por la propia experiencia o por terceros confiables creadores de opinión.

    La experiencia del usuario tiene una visibilidad muy parcial, no puede saber que grado de protección real le ofrece un producto. Se dejará llevar por indicadores tales como la no interferencia con su trabajo y el rendimiento del sistema. El usuario no sabe si está infectado o no, pero si sabe si el antivirus le molesta. Los terceros confiables no son confiables. La dificultad que el
    usuario tiene para evaluar el grado de protección de un antivirus también se traslada a los creadores de opinión, desde foros de Internet pasando por revistas de informática y comparativas que tampoco están diseñadas para evaluar las nuevas tecnologías. También tienen la resposabilidad de explicar cual es la situación actual y las diferencias entre tecnologías, hay que formar a los usuarios.

    Los evaluadores de antivirus deben evolucionar a nuevas metodologías, siguen (seguimos) utilizando tests de los años 90 dando resultados adulterados y penalizando a las nuevas tecnologías. Son las fuentes de la que beben los terceros confiables, "culpables" también de la formación en nuevas tecnologías que requieren traducir su eficacia  real en indicadores que a día de hoy simplemente no se miden. Los desarrosladores antivirus deben reinventarse y no perder el foco sobre el usuario. Hay productos que están incorporando tecnología sobre tecnología en su búsqueda de minimizar la ventana de riesgo de infección, pero convirtiéndose en un software complejo, poco optimizado, que consume muchos recursos, y que ofrece una pobre experiencia al usuario.Hay que evolucionar, pero no a cualquier precio. A veces tendemos a ofuscarnos con soluciones técnicas y olvidamos que al final un usuario, que no es informático ni tiene nociones de seguridad, tendrá que convivir con esas soluciones en su día a día en un PC normal, no sobrado de recursos, que ejecuta otras aplicaciones que son realmente las importantes para él.

    8/7/2007

    Casi de vacaciones

    Este es mi último día de curro, mañana ya estoy oficialmente de vacaciones, la verdad es que me he arrastrado al trabajo sin ganas, estoy deseando pillar la piscina y no hacer absolutamente nada que suponga algo más que no sea leer, nadar y hacer la fotosíntesis en la piscina.

    La idea inicial era seguir bajando a entrenar a kendo, pero la verdad es que ahora mismo se me hace muy cuesta arriba Confundido
    Supongo que será el agotamiento físico y el parón de estas tres semanas, pero ahora me cuesta volver a ponerme en situación de ponerme kendogi, hakama, bogu y que me den de leches...

    No sé, ya veremos...

     

    8/4/2007

    Hoy escucho: Organic Audio - Your Day

    De vez en cuando te da por una canción, no puedes quitartela de la cebeza y tampoco del WinAmp.

     
    8/1/2007

    Cosas que no debes hacer al construir un sitio web

    Leido en el blog de Cattya.

    Estas son las tablas de la ley de un diseñador web, ¿cuantos puntos incumplimos? Seguro que alguno.
    1. Nunca cambies el tamaño de la ventana del navegador del usuario automáticamente, es molesto, irrespetuoso y típico de los sitios de spam.
    2. Mal si tu página es de las que primero carga una página señuelo y ésta “lanza” un popup con la página real. Error muy habitual de los sitios hechos en Flash.
    3. Tampoco está bien preguntar al usuario si quiere ver una caca de página directamente o prefiere entrar a un sitio guay lleno de colorines y animaciones pero para el cual necesita aditamentos especiales y esperar un rato a que cargue.
    4. Si todo tu sitio está hecho en Flash despide al desarrollador de la página y hazla otra vez; si la has hecho tú colócala en el apartado “sitios inútiles que he hecho” de tu portfolio y hazla otra vez.
    5. No pretendas reinventar la navegación de los sitios web.
    6. El contenido es el rey: si tu página web no tiene suficiente contenido o ningún texto real que no esté en una imagen contrata a un copy y despide a tu webmaster ahora.
    7. Si tu sitio web no funciona o no se ve bien en Firefox… ¡bienvenido al 2007 tontolaba!
    8. Nada de texto parpadeando [<blink>, los navegadores con clase como Safari ya ni la interpretan], nada de usar FrontPage, nada de popups ni en enlaces ni automáticos, nada de texto en scroll, nada de intros en Flash,…
    9. Si la página contiene música asegurate de que el usuario puede detenerla o apagarla y mejor si no se inicia automáticamente —lo mismo para el vídeo.
    10. Los menús de navegación mejor en texto que en imágenes.
    11. Un flujo de navegación bien pensado con subsecciones siempre es mejor que utilizar menús desplegables.
    12. Si la única forma de encontrar la información importante de tu sitio web es utilizando el buscador, despide al tío que hizo el flujo de navegación —y que seguramente utilizó menús desplegables.
    13. Cuida el tiempo que necesita la página para cargarse.
    14. Si pretendes hacer pasar al usuario por alguna ruta predeterminada para llevarle a alguna página concreta o a la versión demo de tu producto es hora de que te compres una granja de hormigas para aliviar tus deseos de usurpador de voluntades con alguna especie que lo permita.
    15. Si vas a poner vídeo olvidate de pedirle a los usuarios que elija distintos anchos de banda y formatos de video perdedores como RealPlayer, Windows Media Player, Quicktime,… Utiliza un reproductor de vídeo en formato Flash como hacen YouTube y similares —si, Flash ganó esta única batalla hace tiempo.
    16. No utilices técnicas y tecnologías nuevas en tu sitio web simplemente porque puedes o porque son novedosas. Las tecnologías nuevas son chulas, pero utilizalas sólo si realmente mejoran de algún modo la vida a tus lectores / clientes / usuarios.