Power Measurement-Based Vulnerability Assessment of IoT Medical Devices at Varying Countermeasures for Cybersecurity
Pasquale Arpaia , Senior Member, IEEE, Francesco Bonavolontà , Member, IEEE,
Antonella Cioffi , and Nicola Moccaldi
2021
Power Measurement-Based Vulnerability Assessment of IoT Medical Devices at Varying Countermeasures for Cybersecurity
Pasquale Arpaia , Senior Member, IEEE, Francesco Bonavolontà , Member, IEEE,
Antonella Cioffi , and Nicola Moccaldi
2021
Problema a resolver
Solución planteada
Contribuciones
Método
Como se verifica
Limitaciones
Ideas futuras
¿Cómo mejorar la seguridad de los dispositivos medicos de IoT contra ataques de canal lateral?
Técnica
Algoritmo
criptgráfico
La evaluación se basa en ataques estándar utilizados en la industria de las tarjetas inteligentes, concretamente el análisis de potencia diferencial (DPA) y el análisis de potencia de correlación (CPA).
Objetivo
La investigación tiene como objetivo evaluar la vulnerabilidad de los transductores médicos de IoT en términos de ciberseguridad, evaluando específicamente diferentes contramedidas de potencia.
El enfoque se centra en el estándar de encriptación avanzado (AES), que es un algoritmo de encriptación ampliamente utilizado.
Se analizó el algoritmo AES en su ejecución en transductores inteligentes de bajo costo, bajo consumo de energía y bajo rendimiento utilizados en dispositivos médicos de IoT.
Contramedidas
Se implementaron varias contramedidas para fortalecer el algoritmo AES contra ataques de análisis de energía:
Retardo aleatorio: introduce retrasos aleatorios en la ejecución del algoritmo criptográfico.
SBox aleatorio: utiliza un cuadro de sustitución (SBox) seleccionado aleatoriamente durante el cifrado.
Enmascaramiento: enmascara los datos para ocultar la relación entre los datos de entrada y el consumo de energía.
Efectividad
Se realizó una comparación experimental para evaluar el rendimiento de seguridad de cada contramedida.
La eficacia se midió por el aumento en la cantidad de trazas de energía necesarios para descubrir la clave secreta AES:
Retardo aleatorio: aumentó la seguridad en un factor de 1,3.
SBox aleatorio: aumentó la seguridad en un factor de 208.
Enmascaramiento: aumentó la seguridad en un factor de 318.
Entre estas, se descubrió que la contramedida de enmascaramiento era la más eficaz para mejorar la seguridad.
Conclusión
El estudio presentó un enfoque metódico para mejorar la seguridad de los dispositivos médicos de IoT mediante la implementación y el análisis de diversas contramedidas de potencia contra ataques de canal lateral. El enmascaramiento, en particular, proporcionó el nivel más alto de refuerzo de seguridad.
Ideas Básicas
Procedimiento de prueba
El método propuesto tiene como objetivo evaluar el desempeño de seguridad entre diferentes contramedidas de potencia diseñadas para reforzar una implementación de software de AES-128. El método se basa en ataques estandarizados en la industria de tarjetas inteligentes: DPA y CPA.
Los ataques están dirigidos contra un dispositivo basado en un microcontrolador IoT médico típico protegido por una implementación de software de AES-128 y contramedidas de potencia.
Cada ataque se lleva a cabo con distintas
medidas de seguridad: 1) sin contramedidas; 2) inserción con retraso aleatorio; 3) SBox aleatorio; y 4) enmascaramiento
La cantidad de trzas de energia necesarios para descubrir la clave secreta es el parámetro para evaluar la eficacia de las contramedidas. Cuanto más eficaz sea la contramedida, más aumenta la cantidad de trazas.
Cada ataque usa una estratega de divide y vencerás
Sistema malicioso de adquisición de datos, diseñado para capturar trazas de datos se conecta al dispositivo IoT que está siendo probado. Este sistema monitorea las trazas de consumo de energía durante el proceso de encriptación del dispositivo (en este caso, usando AES).
Inicio de la
adquisición
Fase exploratoria: El proceso de adquisición de trazas comienza con una fase exploratoria. El objetivo es disparar futuras adquisiciones precisamente durante la operación SubBytes de la primera ronda del cifrado AES. Esto es importante porque la clave se usa en texto claro en esta etapa.
Localización
de SubBytes:
Detalles de la
fase exploratoria:
Adquisición de potencia a gran escala sin contramedidas: La Figura 4 muestra una adquisición inicial que no tiene patrones distinguibles. Por lo tanto, se aplica una técnica de filtrado.
Filtrado mejora la visualización de las rondas: La Figura 5 muestra diez rondas casi claramente separadas después del filtrado. Nueve rondas tienen la misma duración y la última es más corta porque la operación MixColumns no está presente en esta fase.
Aplicación de la
autocorrelación
anidada:
División en fragmentos: La autocorrelación anidada divide la traza filtrada en N fragmentos de igual longitud.
Cálculo de la matriz de correlación: Se crea una matriz que mide la correlación mutua de estos fragmentos. La primera fila de la matriz muestra la correlación entre el primer fragmento y todos los demás, y la última fila muestra la correlación entre el último fragmento y todos los demás.
Visualización
de la matriz:
Gráfico en escala de grises: La matriz se muestra en un gráfico donde un buen nivel de correlación se representa con un píxel claro y un mal nivel de correlación con un píxel oscuro. La diagonal del gráfico siempre es blanca ya que representa la correlación de los fragmentos consigo mismos.
Identificación de
estructuras
algorítmicas:
Resultado visualizable: La Figura 6 muestra un ejemplo donde se usa la autocorrelación anidada para las dos primeras rondas del cifrado, destacando las operaciones sensibles con contornos rojos.
Comparación de resultados: Este método permite reconocer las estructuras algorítmicas específicas y ubicar dónde se ejecutan las operaciones críticas. Después, se comparan los resultados de la autocorrelación con la traza de consumo de energía para determinar el disparo y la duración de las siguientes adquisiciones.
Análisis de Potencia
Diferencial (DPA)
Análisis de Correlación
de Potencia (CPA)
Suposición
de Clave:
Modelo
de Potencia:
Para cada posible valor de un byte de la clave ( k ) (es decir, ( k ) pertenece al rango [0, 255]), se calcula un valor intermedio hipotético ( v_{i,k} ).
Este valor intermedio se obtiene aplicando una función ( f(d_i, k) ) donde ( d_i ) es un bloque de datos de entrada.
Se utiliza un modelo de potencia para predecir el consumo de energía en función de un único bit en ( v ).
Se etiqueta la traza de potencia ( t_i ) correspondiente al valor de datos ( di ) como ( t{i,0} ) si el bit objetivo es igual a cero, de lo contrario, como ( t_{i,1} ).
Agrupación
de Trazas:
Las trazas de potencia se dividen en dos grupos: ( G{0,k} ) (cuando el bit objetivo es 0) y ( G{1,k} ) (cuando el bit objetivo es 1).
Cálculo del
Vector de Medias:
Para cada grupo, se calcula un vector de medias ( A{g,k} ).
Cada elemento ( A ) de estos vectores se calcula de la siguiente manera: [ A{g,k,p} = \frac{1}{Ng} \sum{i=1}^{Ng} t{i,g,p} ] donde ( g ) (0 o 1) identifica el grupo, ( k ) es la hipótesis del byte de la clave, ( p ) es la posición de la muestra en la traza de potencia ( t ), y ( N ) especifica el número de trazas de potencia en el grupo.
Diferencia entre
Vectores de Medias:
La diferencia entre el vector de medias de los dos grupos se define como: [ DPAk = A{1,k} - A_{0,k} ]
Esto corresponde a un patrón para la hipótesis del byte de la clave ( k ).
Determinación
de la Clave:
Se obtienen 256 patrones (uno por cada posible valor del byte de la clave).
Valores altos en ( DPA_k ) maximizan la probabilidad de que la hipótesis del byte de la clave ( k ) coincida con el byte de la clave secreta.
Este procedimiento se repite para cada byte de la clave, descubriendo la clave completa.
Correlación entre
Hipotéticos y Reales
Matriz de Trazas
de Potencia:
Cálculo de Valores
Intermedios Hipotéticos
Modelo de
Potencia Hipotético:
En CPA, se emplea un modelo de potencia para predecir el consumo de potencia teórico basado en la actividad de bits. La hipótesis es que el consumo de potencia está relacionado con el número de bits en "1" en un valor intermedio específico v_{i,k} .
Matriz de Valores
Intermedios Hipotéticos:
Se construye una matriz ( V ) de valores intermedios hipotéticos donde ( v_{i,k} = f(d_i, k) ), ( d ) es un bloque de datos de entrada, ( k ) es la hipótesis del byte de la clave, ( D ) es el número de bloques de datos de entrada y ( K ) es el número de hipótesis de bytes de clave.
La matriz ( V ) se mapea a una matriz ( HP ) de valores de consumo de potencia hipotéticos usando un modelo de potencia donde ( p{i,k} ) es el número de bits iguales a uno en ( v{i,k} ).
Las trazas de potencia reales se representan en una matriz RP: donde ( T ) es la longitud de las trazas.
Coeficientes
de Correlación:
Se usan coeficientes de correlación para determinar la relación lineal entre las columnas de ( HP ) y ( RP )
Determinación
de la Clave:
Cada fila ( r_k ) del resultado de la correlación R es un patrón para una hipótesis de clave. Los valores altos del coeficiente de correlación en una fila ( r_k ) maximizan la probabilidad de que la hipótesis del byte de la clave ( k ) coincida con el byte de la clave secreta.
Repeticiones (N): Se realizan múltiples repeticiones para obtener una medición más precisa. Cada repetición ( r e [1, N] ) determina el número mínimo de trazas de potencia min_{A,C,R}.
Repetición
Inicial:
La primera repetición usa un método de aproximación sucesiva para encontrar el número mínimo de trazas ( min_{A,C,1} ).
Repeticiones
Siguientes:
Las siguientes repeticiones (N-1) usan un método de búsqueda en rejilla.
El paso de la búsqueda se inicializa al mínimo número de trazas obtenido en la primera repetición (min A,C,1).
La búsqueda implica:
Incrementar el número de trazas hasta que la clave secreta no se recupere completamente.
Decrementar el número de trazas (en un orden de magnitud menor) hasta identificar el número mínimo exacto de trazas (min A,C,R).
Contexto
Hay diferentes combinaciones de ataques y contramedidas que se deben considerar: Ataques: DPA (Differential Power Analysis) y CPA (Correlation Power Analysis).
Contramedidas: Sin contramedidas, Inserción de retardos aleatorios, SBox aleatorias, Enmascaramiento.
Esto da lugar a ocho combinaciones posibles (2 tipos de ataques * 4 tipos de contramedidas).
Resultado Final
Media de las Repeticiones: Al completar todas las repeticiones, se calcula el número mínimo de trazas necesario para cada combinación de ataque y contramedida como el promedio de min {A,C,R} a través de todas las repeticiones.
Para determinar la eficacia de una contramedida, se calcula el Factor de Solidez (SF) definido como:
Interpretación del SF: Un valor de ( SF ) mayor indica que la contramedida es más efectiva, ya que se requieren más trazas para que el ataque tenga éxito en comparación con el caso sin contramedidas.
Experimentos y resultados
Configuración
Procedimiento
de ataque
Proceso de Adquisición
de Trazas de Potencia
Fase Exploratoria:
Objetivo: Identificar el disparador adecuado para la siguiente fase de adquisición. Esta fase es crucial para sincronizar de manera efectiva la adquisición de trazas de potencia con las operaciones específicas del cifrado AES.
Adquisición Iterativa de Trazas de PotenciaI:
Iteración y Adquisición:
Operación de Interés: SubBytes de la primera ronda del AES.
Cada traza de potencia se muestrea a 50 MSa/s (Mega Samples por segundo).
Tratamiento de Señal Decimación y Filtrado:
Decimación: Es un proceso para reducir la tasa de muestreo de las trazas de potencia.
Filtrado: Se aplica un filtro de paso bajo, que hace que cada muestra sea un promedio ponderado de la muestra actual y la anterior.
Peso del Filtro: En los experimentos, el peso del filtro se fija en 400.
El propósito del filtrado es suavizar el ruido y resaltar patrones relacionados con las operaciones del AES.
Análisis de Trazas
Patrones en Trazas Filtradas:
Las trazas de potencia filtradas muestran patrones claramente distinguibles asociados a las operaciones del AES.
Diferentes Operaciones:
AddRoundKey: Frecuencia de señal más alta debido a las complejas computaciones matemáticas.
MixColumns: Dura más del 50% de la duración de la ronda, mostrando un largo tiempo de cómputo.
Contramedidas y Alineación de Señales
Alineación en Caso de Retardos Aleatorios:
Elastic Alignment Technique: Técnica utilizada para alinear de manera elástica las trazas de potencia cuando se aplican contramedidas de retardo aleatorio.
Fig. 10: Comparación de dos trazas de potencia:
Sin Alineación (a): La señal muestra comportamiento aleatorio, dificultando el análisis estadístico.
Con Alineación (b): Mejora la alineación, incrementando los valores medios y los coeficientes de correlación.
Una mejor alineación aumenta la sensibilidad tanto de DPA como de CPA
Análisis Estadístico
Aplicación de Fases Estadísticas:
DPA y CPA: Se aplican a las trazas de potencia filtradas.
Modelos Considerados: Valor Intermedio Hipotético ( v ): Salida de la operación SubBytes de la primera ronda.
Bit Más Significativo de ( v ): Modelo de potencia utilizado.
Aplicación de DPA y CPA en las trazas de potencia filtradas para extraer información crítica.
Resultados
Fortalecimiento de Seguridad:
Cada contramedida aumenta el número de trazas de potencia necesarias para descubrir la clave secreta.
Factores de Fortalecimiento (SF):
Retardo Aleatorio: Fortalece un factor de 1.3 en comparación con la condición sin contramedidas.
SBox Aleatoria: Fortalece un factor de 208.
Enmascaramiento: Fortalece más de 318.
Conclusiones:
Contramedida Más Efectiva: El enmascaramiento destaca como la más efectiva entre las contramedidas evaluadas, seguida de SBox aleatoria y retardo aleatorio.
Incremento de Seguridad: Las contramedidas implementadas aumentan significativamente la dificultad del ataque, requiriendo más trazas de potencia para tener éxito.
Evaluación de Vulnerabilidad
Basada en Medición de Potencia
Refuerzo del
Algoritmo AES
Implementación en Dispositivos IoT:
Se refuerza la implementación del algoritmo criptográfico AES-128, ampliamente utilizado, en un transductor inteligente de bajo costo y bajo rendimiento, específico para dispositivos médicos IoT.
Contramedidas de Potencia:
Evaluación de diferentes contramedidas basadas en el consumo de energía para dificultar los ataques de canal lateral.
Método Innovador:
Se propone un método innovador para evaluar la vulnerabilidad de dispositivos médicos IoT en términos de ciberseguridad, basado en la medición del consumo de energía.
Ataques Estándar:
Utilización de ataques de análisis diferencial de potencia (DPA) y análisis de potencia correlacional (CPA), que son técnicas estandarizadas en la industria de tarjetas inteligentes, para evaluar la seguridad de dispositivos médicos IoT.
Metodología
Método Sistemático:
Se proporciona un marco metodológico sistemático y riguroso para estudiar y evaluar las contramedidas basadas en el consumo de energía en transductores médicos IoT
Comparación Cuantitativa:
Provisión de una métrica cuantitativa para expresar la efectividad de las contramedidas en términos del número de trazas adicionales necesarias para un ataque exitoso.
Enfoque en un
Solo Algoritmo Criptográfico
El estudio se centra exclusivamente en la evaluación del algoritmo criptográfico AES-128. No se evalúan otros algoritmos que podrían estar en uso en diferentes dispositivos médicos IoT.
Evaluación Limitada
de Contramedidas
Contramedidas
específicas
El estudio evalúa solo tres contramedidas específicas (retraso aleatorio, SBox aleatorio y enmascaramiento). No se consideran otras técnicas potencialmente efectivas, como el diseño de hardware seguro o métodos de cifrado completamente diferentes.
Escenarios
de ataque
Las contramedidas se evalúan en un contexto específico de ataques de canal lateral basados en el consumo de energía, pero no se abordan otros tipos de ataques posibles, como los ataques de temporización o los ataques basados en la interferencia electromagnética.
Condiciones
Experimentales
Controladas
Entorno de Laboratorio:
Las condiciones reales pueden variar significativamente, lo que podría afectar la efectividad de las contramedidas en un entorno operativo real.
Repetibilidad y Variabilidad:
No se discute en detalle cómo las variaciones en el entorno, el hardware y otras condiciones externas pueden influir en los resultados.
Costos y complejidad
Costos Adicionales:
La implementación de contramedidas como el enmascaramiento y el uso de SBox aleatorio puede incrementar los costos y la complejidad del diseño y la producción de dispositivos médicos IoT.
Impacto en el Rendimiento:
Algunas contramedidas pueden afectar negativamente el rendimiento del dispositivo, lo cual no se evalúa en profundidad en el estudio. Por ejemplo, la introducción de retrasos aleatorios podría aumentar la latencia en el procesamiento.
Limitación de los
Datos de Trazas
Número de Trazas:
Aunque se menciona que se requiere un gran número de trazas para evaluar la efectividad de las contramedidas, no se proporciona una discusión detallada sobre la variabilidad en el número de trazas necesarias para diferentes configuraciones de hardware y software.
Calidad de las Trazas:
La calidad y precisión de las trazas de potencia adquiridas pueden variar, afectando la fiabilidad de los resultados del análisis de potencia.
Generalización
de Resultados
Dispositivos Específicos:
Los resultados obtenidos pueden no ser directamente aplicables a todos los tipos de dispositivos médicos IoT, ya que el estudio se enfoca en un tipo específico de transductor inteligente de bajo costo.
Escalabilidad:
No se aborda cómo las contramedidas pueden escalarse para dispositivos más complejos o con diferentes requerimientos de energía y procesamiento.
Evaluación de Múltiples
Algoritmos Criptográficos
Uso de otros Algoritmos
Ampliar el estudio para incluir otros algoritmos criptográficos utilizados en dispositivos IoT médicos, como RSA (Rivest-Shamir-Adleman), ECC( Elliptic Curve Cryptography) y otros algoritmos de cifrado simétrico y asimétrico.
Comparación de Vulnerabilidades:
Comparar las vulnerabilidades de diferentes algoritmos criptográficos bajo ataques de canal lateral basados en el consumo de energía.
Ampliación de
Contramedidas
Evaluadas
Técnicas Adicionales:
Investigar y evaluar contramedidas adicionales como la arquitectura de hardware seguro, el diseño de circuitos resistentes a ataques de canal lateral
Combinación de Contramedidas:
Evaluar la efectividad de combinaciones de contramedidas para determinar si la implementación conjunta de varias técnicas puede ofrecer una mayor protección.
Análisis de
Costo-Beneficio
Impacto en el Rendimiento:
Evaluar el impacto de las contramedidas en el rendimiento del dispositivo, incluyendo la latencia, el consumo de energía adicional y la eficiencia general del sistema.
Evaluación de Costos:
Realizar un análisis de costo-beneficio para determinar la viabilidad económica de implementar diferentes contramedidas en dispositivos médicos IoT.
Evaluación en
Condiciones Reales
Pruebas en Entornos Operativos:
Realizar pruebas de las contramedidas en entornos operativos reales para evaluar su efectividad bajo condiciones prácticas, incluyendo variaciones en el entorno, el hardware y el software.
Simulación de Ataques Reales:
Simular ataques en entornos de uso real para observar cómo las contramedidas responden a diferentes escenarios de ataque.
En el estudio es aplicado un filtado de paso bajo
Este filtro convierte cada muestra en un promedio ponderado de la muestra anterior y la muestra actual.
En los experimentos, el peso del filtro se fijó en 400. El trazo de consumo de energía filtrado muestra patrones claramente distinguibles relacionados con las operaciones de AES
Autocorrelacion anidada : La localización de los SubBytes es realizado mediante una función de autocorrelación anidada en los datos de consumo de energía filtrados.
La autocorrelación anidada ayuda a detectar patrones en la secuencia de sustitución de bytes después de la aplicación de la caja S (S-box) en AES
Este análisis es crucial en el criptoanálisis diferencial y lineal, donde se buscan correlaciones entre diferencias en las entradas y salidas de las S-boxes para identificar debilidades potenciales en el cifrado.