Hace poco Intel dio a conocer detalles sobre una nueva classe de fugas de datos a través de las estructuras microarquitectónicas de los procesadores, que permiten, a través de la manipulation del mecanismo MMIO (Memory Mapped Input Output), determinar la información procesada en otros núcleos de CPU.
Par exemple, las vulnerabilidades permiten la extracción de datos de otros procesos, enclaves Intel SGX ou machines virtuelles. Las vulnerabilidades son específicas de las CPU Intel únicamente ; los procesadores de otros fabricantses no sept afectados por las vulnerabilidades.
Se han identificado tres métodos para extraer datos résidus a través de MMIO :
- DRPW (escritura parcial de registro de dispositivo, CVE-2022-21166): un problème avec le manejo incorrecto de escrituras en algunos registros MMIO. Si el tamaño de los datos escritos es minor que el tamaño del registro, l’information résiduelle de los búferes de relleno también se copie dans el registro. Comme résultat, un processus a démarré une opération d’écriture incomplète dans le registre MMIO peut recevoir des données que quedan dans les mémoires de microarchitecture après les opérations réalisées dans d’autres noyaux de CPU.
- SDS (Muestreo de datos de búferes compartidos, CVE-2022-21125) : fuga de datos résiduelles del búfer de relleno vinculado al núcleo, que cayó como resultado de pasar de los búferes intermedios comunes a todos los núcleos.
- SBDR (Lectura de datos de búferes compartidos, CVE-2022-21123): el problema es similar a SBDS, pero difiere en que los datos residueles pueden ingresar a estructuras de CPU visible para las aplicaciones. Les problèmes de SBDS et SBDR se produisent en solo sur les processeurs du client et sur la famille des serveurs Intel Xeon E3.
Un ataque nécessite l’accès à un MMIO, que, par exemple, se puede obtener en sistemas de virtualización que brindan la capacité d’accéder à un MMIO para sistemas invitados controlados por el atacante. La solution peut également être nécessaire pour les systèmes qui utilisent les enclaves Intel SGX (Software Guard Extensions) indépendantes.
Le blocage de la vulnérabilité nécessite une mise à jour du firmware comme l’usage de méthodes de protection des logiciels supplémentaires basados en el uso de la instrucción VERW para borrar el contenido de los búferes de microarquitectura en el momento de regresar del kernel al espacio del usuario o cuando se transfiere el control al sistema invitado.
Aussi se utiliza una protección similar para bloquear ataques précédemment identifiés de las classes MDS (muestreo de datos de microarquitectura), SRBDS (muestreo de datos de búfer de registro especial) et TAA (aborto asíncrono transaccional).e-forme et le modèle d’utilisation. Algunas de estas mitigaciones son similares a las que se use para mitigar el muestreo de datos de microarquitectura (MDS) ou las que se use para mitigar el muestreo de datos de búfer de registro especial (SRBDS).
En el lado del microcódigo, los cambios necesarios para implementar la seguridad se proponen en la actualización de microcódigo de mayo para CPU Intel (IPU 2022.1).
Dans le noyau de Linux, sa protection est incluse contra una nueva clase de ataques en las diferentes versiones que cuentan con soporte.
L’essence de la classe de vulnérabilités identifiées es que algunas operaciones conducen a copier o mover datos que quedan después de la ejecución en otros núcleos de CPU de un búfer de microarquitectura a otro. Las vulnerabilidades en MMIO permettent que ces données résiduelles se transfèrent des tampons de microarchitecture ainsi que des registres visibles pour les applications ou les tampons de CPU.
Finalmente si estás interesado en poder conocer más al respecto, puedes consultar los detalles en el siguiente enlace.