Una nova investigació revela que la vulnerabilitat de Spectre persisteix als últims processadors AMD i Intel
26/11/2024
Més de sis anys després que l’Errada de seguretat de Spectre impactés els processadors de les CPU moderns, acaba de sortir a la llum una nova investigació que ha descobert que els últims processadors AMD i Intel encara són susceptibles a atacs d’execució especulatius.
L’atac, divulgat pels investigadors de l’ETH Zurich Johannes Wikner i Kaveh Razavi, pretén soscavar la Barrera de predicció indirecta de branques (IBPB) en xips x86, una mitigació crucial contra els atacs d’execució especulatius.
L’execució especulativa fa referència a la funció d’optimització del rendiment on les CPU modernes executen determinades instruccions fora d’ordre i prediuen la branca que prendrà un programa per endavant, i d’aquesta manera acceleren la tasca si el valor utilitzat especulativament era correcte.
Si es tradueix en una predicció errònia, les instruccions anomenades transitòries es declaren no vàlides i deixen de funcionar, abans que el processador pugui reprendre l’execució amb el valor correcte.
Tot i que els resultats de l’execució d’instruccions transitòries no estan compromesos amb l’estat del programa arquitectònic, encara és possible que carreguin determinades dades delicades a la memòria cau del processador mitjançant una predicció errònia forçada, amb la qual cosa queden exposades a un adversari maliciós que, d’altra manera, es bloquejaria en accedir-hi.
Intel descriu IBPB com un «mecanisme de control de branques indirectes que estableix una barrera, i evita que el programari que s’executa abans de la barrera controli els objectius previstos de les branques indirectes executades després de la barrera en el mateix processador lògic.»
S’utilitza com a forma d’ajudar a contrarestar la injecció de diana de branca (BTI), també coneguda com a Spectre v2 (CVE-2017-5715), un atac d’execució transitòria (TEA) entre dominis que aprofita els predictors de branques indirectes utilitzats pels processadors per provocar un gadget de divulgació per ser executat especulativament.
Un gadget de divulgació fa referència a la capacitat d’un atacant d’accedir al secret d’una víctima que, d’altra manera, no seria visible arquitectònicament i d’exfiltrar-lo per un canal encobert.
Les últimes troballes de l’ETH Zürich mostren que es podria utilitzar un error de microcodi en microarquitectures Intel com ara la Golden Cove i la Raptor Cove per eludir l’IBPB. L’atac s’ha descrit com la primera «filtració pràctica d’espectre entre processos d’extrem a extrem.»
El defecte del microcodi «reté les prediccions de branques de manera que encara es poden utilitzar després que l’IBPB les hagi invalidat», van dir els investigadors. «Aquesta especulació posterior a la barrera permet a un atacant evitar els límits de seguretat imposats pels contextos de procés i les màquines virtuals.»
L’estudi va descobrir que la variant d’IBPB d’AMD es pot evitar de manera similar a causa de com s’aplica IBPB pel nucli de Linux, i provocar un atac, amb el nom en codi Post-Barrier Inception (també conegut com a PB-Inception), que permet a un adversari sense privilegis filtrar memòria privilegiada als processadors AMD Zen 1(+) i Zen 2.
Intel ha posat a disposició un pedaç de microcodi per abordar el problema (CVE-2023-38575, puntuació CVSS: 5,5). AMD, per la seva banda, està fent un seguiment de la vulnerabilitat codificada com a CVE-2022-23824, segons un assessorament llançat el novembre de 2022.
«Els usuaris d’Intel s’haurien d’assegurar que el seu microcodi intel·ligent estigui actualitzat», van dir els investigadors. «Els usuaris d’AMD s’haurien d’assegurar d’instal·lar les actualitzacions del nucli.»
La divulgació arriba mesos després que els investigadors de l’ETH Zürich detallessin noves tècniques d’atac de RowHammer amb nom en clau ZenHammer i SpyHammer, el darrer dels quals utilitza RowHammer per inferir la temperatura de la DRAM amb alta precisió.
«RowHammer és molt sensible a les variacions de temperatura, fins i tot si les variacions són molt petites (per exemple, ± 1 °C), van dir a l’estudi. «La taxa d’error de bits induïda per RowHammer augmenta (o disminueix) constantment a mesura que augmenta la temperatura, i algunes cèl·lules DRAM que són vulnerables a RowHammer només presenten errors de bits a una temperatura determinada.»
Aprofitant la correlació entre RowHammer i la temperatura, un atacant podria identificar la utilització d’un sistema informàtic i mesurar la temperatura ambient. L’atac també podria comprometre la privadesa mitjançant l’ús de mesures de temperatura per determinar els hàbits d’una persona a casa seva i els moments en què entra o surt d’una habitació.
«SpyHammer és un atac senzill i eficaç que pot espiar la temperatura dels sistemes crítics sense modificacions ni coneixements previs sobre el sistema víctima», van assenyalar els investigadors.
«SpyHammer pot ser una amenaça potencial per a la seguretat i la privadesa dels sistemes fins que s’adopti un mecanisme de defensa RowHammer definitiu i completament segur, la qual cosa és un gran repte atès que la vulnerabilitat de RowHammer continua empitjorant amb l’escala de la tecnologia.»