El año no podía empezar mucho peor en el ámbito de la seguridad. Si ayer hablábamos del error de diseño en los microprocesadores de Intel y sus graves consecuencias, ahora se han conocido nuevos datos que indican que ese primer problema de seguridad (bautizado como 'Meltdown') que sí se puede solucionar con parches tiene una variante aún más peligrosa.
Se trata de Spectre, un fallo de diseño similar al de Intel pero que es aún más grave porque afecta no solo a los procesadores de este fabricante, sino también a los diseños de AMD y ARM. Los datos que se tienen en estos momentos revelan algo aún más preocupante: no hay solución para atajar un potencial ataque que explote la vulnerabilidad que presenta Spectre.
Lamentamos presentaros a Meltdown y Spectre
Cuando hablábamos del problema de diseño de los procesadores de Intel explicábamos ese primer problema: procesos con privilegios bajos (aquellos que lanzan las aplicaciones de usuario convencionales) podían acceder a la memoria del kernel del sistema operativo, el 'sancta sanctorum' de estas plataformas.

Un ataque que explotase dicho problema permitiría a un software malicioso espiar lo que están haciendo otros procesos y también espiar los datos que están en esa memoria en el ordenador (o dispositivo móvil basado en micros Intel) atacado. En máquinas y servidores multi-usuario, un proceso en una máquina virtual podría "cotillear" en los datos de la procesos de otros procesos en ese servidor compartido.
Ese primer problema, como decíamos, es en realidad solo parte del desastre. Los datos actuales provienen especialmente de un grupo de investigadores de seguridad formados por expertos del llamado Project Zero de Google, de la Universidad de Tecnología de Graz, de la Universidad de Pennsylvania, de la Universidad de Adelaida en Australia y de las empresas de seguridad informática Cyberus y Rambus.
Todos ellos han publicado los detalles de dos ataques basados en estos fallos de diseño. Los nombres de esos ataques son Spectre y Meltdown, y en un sitio web dedicado a describir estas vulnerabilidades destacaban que "aunque los programas normalmente no tienen permiso para leer datos de otros programas, un programa malicioso podría explotar Metldwon y Spectre y apropiarse de secretos almacenados en la memoria de otros programas". Como revelan en su estudio, la diferencia fundamental entre ambos es que Meltdown permite aceder a la memoria del sistema, mientras que Spectre permite acceder a la memoria de otras aplicaciones para robar esos datos.
Estos ataques se presentan en tres variantes distintas ( CVE-2017-5715 / CVE-2017-5753 / CVE-2017-5754, dos de ellas de Spectre, otra de Meltdown, como explican en Project Zero) y están presentes en diversos sistemas: ordenadores personales, dispositivos móviles, y la nube, y como advertían en esa descripción "dependiendo de la infraestructura del proveedor en la nube, podría ser posible robar datos de otros clientes". Las diferencias entre uno y otro son importantes:
- Meltdown: como revela ese estudio, este ataque permite a un programa acceder a la memoria (y secretos) de otros programas y del sistema operativo. "Meltdown rompe el aislamiento fundamental que existe entre las aplicaciones de usuario y el sistema operativo". El problema afecta a ordenadores personales y a la infraestructura cloud (es el problema del que hablábamos ayer y que afecta, que se sepa, a procesadores de Intel). Es importante destacar que hay parches software para atajar los ataques Meltdown.
- Spectre: este problema va más allá y "rompe el aislamiento entre distintas aplicaciones". Un atacante podría usarlo para vulnerar la seguridad de aplicaciones que han sido programadas perfectamente y "siguiendo las mejores prácticas", y de hecho seguir esas prácticas acaba siendo irónicamente contraproducente, ya que hace estos programas más vulnerables a Spectre. A diferencia de Meltdown, no hay parches software para Spectre, que eso sí, es más difícil de explotar que Meltdown, pero también "más difícil de mitigar". Algunos parches software pueden evitar ataques Spectre con exploits conocidos que traten de aprovechar esta vulnerabilidad.
Meltdown afecta a todos los procesadores Intel que hagan uso de la tradicional Out-of-Order Execution, y eso incluye básicamente a todos los que están funcionando a día de hoy en nuestros equipos, ya que estos procesadores llevan produciéndose desde 1995. Solo los Itanium y los Intel Atom desarrollados antes de 2013 están fuera de peligro. Los investigadores no han podido comprobar de momento si el problema afecta también a los procesadores de ARM y de AMD, y solo indican que "no está claro" si también podrían estar expuestos.

