Los investigadores del MIT han demostrado que un componente de los procesadores informáticos modernos que permite que diferentes áreas del chip se comuniquen entre sí es susceptible a un ataque de canal lateral. Crédito:José-Luis Olivares, MIT
Un componente de los procesadores de computadora que conecta diferentes partes del chip puede ser explotado por agentes maliciosos que buscan robar información secreta de los programas que se ejecutan en la computadora, según descubrieron investigadores del MIT.
Los procesadores informáticos modernos contienen muchas unidades informáticas, llamadas núcleos, que comparten los mismos recursos de hardware. La interconexión en chip es el componente que permite que estos núcleos se comuniquen entre sí. Pero cuando los programas en múltiples núcleos se ejecutan simultáneamente, existe la posibilidad de que puedan retrasarse entre sí cuando usan la interconexión para enviar datos a través del chip al mismo tiempo.
Al monitorear y medir estos retrasos, un agente malintencionado podría realizar lo que se conoce como un "ataque de canal lateral" y reconstruir información secreta que se almacena en un programa, como una clave criptográfica o una contraseña.
Los investigadores del MIT realizaron ingeniería inversa de la interconexión en el chip para estudiar cómo sería posible este tipo de ataque. Basándose en sus descubrimientos, construyeron un modelo analítico de cómo fluye el tráfico entre los núcleos de un procesador, que usaron para diseñar y lanzar ataques de canal lateral sorprendentemente efectivos. Luego, desarrollaron dos estrategias de mitigación que permiten al usuario mejorar la seguridad sin realizar ningún cambio físico en el chip de la computadora.
"Muchas de las defensas de canal lateral actuales son ad hoc:vemos un poco de fuga aquí y lo reparamos. Esperamos que nuestro enfoque con este modelo analítico impulse defensas más sistemáticas y sólidas que eliminen clases enteras de ataques al mismo tiempo". ", dice el coautor principal Miles Dai, MEng '21.
Dai escribió el artículo con el coautor principal Riccardo Paccagnella, estudiante graduado de la Universidad de Illinois en Urbana-Champaign; Miguel Gómez-García '22; John McCalpin, científico investigador del Centro de Computación Avanzada de Texas; y la autora principal Mengjia Yan, profesora asistente de desarrollo profesional de Homer A. Burnell de Ingeniería Eléctrica y Ciencias de la Computación (EECS) y miembro del Laboratorio de Ciencias de la Computación e Inteligencia Artificial (CSAIL). La investigación se presenta en la Conferencia de Seguridad de USENIX.
Procesadores de sondeo
Un procesador moderno es como una cuadrícula bidimensional, con varios núcleos dispuestos en filas y columnas. Cada núcleo tiene su propio caché donde se almacenan los datos, y también hay un caché más grande que se comparte en todo el procesador. Cuando un programa ubicado en un núcleo necesita acceder a datos en un caché que está en otro núcleo o en el caché compartido, debe usar la interconexión en el chip para enviar esta solicitud y recuperar los datos.
Aunque es un componente importante del procesador, la interconexión en el chip sigue sin estudiarse porque es difícil de atacar, explica Dai. Un hacker necesita lanzar el ataque cuando el tráfico de dos núcleos realmente interfiere entre sí, pero dado que el tráfico pasa tan poco tiempo en la interconexión, es difícil sincronizar el ataque correctamente. La interconexión también es compleja y existen varias rutas que el tráfico puede tomar entre los núcleos.
Para estudiar cómo fluye el tráfico en la interconexión, los investigadores del MIT crearon programas que accederían intencionalmente a las memorias caché ubicadas fuera de sus núcleos locales.
"Al probar diferentes situaciones, probar diferentes ubicaciones e intercambiar ubicaciones de estos programas en el procesador, podemos entender cuáles son las reglas detrás de los flujos de tráfico en la interconexión", dice Dai.
Descubrieron que la interconexión es como una autopista, con múltiples carriles en todas direcciones. Cuando dos flujos de tráfico chocan, la interconexión utiliza una política de arbitraje de prioridad para decidir qué flujo de tráfico debe pasar primero. Las solicitudes más "importantes" tienen prioridad, como las de programas que son críticos para las operaciones de una computadora.
Usando esta información, los investigadores construyeron un modelo analítico del procesador que resume cómo puede fluir el tráfico en la interconexión. El modelo muestra qué núcleos serían más vulnerables a un ataque de canal lateral. Un núcleo sería más vulnerable si se puede acceder a él a través de muchos carriles diferentes. Un atacante podría usar esta información para seleccionar el mejor núcleo para monitorear para robar información de un programa víctima.
"Si el atacante entiende cómo funciona la interconexión, puede configurarse para que la ejecución de algún código confidencial sea observable a través de la contención de la interconexión. Luego, puede extraer, poco a poco, información secreta, como una clave criptográfica", explica Paccagnella. .
Ataques efectivos
Cuando los investigadores utilizaron este modelo para lanzar ataques de canal lateral, se sorprendieron de la rapidez con la que funcionaron. Pudieron recuperar claves criptográficas completas de dos programas víctimas diferentes.
Después de estudiar estos ataques, utilizaron su modelo analítico para diseñar dos mecanismos de mitigación.
En la primera estrategia, el administrador del sistema usaría el modelo para identificar qué núcleos son más vulnerables a los ataques y luego programaría software confidencial para que se ejecutara en núcleos menos vulnerables. Para la segunda estrategia de mitigación, el administrador podría reservar núcleos ubicados alrededor de un programa susceptible y ejecutar solo software confiable en esos núcleos.
Los investigadores descubrieron que ambas estrategias de mitigación podían reducir significativamente la precisión de los ataques de canal lateral. Ninguno requiere que el usuario realice cambios en el hardware físico, por lo que las mitigaciones serían relativamente fáciles de implementar, dice Dai.
En última instancia, esperan que su trabajo inspire a más investigadores a estudiar la seguridad de las interconexiones en el chip, dice Paccagnella.
"Esperamos que este trabajo resalte cómo la interconexión en el chip, que es un componente tan importante de los procesadores de computadora, sigue siendo una superficie de ataque que se pasa por alto. En el futuro, a medida que construimos sistemas que tienen propiedades de aislamiento más sólidas, no debemos ignorar la interconexión, " él añade.
Esta historia se vuelve a publicar por cortesía de MIT News (web.mit.edu/newsoffice/), un sitio popular que cubre noticias sobre investigación, innovación y enseñanza del MIT. ¿Hay una función de seguridad en camino que hace que la informática sea más rápida?