SWAPGS: otra vulnerabilidad especulativa que afecta CPU’s de Intel y AMD

0

Se a develado otra vulnerabilidad que afecta a los procesadores, llamada SWAPGS, revelada bajo el código CVE-2019-1125, como se menciona en la industria. La vulnerabilidad fue descubierta hace doce meses, a lo que un investigador de seguridad le reportó de manera privada a Intel, pero, supuestamente también puede afectar a CPU’s de AMD, aunque los investigadores de seguridad de Bitdefender solo probaron que funciona en plataformas Intel. Red Hat emitió una declaración que establece que ambas plataformas están afectadas y que los usuarios deben actualizar sus sistemas lo antes posible. Microsoft ya implementó una solución con su actualización «Patch Tuesday» el mes pasado, por lo que si actualizaste tu sistema operativo recientemente, ya está protegido contra SWAPGS.

AMD ya emitió una declaración al respecto, que dice: «AMD está al tanto de una nueva investigación que afirma nuevos ataques de ejecución especulativa que pueden permitir el acceso a datos privilegiados del núcleo. Basado en análisis externos e internos, AMD cree que no es vulnerable a la variante SWAPGS ataques porque los productos AMD están diseñados para no especular sobre el nuevo valor GS después de un SWAPGS especulativo. Para el ataque que no es una variante de SWAPGS, la mitigación es implementar nuestras recomendaciones existentes para la variante 1 de Specter «.

SWAPGS es un exploit de tipo Spectre, que aprovecha la predicción de ramificación del procesador (que predice cuándo cambiar la secuencia de instrucciones para mejorar el rendimiento). El procesador especula qué secuencia de instrucciones es más probable que se ejecute a continuación y prepara sus estados internos para eso. Al observar estas instrucciones, se pueden revelar datos posiblemente confidenciales al observar los resultados de sincronización.

SWAPGS actúa de manera similar a Spectre, llevando el nombre de la instrucción x86-64, que también se llama SWAPGS, y que intercambia el registro GS (solo uno de los registros de segmento que construyen una dirección de memoria completa), con un valor destinado a ser utilizado durante las operaciones del núcleo. Debido a su naturaleza, SWAPGS no realiza ningún tipo de corrección en los datos que utiliza, por lo tanto, se puede realizar un ataque. Durante el período de intercambio, el atacante puede insertar cualquier valor sin que el procesador reciba errores o advertencias.

¿En qué porcentaje esta vulnerabilidad afecta los sistemas? El impacto en el rendimiento de la mitigación SWAPGS se ha probado con el último kernel de Linux. Phoronix comparó el Core i9 9900K de Intel y encontraron una reducción del 1 al 5% en el rendimiento de los puntos de referencia sintéticos con una reducción general del 1% en promedio al tener en cuenta todos los puntos de referencia.