En el caso de Spectre, "prácticamente todos los sistemas" están afectados por esta vulnerabilidad. Así pues, los riesgos son mayores y plantean una amenaza para nuestros ordendores de sobremesa, portátiles, tabletas, móviles, smartphones y cualquier otro dispositivo que cuente con un diseño de Intel, AMD o ARM.
Los responsables de estas revelaciones explicaban que la respuesta a la pregunta "¿estoy yo afectado por el problema?" es un contundente "con toda probabilidad, sí", pero es que de momento no hay forma de saber si alguien ha logrado efectuar un ataque con estas técnicas, ya que que se sepa dichos ataques no dejan huella en los ficheros de registro del sistema. Los antivirus podrían ayudar a mitigar el problema, pero lo más probable es que no puedan servir de mucho ya que esos ataques pueden disfrazarse como aplicaciones aparentemente inocuas.
La ejecución especulativa, la raíz de un problema que sacrifica seguridad a cambio de velocidad
Erik Bosman, un investigador del grupo de seguridad VUSEC de la Universidad de Amsterdam, lograba hace unas horas reproducir un ataque aprovechando la vulnerabilidad de los procesadores de Intel.
Bingo! #kpti #intelbug pic.twitter.com/Dml9g8oywk
— brainsmoke (@brainsmoke) 3 de enero de 2018
El problema tiene como raíz la llamada "ejecución especulativa". Cuando un procesador Intel ejecuta código y llega un punto en un algoritmo en el que las instrucciones se bifurcan en dos direcciones distintas dependiendo de los datos de entrada, esas instrucciones ahorran tiempo "especulando" con el camino por el que se seguirá ejecutando el proceso.
Básicamente lo que hacen es tratar de adivinar lo que va a pasar, por dónde va a seguir ejecutándose el programa, y adelantarse para ganar terreno y ventaja. Si el procesador se da cuenta de que esa apuesta especulativa era errónea, retrocede en el hilo de ejecución y tira a la basura ese trabajo.
Confirming that @brainsmoke's side-chanel technique works for reading kernel memory from unprivileged user processes. b4f72bc761551e9d5b4653daa7a30c06494196778c26b8f0fe151fc44700aa5f pic.twitter.com/5PRUwI0E5c
— Trammell Hudson ⚙ (@qrs) 3 de enero de 2018
El problema es, como explicaba Bosman, que los procesadores Intel no separan de forma completa los procesos con privilegios bajos y de baja confianza de aquellos que pueden acceder a la memoria restringida del kernel del sistema operativo. O lo que es lo mismo: un hacker puede engañar al procesador y hacer que ese proceso "normal" eche un vistazo a la memoria del núcleo gracias a la ejecución especulativa.
Daniel Gruss, uno de los investigadores que descubrió estos ataques, explicaba cómo "básicamente lo que ocurre es que el procesador va demasiado lejos, ejecutando instrucciones que no debería". El problema es que si al final esa predicción especulativa no era válida, el procesador vuelve atrás y se deshace de esos datos con los que especulaba, pero atención, porque no lo hace de forma efectiva.
Antes de hacerlo los almacena en su caché, una memoria especialmente rápida que da acceso a datos frecuentes. Un hacker podría ser capaz de diseñar peticiones al procesador para lograr aprovechar esos fallos especulativos y componer un puzzle muy peligroso: acceder a esa memoria privilegiada y a datos como contraseñas que quedaron guardadas en esa caché unos instantes antes de ser borrados. Instantes suficientes para que un código malicioso los recupere.
Como explican en Wired, algunos investigadores de seguridad creyeron que este problema de seguridad en las CPUs de Intel permitía a los hackers superar la seguridad impuesta por el KASLR (Kernel Address Space Layout Randomization) del que hablábamos ayer. Esa aleatoriedad con la que se almacena el código del núcleo hacía muy difícil poder acceder a dicha memoria, pero esta vulnerabilidad hacía que ese mecanismo de seguridad fallase.
Lo que ocurre ahora es que con el descubrimiento de Bosman el error se vuelve más peligroso: no solo es posible localizar las zonas de memoria con el código del kernel: también se puede echar un vistazo a esas zonas y robar los datos que contienen.
Intel echa balones fuera, AMD y ARM reconocen estar afectados pero minimizan el impacto
En el comunicado que Intel lanzaba hace unas horas la empresa no parecía dar demasiada relevancia a la amenaza planteada por Meltdown, el fallo que solo les afectaba a ellos, y en lugar de eso hablaba de cómo los problemas afectaban también tanto a AMD como a ARM.

