Imagen: Universidad Tecnol√≥gica de Graz / logos dise√Īados por Natascha Eibl.

Meltdown y Spectre son los nombres que se han dado a dos vulnerabilidades que permiten a un atacante acceder a cualquier tipo de información alojada en la memoria del sistema. Aunque se han dado a conocer al mismo tiempo, son diferentes. Eso sí, cada una más peligrosa que la anterior.

Advertisement

Empezando por el principio, en 2017, el equipo de Project Zero de Google en colaboración con investigadores de varias universidades diferentes identificó el problema en un protocolo de ejecución.

De acuerdo con un comunicado de la Universidad Tecnológica de Graz, los investigadores han identificado al menos tres posibles métodos de ataque. Pero básicamente se dividen en dos nombres:

Meltdown ataca a procesadores, permite acceder a la memoria del kernel, rompiendo el aislamiento entre las aplicaciones y el n√ļcleo del sistema operativo. Spectre apunta a la CPU accediendo a la memoria de otras aplicaciones a partir de sus archivos almacenados en cach√©. En ambos casos los datos privilegiados del usuario son vulnerables. La diferencia es el modus operandi de cada vulnerabilidad.

¬ŅQu√© equipos son vulnerables?

¬ŅTu ordenador est√° en riesgo? Rotundamente s√≠. Meltdown afecta a todos los procesadores Intel fabricados desde 1995 hasta la fecha, excepto los Itanium y los Atom fabricados antes de 2013. Spectre, por su parte, afecta a todas las CPUs actuales, tanto de PC (ya sea Intel o AMD) como ARM, poniendo tambi√©n en peligro a los dispositivos m√≥viles, televisores inteligentes e incluso a los servidores, centros de datos y plataformas masivas de computaci√≥n en la nube.

Advertisement

Importante es que, contrariamente a lo que pueda parecer, ni Spectre y Meltdown son ‚Äúerrores‚ÄĚ, t√©cnicamente hablando, sino huecos de seguridad de una caracter√≠stica de dise√Īo. La vulnerabilidad se aprovecha de la llamada ‚Äėspeculative execution‚Äô (ejecuci√≥n predictiva o especulativa), que no es m√°s que una t√©cnica de procesamiento de la mayor√≠a de los chips.

Funciona de esta manera: con el fin de mejorar el rendimiento, la CPU ejecuta de forma predictiva instrucciones basadas en supuestos que considera probables. Cuando hay dos opciones posibles (como por ejemplo ¬ęGuardar¬Ľ y ¬ęEliminar¬Ľ), las asume y las prepara para ahorrar tiempo.

Advertisement

El procesador verifica estas suposiciones cuando el usuario da verdaderamente la orden. Si sus suposiciones son v√°lidas, entonces la ejecuci√≥n contin√ļa. Si no lo son, elimina lo que ya ha hecho y la ruta de ejecuci√≥n correcta se inicia desde el principio. Como la mayor√≠a de las veces acierta, provee una experiencia inform√°tica m√°s √°gil.

¬ŅC√≥mo la predicci√≥n llega a ser da√Īina?

Tomando los datos de esa ejecución descartada se puede acceder a la memoria física. Si al final esa predicción especulativa no era válida, el procesador vuelve atrás pero no se deshace de los datos con los que estaba tratando de prever el próximo paso, antes de hacerlo los almacena en su caché.

Advertisement

Un c√≥digo malicioso podr√≠a ser capaz de enviar peticiones al procesador para lograr aprovechar esos datos descartados, tomar su informaci√≥n y acceder con ellos a datos como contrase√Īas u otros rastros que nunca deber√≠an abandonar la unidad de procesamiento central, y que quedaron guardadas en ese cach√© por culpa del proceso predictivo.

El problema es que esta forma de ejecuci√≥n ha sido una piedra angular del dise√Īo de procesadores durante m√°s de dos d√©cadas. Esa funcionalidad se cre√≥ para que los procesos inform√°ticos se ejecuten m√°s r√°pido. Precisamente por eso los investigadores creen que solucionar este fallo podr√≠a ralentizar a los ordenadores hasta en un 30%, y est√°n luchando para encontrar una soluci√≥n que no lo haga.

Advertisement

De todas formas, debido a la vulnerabilidad se acaba de hacer p√ļblica, es posible que soluciones alternativas y nuevas t√©cnicas eludan el impacto en el rendimiento. Tambi√©n es posible que la industria haga un completo replanteamiento de toda construcci√≥n del procesador como lo conocemos, para protegerse contra este tipo de ataques en el futuro.

Finalmente y en conclusi√≥n, el fallo es grave, y lo m√°s importante es estar atento a las √ļltimas actualizaciones de tu sistema. Instalar los parches de seguridad que se vayan lanzando y extremar las precauciones mientras tanto.