Simple Science

Ciencia de vanguardia explicada de forma sencilla

# Informática# Criptografía y seguridad# Arquitectura de hardware

INICIO: Una Nueva Defensa Contra los Ataques de Rowhammer

Te presentamos START, un método para rastrear la amenaza Rowhammer de manera efectiva y eficiente.

― 6 minilectura


START se defiende contraSTART se defiende contraRowhammeramenazas de memoria.Un método eficiente para rastrear
Tabla de contenidos

RowHammer es una vulnerabilidad en la memoria de las computadoras modernas que puede llevar a serias amenazas de seguridad. Con el avance de la tecnología de memoria, la cantidad de veces que hay que activar una fila de memoria para causar problemas ha disminuido significativamente. En la última década, este Umbral de Rowhammer ha bajado drásticamente, facilitando que los atacantes exploten esta debilidad. Las soluciones para contrarrestar el efecto Rowhammer generalmente implican rastrear qué filas de memoria están siendo activadas excesivamente, pero esto puede ser bastante complicado y consumir muchos recursos.

En este contexto, presentamos un nuevo método llamado START, que significa Seguimiento Escalable para Cualquier Umbral de Rowhammer. START tiene como objetivo proporcionar una forma confiable de rastrear las activaciones de filas de memoria sin usar mucho espacio de memoria adicional ni afectar el rendimiento. La meta es asegurar la seguridad contra ataques Rowhammer para las tecnologías actuales y futuras sin un consumo innecesario de recursos.

El Problema con Rowhammer

Los exploits de Rowhammer ocurren cuando una fila de memoria se activa repetidamente, causando que filas vecinas cambien bits y potencialmente corrompan datos. Cuando se descubrió por primera vez el efecto Rowhammer, el umbral para causar estos cambios de bits era de alrededor de 139,000 activaciones. Este número ha disminuido drásticamente a 4,800 en los últimos años, y las predicciones sugieren que el umbral podría bajar de 100 en un futuro cercano.

A medida que las tecnologías de memoria evolucionan, es esencial que los sistemas estén preparados para manejar estos riesgos. Una solución robusta debe ser capaz de rastrear activaciones de manera efectiva y emitir acciones mitigadoras, como refrescar filas cercanas, para prevenir que ocurran cambios de bits.

Soluciones Tradicionales y sus Limitaciones

La mayoría de las soluciones existentes rastrean las activaciones de memoria manteniendo registros detallados de qué filas son agresoras, es decir, las filas que causan problemas a sus vecinas. Sin embargo, los métodos tradicionales luchan con el número creciente de agresores a medida que el umbral disminuye. Crear estructuras de memoria dedicadas para rastrear puede ser intensivo en recursos y puede no ser práctico para todos los sistemas, especialmente aquellos con grandes capacidades de memoria.

Algunos enfoques dependen de muestreo aleatorio o técnicas predictivas, pero esto puede llevar a imprecisiones y posibles agujeros de seguridad. Las soluciones recientes de empresas como Samsung y SK Hynix también han mostrado limitaciones en la efectividad del rastreo, a menudo permitiendo que algunos agresores pasen desapercibidos.

El Enfoque START

Para abordar estos desafíos, START usa una estrategia diferente. En lugar de depender de grandes estructuras de memoria dedicadas para el rastreo, reutiliza espacio en la Caché de Último Nivel (LLC) para almacenar datos de rastreo. Este enfoque permite un uso más eficiente de la memoria y minimiza costos adicionales.

Rastreo Dinámico

Una de las claves detrás de START es que muchas aplicaciones no acceden a todas las filas de memoria en un corto período de tiempo (64 ms). Al asignar espacio dinámicamente según el uso real en vez de reservar una gran cantidad fija, START puede reducir significativamente la cantidad de memoria necesaria para el rastreo. Si una aplicación no activa muchas filas, no se reserva espacio. Por el contrario, si se activan múltiples filas, el sistema se ajusta.

Cada entrada de rastreo puede almacenar información sobre múltiples filas de manera eficiente. Esta configuración minimiza la sobrecarga de rastreo mientras asegura que la información crucial esté disponible cuando se necesite.

Uso Eficiente de Recursos

START requiere solo 4KB de SRAM para sus nuevas estructuras, que es significativamente menos que los métodos tradicionales. En promedio, utiliza alrededor del 9.4% de la capacidad de la LLC para contadores, permitiendo que opere dentro del 1% del rendimiento ideal de otros métodos de rastreo, incluso con umbrales muy bajos.

Estructura de Memoria y Temporización

La DRAM moderna está organizada en canales, subcanales, bancos y filas. Un banco contiene un búfer de fila que almacena la fila activada más recientemente. Para acceder a los datos, las filas deben ser activadas, lo que puede llevar a retrasos en el rendimiento si no se maneja con cuidado.

También son necesarias operaciones de refresco periódicas para mantener la integridad de los datos, añadiendo otra capa de complejidad a la gestión de memoria. Entender esta estructura es crítico para diseñar soluciones efectivas contra ataques Rowhammer.

Las Implicaciones de Seguridad de Rowhammer

