El trabajo de investigación conjunto entre la Universidad pública de Williamsburg, la Universidad tecnológica de Graz, el grupo de investigación DistriNet y la KU de Lovaina junto con algunos de los expertos que idearon los ataques de Meltdown y Spectre dio lugar al descubrimiento de siete nuevos ataques, variantes de Meltdown y Spectre.
Variantes de Meltdown y Spectre. Fuente https://arxiv.org/abs/1811.05441
Estos nuevos ataques se basan en una técnica conocida como “transient execution” o “ejecución transitoria”, utilizada en procesadores modernos para aumentar la concurrencia y con ella la velocidad de procesado. El ataque, permite revelar información de la memoria física inaccesible por el usuario, mediante la observación del estado de la microarquitectura y su posterior transferencia a un estado arquitectónico.
Los nuevos ataques son dos son variantes de Meltdown y cinco de Spectre.
Meltdown-PK (Protection Key Bypass)
Permitiría romper el aislamiento PKU (Clave de protección de la memoria de usuario) para leer y escribir en un espacio protegido. Este mecanismo de protección está presente en chips Intel Skylake-SP y requeriría una actualización del hardware para solventar el fallo.
Meltdown-BR (Bounds Check Bypass)
Permitiría revelar información a través de las excepciones producidas por el módulo de verificación de límites (Bound Range Exceptions) en chips de Intel y AMD.
Spectre-PHT (Pattern History Table)
Estos ataques explotan la tabla de historial de patrones para revelar información oculta. Se distinguen tres variantes, dependiendo de la rama que se esté explotando y la localización de la información revelada.
- Spectre-PHT-CA-OP (Cross-Address-space Out of Place): dentro de un espacio de direcciones controlado por el atacante.
- Spectre-PHT-SA-IP (Same Address-space In Place): dentro del mismo espacio de direcciones y la misma rama que se está explotando.
- Spectre-PHT-SA-OP (Same Address-space Out of Place): en el mismo espacio de direcciones pero en distinta rama.
Por último, otras dos variantes basadas en la explotación del búfer de la rama de destino (BTB).
Specter-BTB (Branch Target Buffer)
- Specter-BTB-SA-IP (Same Address-space In Place): en mismo espacio de direcciones y la misma rama que se está explotando.
- Specter-BTB-SA-OP (Same Address-space Out of Place): en mismo espacio de direcciones con una rama diferente.
Chips de AMD, ARM e Intel son vulnerables a estas cinco variantes de Spectre.
Los fabricantes fueron notificados de manera responsable por los investigadores y están trabajando en una solución para mitigar estos ataques.
Más información:
A Systematic Evaluation of Transient Execution Attacks and Defenses
https://arxiv.org/abs/1811.05441
Transient Execution Attacks
https://gruss.cc/files/vusec18.pdf
Por Francisco Salido
Dejar un comentario