Sci Simple

New Science Research Articles Everyday

# Informática # Criptografía y seguridad

Riesgos Ocultos de los Sistemas de Memoria Compartida

Aprende cómo la contención de memoria puede llevar a vulnerabilidades ocultas en los dispositivos modernos.

Ismet Dagli, James Crea, Soner Seckiner, Yuanchao Xu, Selçuk Köse, Mehmet E. Belviranli

― 7 minilectura


Exponiendo Exponiendo vulnerabilidades de memoria peligro la seguridad de tu dispositivo. La contención de memoria puede poner en
Tabla de contenidos

En el mundo de hoy, dependemos de un montón de dispositivos que usan sistemas de memoria compartida para funcionar de manera eficiente. Estos sistemas están en smartphones, dispositivos inteligentes para el hogar y sistemas autónomos como drones y coches que se manejan solos. Aunque ofrecen comodidad y son rentables, también pueden tener algunas vulnerabilidades ocultas. Una de estas vulnerabilidades está relacionada con cómo estos dispositivos manejan la memoria y los datos, lo que puede llevar a problemas de seguridad.

¿Qué Son los Sistemas de Memoria Compartida?

Los sistemas de memoria compartida permiten que diferentes unidades de procesamiento dentro de un dispositivo, como CPUs (el cerebro del dispositivo) y GPUs (procesadores gráficos), accedan al mismo espacio de memoria. Esta configuración es como un grupo de amigos compartiendo una sola pizza; puede ser conveniente, pero también puede llevar a discusiones sobre quién se queda con la última porción.

En los sistemas de memoria compartida, las diferentes unidades de procesamiento pueden comunicarse rápidamente, lo que hace que sea más barato producir estos dispositivos. Sin embargo, la falta de una caché de último nivel compartida puede ralentizar las cosas significativamente cuando múltiples tareas se ejecutan al mismo tiempo, lo que lleva a problemas de rendimiento.

Contención de Memoria: El Problema Oculto

Cuando muchas unidades de procesamiento en un Sistema de Memoria Compartida intentan acceder a la memoria al mismo tiempo, puede crear una situación llamada contención de memoria. Imagina una cafetería llena durante la hora pico de la mañana; todos quieren su dosis de cafeína, pero no hay suficientes baristas para atenderlos rápidamente. Al igual que en esa cafetería, cuando las unidades de procesamiento compiten por el acceso a la memoria, el rendimiento de sus tareas puede verse afectado.

Los investigadores han descubierto que esta competencia por la memoria puede ser explotada para comunicarse en secreto entre programas que se ejecutan en el mismo dispositivo. Esto lleva a lo que se conoce como comunicación de canal encubierto. En las manos equivocadas, esto puede usarse para filtrar información sensible, y ahí es donde está el problema.

Tipos de Ataques de Canal Encubierto

Hay diferentes métodos en los que se pueden lanzar ataques de canal encubierto usando la contención de memoria:

  1. Ataques Basados en Caché: Estos ataques usan la memoria caché de las CPUs para mejorar la velocidad de comunicación entre las unidades de procesamiento. Es como susurrar al oído de un amigo en una habitación ruidosa.

  2. Ataques de Bajo Rendimiento: Estos métodos usan directamente las características de rendimiento de la memoria, como cómo responde la memoria a las solicitudes, para enviar información, pero a un ritmo más lento.

  3. Ataques de Acceso Privilegiado: Estos requieren niveles más altos de acceso al sistema, similar a necesitar acceso VIP a un concierto para poder entrar al backstage.

Desafortunadamente, los ataques que combaten estas vulnerabilidades tienden a tener dificultades, y el potencial de filtraciones de información sigue siendo una preocupación.

Un Nuevo Enfoque para la Comunicación Encubierta

Estudios recientes presentan un nuevo método que se enfoca en cómo la contención de memoria puede usarse como un canal encubierto de comunicación. Este método puede lograr altas tasas de transmisión sin necesidad de acceso elevado o hardware especializado. Principalmente apunta a la memoria compartida en dispositivos como smartphones y tabletas.

La técnica crea suficiente contención, o competencia, por la memoria para que un programa (el transmisor) pueda comunicarse con otro programa (el receptor) sin que ninguna de las partes sepa que están intercambiando datos. Es como pasar notas secretas entre dos estudiantes en un aula mientras se hace parecer que solo están escribiendo sus tareas.

Cómo Funciona

La comunicación encubierta involucra dos aplicaciones ejecutándose en el mismo dispositivo. Una aplicación actúa como el transmisor y la otra como el receptor. El transmisor envía bits de información creando contención de memoria, mientras que el receptor monitorea el rendimiento de la memoria para recoger estos bits según los niveles de contención.