Rowhammer plantea un riesgo de seguridad severo, especialmente en sistemas que dependen de la memoria para operaciones sensibles. Un atacante puede explotar esta debilidad para cambiar bits en estructuras de datos clave, como las tablas de páginas. Tales acciones pueden llevar a la escalada de privilegios, permitiendo a un atacante obtener acceso no autorizado a los recursos del sistema.

A medida que la amenaza continúa evolucionando, también deben hacerlo las defensas contra ella. Asegurarse de que un sistema pueda rastrear activaciones de memoria de manera rápida y precisa es crucial para mantener la seguridad ante amenazas crecientes.

Cómo Funciona START

Rastreando Activaciones

START realiza un rastreo preciso de activaciones de filas, asignando dinámicamente el espacio de memoria necesario según los requisitos de carga de trabajo. Cuando se activa una fila, el sistema mantiene un conteo exacto, y si alcanza el Umbral de Rowhammer, se activan medidas de mitigación.

Escalabilidad y Configurabilidad

Una de las características destacadas de START es su configurabilidad. A diferencia de los métodos tradicionales, que fueron diseñados para umbrales específicos, START puede ajustarse a cualquier umbral según las necesidades del sistema. Esta flexibilidad es crucial para prepararse para tecnologías futuras donde los umbrales pueden bajar aún más.

Análisis de Rendimiento

En las evaluaciones, START demuestra que puede mantener un alto rendimiento mientras proporciona un rastreo efectivo. La desaceleración promedio en comparación con un sistema no protegido sigue siendo baja, asegurando que los usuarios no experimenten pérdidas de rendimiento significativas mientras se benefician de medidas de seguridad mejoradas.

Capacidad de LLC y Fallos de Caché

El análisis indica que la cantidad de espacio de Caché de Último Nivel utilizado por START es mucho menor que las soluciones tradicionales. La pérdida de capacidad promedio es de alrededor del 9.4%, significativamente menor que la pérdida del 50% asociada con diseños más ingenuos. Además, el aumento en los fallos de caché debido a START es mínimo, asegurando que no afecte negativamente el rendimiento general del sistema.

Conclusión

Con la amenaza persistente de ataques Rowhammer, es esencial contar con mecanismos de rastreo efectivos. START representa un enfoque a futuro que satisface las necesidades de seguridad actuales mientras es adaptable a desafíos futuros. Al aprovechar eficientemente los recursos de memoria existentes, ofrece una solución que equilibra seguridad y rendimiento sin costos innecesarios.

La llegada de START significa un nuevo enfoque para enfrentar la vulnerabilidad de Rowhammer, ofreciendo esperanza para mejorar la integridad y seguridad de la memoria en entornos computacionales modernos.

Fuente original

Título: Scalable and Configurable Tracking for Any Rowhammer Threshold

Resumen: The Rowhammer vulnerability continues to get worse, with the Rowhammer Threshold (TRH) reducing from 139K activations to 4.8K activations over the last decade. Typical Rowhammer mitigations rely on tracking aggressor rows. The number of possible aggressors increases with lowering thresholds, making it difficult to reliably track such rows in a storage-efficient manner. At lower thresholds, academic trackers such as Graphene require prohibitive SRAM overheads (hundreds of KBs to MB). Recent in-DRAM trackers from industry, such as DSAC-TRR, perform approximate tracking, sacrificing guaranteed protection for reduced storage overheads, leaving DRAM vulnerable to Rowhammer attacks. Ideally, we seek a scalable tracker that tracks securely and precisely, and incurs negligible dedicated SRAM and performance overheads, while still being able to track arbitrarily low thresholds. To that end, we propose START - a Scalable Tracker for Any Rowhammer Threshold. Rather than relying on dedicated SRAM structures, START dynamically repurposes a small fraction the Last-Level Cache (LLC) to store tracking metadata. START is based on the observation that while the memory contains millions of rows, typical workloads touch only a small subset of rows within a refresh period of 64ms, so allocating tracking entries on demand significantly reduces storage. If the application does not access many rows in memory, START does not reserve any LLC capacity. Otherwise, START dynamically uses 1-way, 2-way, or 8-way of the cache set based on demand. START consumes, on average, 9.4% of the LLC capacity to store metadata, which is 5x lower compared to dedicating a counter in LLC for each row in memory. We also propose START-M, a memory-mapped START for large-memory systems. Our designs require only 4KB SRAM for newly added structures and perform within 1% of idealized tracking even at TRH of less than 100.

Autores: Anish Saxena, Moinuddin Qureshi

Última actualización: 2023-11-06 00:00:00

Idioma: English

Fuente URL: https://arxiv.org/abs/2308.14889

Fuente PDF: https://arxiv.org/pdf/2308.14889

Licencia: https://creativecommons.org/licenses/by/4.0/

Cambios: Este resumen se ha elaborado con la ayuda de AI y puede contener imprecisiones. Para obtener información precisa, consulte los documentos originales enlazados aquí.

Gracias a arxiv por el uso de su interoperabilidad de acceso abierto.

Más de autores

Artículos similares