En ese mensaje Intel mencionaba que según sus análisis el problema puede afectar "a muchos tipos de dispositivos informáticos, con todo tipo de procesadores y sistemas operativos de diferentes proveedores". Aquí Intel probablemente no hablaba de Meltdown, el error del que muchos medios nos hicimos eco ayer, sino de Spectre, el otro problema —aún más grave— que ha salido a la luz en las últimas horas.
Ina Fried, de Axios, mencionaba hace unas horas que efectivamente había dos problemas distintos. El primero, el que afectaba solo a Intel, quedaba ensombrecido por el segundo, que afectaba a todo tipo de procesadores, incluidos los diseños de AMD y ARM.
Eso plantea una amenaza aún mayor a la seguridad, puesto que además de nuestros ordenadores personales o portátiles también habría potenciales riesgos de seguridad para nuestros dispositivos móviles, la inmensa mayoría de los cuales están basados en procesadores ARM. Esta última confirmó que algunas de sus arquitecturas para dispositivos móviles están afectadas, como por ejemplo las usadas en los procesadores Cortex-A que son prácticamente la norma en el mundo de la movilidad.

En ARM, que ha publicado un documento con detalles específicos de sus procesadores, explicaron que para aprovechar una vulnerabilidad de este tipo "el malware debe ejecutarse de forma local y podría resultar en que se accediera a datos de la memoria privilegiada". AMD también confirmó estar afectada por el problema, aunque de forma mucho más leve que Intel:
Para aclarar las cosas, el equipo de investigación en seguridad identificó tres variantes que se orientaban a atacar la ejecución especulativa. La amenaza y la respuesta a esas tres variantes es distinta según cada empresa de microprocesadores, y AMD no es susceptible a las tres. Debido a las diferencias en la arquitectura de AMD, creemos que hay un riesgo prácticamente nulo para los procesadores de AMD en estos momentos.
Parches en camino
Las diversas empresas tecnológicas ya se han pronunciado y como comentábamos, los parches que tratan de dar solución a estos problemas o que tratan al menos de mitigarlos están en pleno desarrollo. Los desarrolladores del kernel Linux fueron los primeros en plantear los llamados parches KAISER, y hay ya nuevas versiones del kernel con esos parches aplicados que irán llegando a las distintas distribuciones Linux a través de los gestores de paquetes.

