La semana pasada vimos que Meltdown y Spectre ponían patas arriba la computación a nivel mundial, ya que errores de diseño en las CPU han dejado comprometida la seguridad ofrecida por prácticamente cualquier computador (o al menos gran parte de las arquitecturas y marcas conocidas).
Meltdown ha tenido un impacto más limitado, sabiéndose hasta ahora que están afectados los procesadores de Intel, algunos modelos de ARM e incluso los dispositivos iOS. Ya hay un parche para acabar con la única vulnerabilidad que abarca este vector de ataque, pero todo apunta a que su aplicación tendrá un coste en el rendimiento, un impacto que pinta será mayor en los entornos corporativos que para los usuarios finales.
Por su parte, Spectre parece más complicado de parchear debido a que se apoya en una característica necesaria para que las CPU de alto rendimiento den lo mejor de sí, aunque aparentemente también es más difícil de explotar. Según la información que hemos recogido, todavía no hay parches definitivos para las dos vulnerabilidades que abarca, y todo pinta que su creación costará bastante esfuerzo y tiempo.
Greg Kroah-Hartman, uno de los pesos pesados en el desarrollo del kernel Linux, ha intentado resumir en su blog personal la situación de Meltdown y Spectre desde la óptica que le concierne a él, la del kernel Linux. Antes de empezar a detallar la situación, Kroah-Hartman recomienda aplicar las actualizaciones del kernel en cuanto estén disponibles para reforzar la seguridad, mientras los parches están llegando o están a punto de llegar a las principales distribuciones.
Meltdown
Greg Kroah-Hartman expone el problema de Meltdown desde las dos arquitecturas afectadas: x86 y ARM64 (obviamente, los dispositivos iOS son cosa de Apple). Para poner fin a Meltdown en x86 se ha optado por incluir CONFIG_PAGE_TABLE_ISOLATION, un Aislamiento de la Tabla de Página (PTI) que AMD intenta esquivar a toda costa para no verse afectada por la disminución en el rendimiento que acarrea.
Aunque PTI parece que va a ser incluido por defecto en Linux 4.15, la importancia de este elemento a nivel de seguridad hará que sea portado hacia atrás a versiones anteriores, con especial mención a las LTS 4.14, 4.9 y 4.4. Aparentemente, la implementación del PTI a todas las versiones Linux soportadas requerirá de cierto trabajo adicional y estará presente como una característica opcional. Según Kroah-Hartman, se están encontrando problemas en vDSO y están apareciendo errores en ciertas configuraciones de máquinas virtuales.
En lo que respecta a ARM64, los parches para acabar con Meltdown todavía no se han fusionado con el árbol de Linus Torvalds, que sigue siendo el gran jefazo y “dictador benevolente” del proyecto. De momento, todo apunta que llegarán a Linux 4.16-rc1 tras la publicación de Linux 4.15. Debido a que todavía no está en el árbol de Torvalds, el parche no puede ser portado hacia atrás, sin embargo, parece las correcciones sí han sido fusionadas con el árbol Android Common Kernel en las ramas 3.18, 4.4 y 4.9.
Kroah-Hartman dice que los parches posiblemente nunca lleguen a las ramas oficiales 4.4 y 4.9 de Linux ARM64 debido a la gran cantidad de requisitos previos, así que recomienda usar los kernels para Android en lugar del Linux “oficial”. Por otro lado, vuelve a recomendar tener el kernel actualizado para evitar problemas.
Spectre
El tema de Spectre es más complicado de tratar por lo que ya hemos explicado, así que todo apunta a que no veremos, al menos a corto plazo, una solución definitiva para parchear las dos vulnerabilidades que abarca.
Greg Kroah-Hartman cuenta que algunas distribuciones han lanzado parches para mitigar la mayoría de las posibilidades de Spectre, aunque todavía no hay parches mezclados con ningún árbol del kernel Linux. Hasta ahora se han presentado diversas propuestas, pero se están estudiando y desarrollando, no sin obstáculos en el camino.
El motivo de por qué la situación en torno a Spectre esté así es debido a que los desarrolladores del kernel centraron sus esfuerzos en Meltdown, además que todavía no tienen una información precisa sobre qué es Spectre exactamente. Debido a esto, los desarrolladores del kernel todavía necesitarán varias semanas más para hallar una solución.
Parece que se han propuesto varias soluciones bastante prometedoras, pero todavía es pronto. Kroah-Hartman comenta que “esta va a ser un área de investigación en los próximos años para encontrar formas de mitigar posibles problemas que implican al hardware, que además intentará predecir el futuro antes de que suceda.”
Para concluir, Greg Kroah-Hartman insiste en recomendar la actualización del kernel en cuanto los parches estén disponibles y pide comprensión para unos desarrolladores que están trabajando duro para resolver los problemas presentados por Meltdown y Spectre.
Fuente: muylinux