Articulo de referencia

Prefecher dependiente de la memoria de datos

Un prefetcher dependiente de la memoria de datos ( DMP ) es un prefetcher de caché que examina el contenido de la memoria caché en busca de posibles valores de puntero y precarg...

Un prefetcher dependiente de la memoria de datos ( DMP ) es un prefetcher de caché que examina el contenido de la memoria caché en busca de posibles valores de puntero y precarga los datos en esas ubicaciones en la caché si detecta patrones de acceso a la memoria que sugieren que seguir esos punteros sería útil. [ 1 ] [ 2 ]

En 2022, la precarga de datos ya era una característica común en las CPU, [ 3 ] pero la mayoría de los precargadores no inspeccionan los datos dentro de la caché en busca de punteros, sino que funcionan monitoreando los patrones de acceso a la memoria. Los precargadores dependientes de la memoria de datos van un paso más allá.

Se demostró que el DMP en la arquitectura de computadora M1 de Apple podía usarse como canal lateral de memoria en un ataque publicado a principios de 2024. En ese momento, sus autores desconocían cualquier forma práctica de explotarlo. [ 4 ] Posteriormente, se descubrió que el DMP era aún más oportunista de lo que se pensaba, y ahora se ha demostrado que puede usarse para atacar eficazmente una variedad de algoritmos criptográficos en un trabajo llamado GoFetch por sus autores. [ 5 ] [ 6 ]

Los procesadores Intel Core también tienen funcionalidad DMP (Intel usa el término "Data Dependent Prefetcher"), pero Intel afirma que tienen características para evitar que sus DMP se utilicen para ataques de canal lateral. [ 7 ] Los autores de GoFetch afirman que no pudieron hacer que su exploit funcionara en procesadores Intel. [ 6 ]

Referencias

  1. "Augurio: Uso de prefetchers dependientes de la memoria de datos para filtrar datos en reposo" . www.prefetchers.info . 2 de mayo de 2022. Consultado el 30 de marzo de 2024 .
  2. Vicarte, Jose Rodrigo Sanchez; Flanders, Michael; Paccagnella, Riccardo; Garrett-Grossman, Grant; Morrison, Adam; Fletcher, Christopher W.; Kohlbrenner, David (mayo de 2022). Augury: Uso de prefetchers dependientes de la memoria de datos para filtrar datos en reposo . Simposio IEEE de 2022 sobre seguridad y privacidad (SP) . San Francisco, CA, EE. UU.: IEEE. págs. 1491–1505 . doi : 10.1109/SP46214.2022.9833570 . ISBN  978-1-6654-1316-9.
  3. Bakhshalipour, Mohammad; Shakerinava, Mehran; Golshan, Fatemeh; Ansari, Ali; Lotfi-Karman, Pejman; Sarbazi-Azad, Hamid (2020-09-01). "Un estudio sobre los enfoques recientes de precarga de datos de hardware con énfasis en servidores". arXiv : 2009.00715 [ cs.AR ].
  4. Goodin, Dan (21 de marzo de 2024). "Vulnerabilidad irreparable en un chip de Apple filtra claves de cifrado secretas" . Ars Technica . Consultado el 21 de marzo de 2024 .
  5. "Investigadores afirman que un fallo en el chip Apple Silicon puede filtrar claves de cifrado" . AppleInsider . 21 de marzo de 2024. Consultado el 22 de marzo de 2024 .
  6. 1 2 "GoFetch: Rompiendo implementaciones criptográficas de tiempo constante usando prefetchers dependientes de la memoria de datos" . gofetch.fail . Recuperado el 22 de marzo de 2024 .
  7. "Data Dependent Prefetcher" . Intel . Archivado del original el 4 de agosto de 2024. Consultado el 21 de marzo de 2024 .