Microsoft por su parte ha publicado un parche de emergencia para todos los dispositivos basados en Windows 10 —podéis aplicarlo revisando las actualizaciones en la Configuración de Windows—, pero habrá más actualizaciones pronto. En Apple, que se ha mantenido al margen del debate por el momento, sí han publicado un parche parcial con la versión 10.13.2 de macOS.
Los investigadores de Google daban muchos más detalles técnicos sobre el funcionamiento de estos ataques en el blog oficial de Project Zero, y allí explicaban cómo el problema afecta tanto a dispositivos Android y Chrome OS, aunque según esos expertos explotar la vulnerabilidad "es difícil y limitado en la mayoría de dispositivos Android".
Según ese estudio, la próxima versión de Chrome que se publicará el 23 de enero se modificará para mitigar el ataque y se habilitará la opción "aislamiento de sitios" (podéis activarla manualmente como explican aquí) para ampliar la protección en este ámbito. La Plataforma Cloud de Google (GCP) y las aplicaciones de la G Suite también están siendo parcheadas, y como indican en Google los usuarios de la suite G no tienen que hacer nada para estar protegidos.
El blog de seguridad de Google tienen más información al respecto, y en él se puede comprobar qué acciones hay que realizar en distintas plataformas de Google (Android, Google Apps, Google Chrome/OS) o productos que como los Chromecast o Google Home no están afectados por el problema.
En el ámbito de la infraestructura cloud, donde los riesgos son igualmente enormes (imprevisibles, pero aparentemente son incluso más preocupantes) las empresas también están actuando, como decíamos ayer. En Azure han decidido adelantar sus mantenimientos programados, que se efectuarán durante esta madrugada (3:30 PM PST, 3 de enero de 2018). Amazon también ha publicado un comunicado en el que avisa de que la mayoría de las instancias de Amazon EC2 están protegidas (suponemos que hablan de Meltdown) y habrá más actualizaciones en el futuro.
El impacto final tras aplicar esos parches y actualizaciones es imprevisible: en Intel indicaban que ese impacto será probablemente despreciable y dependerá de la carga de trabajo, pero otros estudios preliminares a los que aludíamos en nuestros artículos de ayer apuntaban a bajadas de rendimiento de entre el 5 y el 30%. Las incógnitas en este ámbito también son notables, y habrá que esperar a tener más datos para poder confirmar ese impacto en el rendimiento, si es que realmente existe.
Más información | Meltdown and Spectre | Meltdown (PDF) | Spectre (PDF)
Ver 48 comentarios
48 comentarios
zoompyy
Un millón de gracias por este pedazo resumen, Javier.
charles_dexter_ward
AMD ya hizo su declaración oficial de prensa, el tipo 1 (spectre) de ataque ya fue resuelto a nivel de software y según ellos la penalización en su CPU es despreciable, para la variante 2 de spectre no se ha demostrado que sea un problema o pueda ejecutarse en AMD y para meltdown según AMD no existe la posibilidad de que exista un ataque, pues no es suceptible, así que según AMD, sus procesadores ya no son suceptibles a ninguna de las variantes descritas. La declaración de intel es que "continúan colaborando con los fabricantes de equipos y de sistemas operativos"
charles_dexter_ward
Hey pero yo ya leí los papers con los que le dieron el bounty a project zero:
Meltdown es exclusiva de intel
Spectre: Intel todos los probados, APU y FX en variante 1 (leer los resultados de ejecuciones especulativas fallidas exclusivamente del proceso en ejecución)
Spectre variante 2: Intel todos los probados sin precondicion, APU habilitando BPF-JIT que está deshabilitado por defecto (leer toda la memoria del kernel disponible)
La variante 1 de spectre es leer basura, la variante 2, para afectar a amd, requiere habilitar una opción deshabilitada por defecto y solo se ha probado en linux, por eso amd dice que "es nula o 0"
whisper5
¡ Por fin alguien se ha atrevido a decirlo !
"The underlying vulnerability is primarily caused by CPU architecture design choices. Fully removing the vulnerability requires replacing vulnerable CPU hardware."
"La vulnerabilidad subyacente está principalmente causada por elecciones de diseño en la arquitectura de la CPU. Eliminar completamente la vulnerabilidad requiere reemplazar el hardware de CPU vulnerable"
Ha sido el CERT, Computer Emergency Response Team, localizado en Carnegie Mellon University y financiado económicamente por "U.S. Department of Homeland Security’s Office of Cybersecurity and Communications".
http://www.kb.cert.org/vuls/id/584653
Es decir, esto sólo se arregla del todo cambiando la CPU. Vamos a ver si los diseñadores de las CPU se responsabilizan.
Usuario desactivado
Mare del amor hermoso, y en el problema de ARM las empresas que diseñan sus SoCs como Samsung, Qualcomm, Apple, Mediatek o Huawei ¿no sabían nada? esto se ha ido de madre.
Mirsof
No es por ser paranoico pero creo que la NSA ya sabia de este fallo de seguridad y se había estando aprovechando de hace mucho tiempo sin decir nada creando programas espias.. Ahora tendría sentido muchas cosas -_-
benten
Como me recuerda todo esto al escandalo de los diésel. Las empresas haciendo trampas y envenenándonos mas de lo que declaraban hasta que algun investigador descubre el pastel y explota la olla. Y seguro que en general todo lo que sale a la luz es sólo la punta del iceberg.
He leido por ahí que casualmente el presidente de Intel hace poco vendió todas las acciones que tenía de la compañía. Es una puta verguenza.
Las empresas, el mercado, los controles, los gobiernos...todo es una inmensa casa de putas.
ScrumMaster
Se ha comprobado que no afecta en rendimiento a los usuarios normales sólo a sistemas virtualizados donde bajan entre 5-30%, los demás no vamos a notar la diferencia con los parches, eso si Xataka por su orientación clickbait no va a decir nada, en fin.
whisper5
Los descubridores de Spectre describieron muy bien la situación. Ahora hace falta que las grandes tecnológicas se responsabilicen de verdad:
"Las vulnerabilidades en este documento, así como muchas otras, surgen de un enfoque de muchos años en la industria de la tecnología para maximizar el rendimiento. Como resultado, los procesadores, los compiladores, los controladores de dispositivos, los sistemas operativos y muchos otros componentes críticos han evolucionado en capas complejas de optimizaciones que introducen riesgos de seguridad. A medida que aumentan los costos de inseguridad, estas opciones de diseño deben revisarse y, en muchos casos, se requerirán implementaciones alternativas optimizadas para la seguridad."
Es decir, han puesto la velocidad en primer lugar, relegando a un segundo plano la seguridad, y ahora lo estamos pagando todos.
manuti
Pues a desempolvar mi apple con procesador PowerPC!
chulisssesss
Hay un detalle importante AMD zen (ryzen y epyc) no son susceptibles a Spectre ni ha meltdown
superjmn
Ojalá fuera 1 de Abril o 28 de Diciembre.
ryderman
Un pequeño detalle:
Meltdown sí es posible que afecte también a ARM, PowerPC y otros fabricantes de x86, recomiendo echar un ojo a esta página:
https://meltdownattack.com/ La publicó la universidad de Graz uno de los equipos que detecto la vulnerabilidad. No tiene sentido especular con que AMD esté libre, ARM o cualquier otra arquitectura.
cesarthrash
Es el agente Smith que ha logrado no solo volver al sistema, sino que también ha logrado auto replicarse y copiarse en otros individuos de la matrix
miguelangelo52
ahi esta pues, cuando se centran en la potencia y no en otras características, para q aprendan.
gerarddelriu
Solo afecta a DataCenters esto no es problema de PC domesticos porfavor aclarad esto. El fallo permite por ejemplo acceder a información de otra VM de un DataCenter. En el uso de un PC domestico no se puede explotar este fallo. Dejad de alarmar de gratis e informaros bien.Os recomiendo ver el video sobre el tema de @Hardware360 en Youtube.
sarpullido
Gran articulo, 10/10
juanjofm
Madre mia que desastre... Solo digo eso...
sologizmos
¿Aqui igual diran algunos que exageramos y no hay nada de preocuparse?
Ahora, ¿literal desconectarnos del mundo o comernos procesadores con menos rendimiento y peor aun, el nuevo hardware a salir sera confiable?. Vaya lio y gordo.
1995, la P...A concha de la lora :v
superjmn
No pensé que el apocalipsis fuera a venir de esta forma. ¡Que Dios nos pille confesados!
Chizko
Genial resumen, ahora a esperar que se hagan responsables legalmente.
ximix84
Excelente resumen del problema
man_chester
Ahora, después de todo esto, cuál sería el mejor momento para cambiar de procesador? me refiero a que yo tenía pensado actualizar mi equipo de sobremesa, compensa comprar uno ahora? mejor esperar a.... ¿Cuando? ¿Qué serie de procesadores futura estará sin problemas?
aarontestevez
Antes de nada, muchísimas gracias por compartir semejante información para todos los usuarios tecnológicos, prácticamente la totalidad de la población con un mínimo de recursos económicos está afectada por dichos agujeros de seguridad. En mi caso, tengo varios equipos con CPUs Intel y productos con arquitectura ARM, solamente se salva una tablet con Atom la cual ya ni la uso, pero viniendo el caso, más me vale empezar a usar xD.
Mis dudas son las siguientes:
- ¿Qué debemos hacer ahora los usuarios?
- ¿Cómo podemos averiguar, cuando nos actualicen los OS, si nos han recortado el rendimiento de la CPU? En tal caso, ¿con productos fuera de garantía podremos reclamar?
Un saludo.
edumartin74
¿Y qué hacemos los que estamos pensando en cambiar de PC? ¿Esperamos?¿AMD?
Vaya tela..... Vaya indecisión
llopis84
yo sigo con dudas.
si tenemos un host de hyper-v con parche instalado y una maquina virtual sin parche? Esta maquina virtual esta afectada?
mr.robotic
Alguna info a agregar: 01/06/2017 fue avisado Intel, AMD y ARM de las 3 variantes por ProjectZero de Google: googleprojectzero.blogspot.com.uy/2018/01/reading-privileged-memory-with-side.html
Lanzamiento de Coffee Lake en Setiembre del 2017??
6 meses para sacar una solución parcial al problema??
La planificación de las ventas de acciones por parte del CEO de Intel se realizaron después (en octubre) de estar en conocimiento de los problemas de seguridad: businessinsider.com/intel-ceo-krzanich-sold-shares-after-company-was-informed-of-chip-flaw-2018-1
Lo que AMD dice del tema:
amd.com/en/corporate/speculative-execution
La lista de procesadores afectados:
security-center.intel.com/advisory.aspx?intelid=INTEL-SA-00088&languageid=en-fr
Entre ellos: 8th generation Intel® Core™ processors
joamator
Vaya, que mejor me voy buscando un mac antiguo con Power PC.
ScrumMaster
Amarillismo puro es poner posible pérdida de rendimiento y tienes clickbait para toda la semana en todos los medios, esto lo sabría la NSA seguro y alguien de AMD ha tirado el chivatazo resultado Intel ha soltado otro, cool.