Meltdown (vulnerabilidad)

En el momento de hacerse pública su existencia, se incluían todos los dispositivos que no utilizasen una versión convenientemente parcheada de iOS,[5]​ GNU/Linux,[6]​[7]​ macOS,[5]​ Windows y Windows 10 Mobile.

Por lo tanto, muchos servidores y servicios en la nube se han visto impactados,[8]​ así como potencialmente la mayoría de dispositivos inteligentes y sistemas embebidos que utilizan procesadores con arquitectura ARM (dispositivos móviles, televisores inteligentes y otros), incluyendo una amplia gama de equipo usado en redes.

[2]​ Su existencia fue revelada junto con la de otra vulnerabilidad, Spectre, con la cual comparte algunas características.

Las vulnerabilidades Meltdown y Spectre han sido consideradas como «catastróficas» por algunos analistas de seguridad.

[11]​[12]​[13]​ Su gravedad es de tal magnitud que al comienzo los investigadores no daban crédito.

El agujero es viable en cualquier sistema operativo en el que la información privilegiada se mapee a memoria virtual para procesos no privilegiados, una característica que incorporan muchos sistemas operativos actuales.

Por lo tanto, potencialmente Meltdown puede afectar a una gama de dispositivos mayor que la identificada actualmente, dado que apenas hay variaciones entre las familias de microprocesadores utilizados por estos sistemas.

Aunque el trabajo estaba enfocado en ARM, sentaba las bases del vector de ataque.

En octubre de 2017, la funcionalidad ASLR para la arquitectura amd64 se añadió a la rama NetBSD-current, convirtiendo a NetBSD en el primer sistema BSD formado totalmente por código abierto en soportar la aleatoriedad en la disposición del espacio de direcciones del núcleo (KASLR).

[43]​ Sin embargo, el sistema operativo Darwin, que es parcialmente de código abierto[44]​ y forma la base, entre otros, de macOS e iOS, está basado en FreeBSD; KASLR se añadió a su núcleo XNU en 2012 tal como se indicó más arriba.

[57]​ Los investigadores han indicado que la vulnerabilidad Meltdown es exclusiva de los procesadores Intel, mientras que la vulnerabilidad Spectre puede posiblemente afectar a procesadores Intel, AMD y ARM.

[69]​ Red Hat anunció públicamente en su aviso de seguridad del 3 de enero que las vulnerabilidades afectan también a los sistemas basados en IBM System Z y arquitectura POWER, incluidos los POWER8 y POWER9.

[70]​ Oracle ha indicado que los sistemas SPARC basados en V9 (T5, M5, M6, S7, M7, M8, M10, M12) no están afectados por Meltdown, si bien los procesadores SPARC más antiguos y que ya no tienen soporte alguno sí podrían estarlo.

El ataque se describe tal como ocurre en un procesador Intel corriendo Microsoft Windows o GNU/Linux, los principales sistemas a prueba en los documentos técnicos originales, pero también afecta a otros procesadores y sistemas operativos.

En el caso de Meltdown, hay cuatro particularidades que resultan especialmente relevantes: Por lo general, los mecanismos anteriormente descritos se consideran seguros, y proporcionan la base sobre la que se fundamentan la mayoría de sistemas operativos y procesadores modernos.

Para comprender el funcionamiento de Meltdown, consideremos la información que está mapeada en memoria virtual (gran parte de la cual se supone que resulta inaccesible para el proceso en cuestión), y veamos cómo responde la CPU cuando un proceso intenta acceder a memoria no autorizada.

Normalmente esto no tiene efecto alguno y la seguridad está garantizada, puesto que la información leída nunca se pone a disposición de otros procesos hasta completarse la comprobación de privilegios.

Estos parches se lanzaron un mes antes de que las vulnerabilidades fueran hechas públicas.

[99]​[100]​[101]​ Se ha indicado que la implantación de KPTI puede conllevar una reducción en el rendimiento de la CPU, que alcanzaría según algunos investigadores hasta un 30% dependiendo del uso, aunque Intel consideró este último extremo una exageración.

[103]​[104]​ Esto se debe a que la limpieza selectiva del translation lookaside buffer (TLB) habilitada por el PCID (también llamado número de espacio de dirección, ASN, bajo la arquitectura Alpha) hace que el comportamiento del TLB compartido que resulta crucial para la vulnerabilidad se aisle entre procesos sin estar constantemente limpiando toda la caché: la principal razón del coste de la mitigación.

[21]​ Phoronix comparó varios juegos de PC populares en un sistema Linux con la CPU Coffee Lake Core i7-8700K de Intel y los parches KPTI instalados, y descubrió que el posible impacto en el rendimiento sería mínimo o inexistente.

[15]​[16]​[17]​[18]​ Mientras tanto, en Estados Unidos ya se han entablado tres demandas contra Intel por, entre otras cosas, prácticas engañosas, violación de la garantía implícita, negligencia, competencia desleal y enriquecimiento ilícito.

[106]​ Existen numerosos informes de que el parche de Microsoft KB4056892 para mitigar Meltdown y Spectre está causando que algunas computadoras con procesadores AMD no puedan iniciar el sistema operativo;[107]​[108]​ el problema parece afectar en particular a las computadoras con procesadores de la gama AMD Athlon.