Para aumentar la tasa de transmisión, los investigadores diseñaron el transmisor y el receptor de tal manera que operan utilizando tanto la CPU como la GPU. La fortaleza de este enfoque radica en el delicado equilibrio entre cuánto generar contención de memoria y cuán efectivamente el receptor puede detectarlo. Es como un funambulista balanceándose cuidadosamente para evitar caer.

La Mecánica de la Comunicación

  1. Rol del Transmisor: El transmisor envía datos accediendo continuamente a la memoria, generando un aumento en la actividad de la memoria cuando quiere enviar un "1" y reduciendo el acceso cuando envía un "0".

  2. Rol del Receptor: El receptor lleva un registro de cuán rápido puede acceder a la memoria. La velocidad cambiará dependiendo de si el transmisor está activo o no.

  3. Sin Comunicación Directa: Las dos aplicaciones no hablan directamente entre sí, lo que dificulta a los sistemas de seguridad detectar la comunicación encubierta. Es como amigos compartiendo secretos en una habitación llena de gente donde nadie está escuchando.

Este cuidadoso juego entre el transmisor y el receptor permite una comunicación eficiente a tasas de hasta 6.4 kilobits por segundo con una tasa de error mínima de menos del 1%.

Las Preocupaciones de Seguridad

Si bien estos avances pueden llevar a aplicaciones emocionantes, vienen con importantes preocupaciones de seguridad. A medida que los sistemas de memoria compartida se vuelven más comunes, la posibilidad de comunicación encubierta puede convertirse en una herramienta para comportamientos maliciosos. La capacidad de explotar estas vulnerabilidades puede llevar a accesos no autorizados a datos sensibles.

Los investigadores en seguridad ahora son conscientes de estos problemas y están explorando maneras de defenderse contra estos ataques encubiertos. El reto es crear medidas de protección sin perjudicar el rendimiento general de los dispositivos.

Implicaciones en el Mundo Real

Las implicaciones de esta investigación son vastas. A medida que más personas usan dispositivos inteligentes que dependen de sistemas de memoria compartida, el riesgo de comunicación encubierta podría llevar a que se roben datos sin que nadie se dé cuenta. Estamos entrando en un mundo donde un simple juego o aplicación podría estar filtrando información secretamente mientras estás ocupado desplazándote por tu feed.

Conclusión

La llegada de los sistemas de memoria compartida ha transformado la manera en que diseñamos y usamos dispositivos móviles. Sin embargo, esta conveniencia viene con potenciales vulnerabilidades que pueden ser explotadas a través de canales de comunicación encubiertos. Entender estos riesgos es crítico para cualquiera que use tecnología moderna, ya que las medidas de seguridad continúan evolucionando junto con estas amenazas.

Mientras disfrutamos de los beneficios de dispositivos más rápidos y eficientes, recordemos también mantenernos alerta—después de todo, nunca se sabe quién podría estar escuchando tu conversación digital, ¡incluso si es solo una charla amistosa entre aplicaciones!

Fuente original

Título: MC3: Memory Contention based Covert Channel Communication on Shared DRAM System-on-Chips

Resumen: Shared-memory system-on-chips (SM-SoC) are ubiquitously employed by a wide-range of mobile computing platforms, including edge/IoT devices, autonomous systems and smartphones. In SM-SoCs, system-wide shared physical memory enables a convenient and financially-feasible way to make data accessible by dozens of processing units (PUs), such as CPU cores and domain specific accelerators. In this study, we investigate vulnerabilities that stem from the shared use of physical memory in such systems. Due to the diverse computational characteristics of the PUs they embed, SM-SoCs often do not employ a shared last level cache (LLC). While the literature proposes covert channel attacks for shared memory systems, high-throughput communication is currently possible by either relying on an LLC or privileged/physical access to the shared memory subsystem. In this study, we introduce a new memory-contention based covert communication attack, MC3, which specifically targets the shared system memory in mobile SoCs. Different from existing attacks, our approach achieves high throughput communication between applications running on CPU and GPU without the need for an LLC or elevated access to the system. We extensively explore the effectiveness of our methodology by demonstrating the trade-off between the channel transmission rate and the robustness of the communication. We demonstrate the utility of MC3 on NVIDIA Orin AGX, Orin NX, and Orin Nano up to a transmit rate of 6.4 kbps with less than 1% error rate.

Autores: Ismet Dagli, James Crea, Soner Seckiner, Yuanchao Xu, Selçuk Köse, Mehmet E. Belviranli

Última actualización: 2024-12-06 00:00:00

Idioma: English

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

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

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.

Artículos similares