En lugar de amainar, las vulnerabilidades Meldown y Spectre empiezan a desesperar a los administradores de sistemas en las empresas de una cierta complejidad. Ha pasado más de un mes desde que se hiciera pública su existencia, y ocho meses desde que Google comunicara el problema a Intel y otros fabricantes de chips, pero no sólo no se ha arreglado sino que la situación ha empeorado. Está comprobado que el parche difundido en enero por Intel desestabiliza los ordenadores con pérdidas de rendimiento y reinicios inesperados. Microsoft recomienda que se desinstale su propio parche. Y nadie se atreve a descartar del todo que haya hackers más hábiles que los creadores de los parches.
Suponiendo que no estén explotando esas vulnerabilidades desde hace tiempo, de lo que no hay pruebas pero tampoco garantías. Según un informe de la empresa de seguridad Spiceworks, casi el 20% de las empresas han gastado decenas de miles de dólares en el intento de resolver estas vulnerabilidades. Según sus encuestas, muchas de las que han dedicado recursos a aplicar los remedios recomendados, dicen estar más asustadas que al principio.
El rasgo fundamental común a Meltdown y Spectre es que afectan al hardware, lo que hace muy difícil actuar contra ellas. Pero lo que más llama la atención es la forma en que se han destapado. Salvo excepciones, los bugs escondidos en el software se mantienen en secreto dentro de la comunidad de especialistas hasta que se dispone de un antídoto listo para su distribución. Que en este caso se dieran a conocer las vulnerabilidades se debe a que The Register accedió a un correo entre desarrolladores, poniendo de manifiesto la debilidad del procedimiento.
Hay quien se extraña del revuelo, aduciendo que los especialistas sabían de los problemas que origina la ejecución especulativa. En tono cáustico, se ha citado a Seymour Cray, pionero de los superordenadores, quien dijo una vez que el funcionamiento de la memoria de un ordenador es como un orgasmo: no hay forma de controlarlo. Muy gracioso, pero ayuda poco.
Durante la primera quincena de enero, de puertas hacia fuera la industria hizo lo necesario para tranquilizar a sus clientes. La consigna explícita era que había muy baja probabilidad de afectación, a la vez que se prometían soluciones en breve. De puertas hacia dentro, se criticaba la gestión de la crisis: Oracle se consideró marginada al no haber sido alertada desde el principio. Y si no dijo nada públicamente durante los primeros días, luego fue de las más activas en recomendar a sus clientes que instalaran los parches en hardware, tanto en los equipos basados en chips x86 de Intel como en los procesadores SPARC de la propia Oracle.
Si las críticas se cebaron en Intel, fue porque al principio intentó relativizar el problema asegurando que en un par de semanas tendría disponible un parche para arreglar más del 90% de las situaciones conflictivas. Otras compañías, como IBM, Oracle, AMD, Cavium y Qualcomm se coordinaron con aquella e informaron de la realidad a los fabricantes que montan sus chips en placas base (Asus, Gigabyte, Quanta y Whwynn), y por supuesto a los de servidores (Dell, HPE, Lenovo, IBM, Supermicro y Oracle) que montan esas placas base.
También estaban al tanto de la disponibilidad de parches los distribuidores de sistemas operativos: obviamente Microsoft (Windows Server) así como Red Hat, SuSe Linux o CoreOS, los de hipervisores (VMware) y los de contenedores de aplicaciones (Docker, Red Hat y Open Shift). La cadena industrial parecía estar preparada para informar a la clientela, con el tacto necesario. Pero la liebre saltó antes de tiempo, lo que mostró la fragilidad del ´ecosistema`.
En la práctica, los parches a instalar eran tan nuevos y la afectación tan generalizada que no podían probarse con suficientes garantías. Ocurrió lo que muchos temían: que al aplicar los parches recomendados, muchos sistemas se volvían inestables, otros sufrían de pérdidas importantes de rendimiento y algunos se reiniciaban repetidamente.
Llegada la tercera semana de enero, ya estaba bastante claro que toda la generación actual de procesadores, como los Epyc de AMD, los Thunder X2 de Cavium, los Power9 de IBM, los Centriq 2400 de Qualcomm y por supuesto los Xeon SP de Intel, era vulnerable a la maldad intrínseca de Spectre y Meltdown. También los procesadores de servidores más antiguos de Intel, IBM, AMD y Oracle, así como toda la cadena de suministro de los desarrolladores de aplicaciones para esos sistemas estaba en riesgo.
A nadie le gusta tirar de la alarma en un tren, pero las circunstancias son especialmente graves porque no se ve la salida del túnel. Siempre se ha sabido que no había un sistema total e inherentemente seguro, pero de ahí a que la práctica totalidad de los ordenadores sean potencialmente inseguros va un trecho.
Como se dijo al confirmar las vulnerabilidades Meltdown y Spectre, todos los ordenadores ejecutan en su memoria intermedia información especulativa con el fin de que los procesadores completen antes su tarea. Esta información especulativa, que después podrá utilizarse o no, no está suficientemente encriptada, por lo que podría revelar códigos de acceso muy valiosos a personas no autorizadas, siempre que tengan conocimientos y técnicas muy avanzadas.
Linus Torvalds, legendario desarrollador original de Linux y muy respetado en la industria, ha calificado el parche propuesto por Intel para solucionar Spectre de “pura basura”, un intento de desviar el origen del problema a los sistemas operativos. Torvalds considera que el problema radica exclusivamente en el hardware del procesador y en el diseño interno de los ordenadores; por tanto, un arreglo definitivo requeriría cambiar totalmente internamente los chips, lo que necesariamente llevaría años. Torvalds tal vez exagere, pero no ha sido el único en decir que la industria tiene que prepararse para un nuevo ciclo.
Microsoft, a la vista de los problemas originados con el parche que había publicado para distintas versiones de Windows Server, fue de los primeros en recomendar su desinstalación. Una semana tardó Intel en seguir sus pasos Navin Shenoy, vicepresidente ejecutivo de Intel, hizo de tripas corazón para firmar un comunicado oficial en el que reconoce que los parches elaborados de urgencia «[inducen] comportamientos imprevisibles en los sistemas, más serios de los que inicialmente se preveían». Asegura Shenoy que Intel analizará todo lo ocurrido para publicar un parche actualizado «en el futuro”, sin concretar plazos.
Es obvio que si Intel está en el ojo del huracán se debe a la dimensión del parque de servidores equipados con sus procesadores, que según las categorías llega al 90%. Pero su actitud esquiva ha sido castigada por el Wall Street Journal con un artículo, según el cual los primeros avisados del problema fueron sus clientes chinos Lenovo y Alibaba, sin decir ni pío al gobierno estadounidense. Sea cierto o no este extremo, la intención política del artículo es transparente: ante todo, Intel habría preferido evitarse reproches en China. De echar más leña al fuego se ha encargado un tal Jake Williams, presentado como antiguo empleado de la NSA, quien dijo estar “casi seguro” de que el gobierno de Pekin estaba al tanto de las vulnerabilidades antes que el de Washington.
Lo anterior confirma que Meltdown y Spectre no son sólo un problema de Intel; se extiende a toda la industria y tiene repercusiones geopolíticas. A la vez, confirma que no se pueden esperar soluciones inmediatas. Se han publicado artículos – en foros hasta ahora seguidos por especialistas – en los que se relatan periódicas amenazas y vulnerabilidades que podrían tener parentesco con la situación actual. En 2015, Denan Luu, ingeniero senior de Microsoft, reveló que su compañía había detectado al menos dos bugs serios en las CPU de Intel, de lo que deducía que podía haber otros.
Lo que se está haciendo en las últimas semanas es desplegar parches paso a paso, selectivamente, en vez de publicarlos para su instalación masiva sin las comprobaciones pertinentes. Los gigantes de servicios cloud (AWS, Microsoft, Alibaba, Google, Baidu y Tencent) además de Facebook y Twitter, están evaluando y verificando los parches disponibles para aplicarlos en sus cientos de centros de datos con cientos de miles (o millones) de servidores.
Un recurso que se empieza a utilizar consiste en reducir a la mínima expresión, mediante software, el tiempo en que una clave desencriptada se hace visible en la memoria temporal. Los procesadores EPYC de AMD o los mainframes Z de IBM ya disponían de un sistema de cifrado de la memoria que facilita la tarea de minimizar vulnerabilidades. También se trabaja en la elaboración de modernos sistemas criptográficos que guarden todas las claves en un recinto que, a su vez, está cifrado. Cada fabricante busca la fórmula que mejor se adapte a sus sistemas. Es previsible que con el tiempo sea prácticamente imposible acceder a los registros deseados, pero nunca se podrá tener la certeza absoluta ni tampoco aventurar garantías absolutas ante el peligro.
Brian Krzanich, CEO de Intel, evitó profundizar en el tema durante su presentación en el CES, pero no podía de ninguna manera soslayar ante los analistas este asunto en ocasión de presentar los resultados de la compañía. Quiso, eso sí, sonar tranquilizador al decir “a pesar de que hemos progresado, soy muy consciente de que nos queda mucho trabajo por hacer”. Su propuesta es ser pacientes, esperar a que se publiquen nuevos parches cuando las pruebas de mejora sean concluyentes. Por ahora, sin fecha. Krzanich se comprometió a que la nueva generación de chips para servidores, prevista para finales de año, incluirá una mejor protección los sistemas desde el hardware.
[informe de Lluís Alonso]