lunes, 25 de junio de 2012

Actualización automática ¿Bendición o condena?


El caso TheFlame ha promovido muchas reacciones: los articulistas rellenan páginas con prefijos "ciber" y la palabra "guerra". Las casas antivirus lo usan como arma de venta  (aun sin haberlo detectado en cinco años) y Microsoft queda en evidencia con su PKI y la refuerza. TheFlame ha minado también la confianza: en los gobiernos, en los antivirus... pero sobre todo, en la criptografía y en la actualización automática.

Criptografía


El caso de los certificados falsos de Microsoft usados en TheFlame debería lanzar una nueva advertencia sobre la gestión de la criptografía. Si el SSL está "roto socialmente" porque no se entiende, porque se usa mal (todavía con hashes MD5, por ejemplo), porque las autoridades certificadoras sufren intrusiones, o porque se abusa del negocio alrededor de los certificados..., la mala gestión de una PKI como la de Microsoft vuelve a hacerle un flaco favor a la seguridad que proporciona la criptografía en general.

Y hay que cuidarla. Porque la criptografía actual es lo mejor que tenemos, y es en lo único que podemos basar nuestra confianza en estos momentos. Sin criptografía no hay Internet. La criptografía permite, por ejemplo, que se dé vía libre a la ejecución automática de código en el sistema con ciertas garantías (hasta ahora), de forma que se pueda parchear antes  y se reduzca el riesgo. Es esencial.

Automatización

Y es que el software ha migrado hacia la "autoactualización": la automatización total de las actualizaciones. Desde que el año 2000 Microsoft debutara con "Windows Update", y estableciera más tarde por defecto la actualización automática, las aplicaciones se han apuntado al carro. Chrome fue de los primeros programas  populares que no tuvo miedo a dejar de contar totalmente con el usuario para actualizarse. Y le ha ido bastante bien. Sus usuarios no solo parchean en tiempo récord, sino que tienen la sensación de que nunca tienen que hacerlo... lo que vende muy bien estos días.

Luego Mozilla, Acrobat, Flash no hace mucho... Incluso Chrome fue más allá y comenzó a actualizar sus propios plugins... Todos, ante graves problemas de seguridad, han optado finalmente por actualizarse sí o sí, por defecto. Actualizar es la absoluta prioridad en el mundo de la seguridad. Sin embargo no todos los sistemas de actualización están totalmente automatizados (muchos programas todavía confían en que el usuario acepte antes de aplicar el parche) ni todos lo hacen correctamente. Ciertos programas han realizado una mala implementación de sus sistemas de actualización y de eso se aprovecha la herramienta EvilGrade, todo un framework para explorar esas rendijas que proporcionan las actualizaciones de más de 60 programas. Para algo tan delicado como la automatización, los programadores deberían tomar muchas más precauciones.

Y es que fríamente y por definición, la automatización, es una mala idea. Trasladar ciegamente el poder a las máquinas siempre debería ser menos confiable que llevarlo al lado "razonable" del usuario. No podemos dejar total control en las máquinas porque, una vez encontrada la rendija adecuada, puede llevar a unas desastrosas consecuencias. Pero como la criptografía, es lo mejor que tenemos en estos momentos para obligar a actualizar. Incluso así, parece aún peor dejar que el usuario decida:

  • En entornos caseros, suele resultar una molestia y aplicarse tarde. Está demostrado que los niveles de parcheo total son muy pobres. El software pirata en este caso, también hace mucho daño en este entorno.
      
  • Y en redes corporativas, las actualizaciones automáticas serían muy útiles pero resultan muy "poco populares" entre los administradores. El pánico a interrumpir la producción ante el más mínimo inconveniente les lleva a enterrar la seguridad como prioridad en el trabajo. Esto les resta mucha agilidad a la hora de actualizar y se vuelven muy vulnerables. Las facilidades para automatizar que proporciona Chrome, por ejemplo, es inútil en estos entornos.

Así que no hay respuesta para la pregunta que encabeza este artículo. ¿Centrarse en una automatización más controlada, quizás? ¿Educar al usuario? Al final, se llega al callejón sin salida del tópico: "la comodidad está reñida con la seguridad"... Pero hoy en día, parece que quien se acomode, pierde.

Más información:

flame's impact on trust

1.91% of all PCs are fully patched!


Sergio de los Santos
Twitter: @ssantosv


2 comentarios:

  1. Educar al usuario.
    Punto y final.

    ResponderEliminar
  2. Si estoy totalmente de acuerdo.Y yo diría al anterior que auto-educarse es la solucion una vez que el usuario sea consciente que este tipo de preligros son el pan de cada dia en Informatica.

    ResponderEliminar