Ataque de arranque en frío (cold boot attack)

Un ataque de arranque en frío (en inglés “cold boot attack”), es un tipo de ataque en el que un atacante con acceso físico a una computadora es capaz de recuperar las claves de cifrado de un sistema operativo en ejecución, usando un reinicio en frío. El ataque de arranque en frío se basa en la persistencia de datos en la memoria RAM para recuperar su contenido, que sigue siendo legible después de que la energía se ha quitado, durante un período de entre decenas de segundos a varios minutos dependiendo del dispositivo de RAM físico.

Ataque de arranque en frio (cold boot attack)

Qué es un ataque de arranque en frío (cold boot attack)

El ataque de arranque en frío (cold boot attack), es un tipo de ataque que se realiza a una computadora con el fin de obtener las claves de cifrado que se encuentran almacenadas en las memorias DRAM y SRAM. Estas memorias normalmente almacenan datos que pueden ser legibles por pequeños períodos de tiempo (segundos o minutos) después de que la energía se ha quitado, de tal modo que un atacante con acceso físico al equipo hace un reinicio en frío y usando determinadas técnicas y herramientas puede apoderarse de esos datos. En algunos casos basta con retirar las memorias del ordenador y aplicarle algún tratamiento, para que los datos permanezcan legibles por más tiempo y se pueda acceder a ellos desde otro ordenador.

Respecto al modo de efectuar un ataque de arranque en frío, para realizar este tipo de ataque es imprescindible que el atacante o la persona que lo quiera realizar pueda acceder físicamente al ordenar del cual se quieren obtener los datos criptográficos.

Lo que normalmente hace el atacante es provocar el reinicio en frío de una computadora en ejecución, que consiste en reiniciar la computadora de manera abrupta mediante la desconexión de la alimentación o presionando el botón “reset” si está disponible, sin dejar que el sistema operativo se apague de forma correcta.

A continuación, se utiliza inmediatamente un soporte extraíble para arrancar un sistema operativo ligero, que se utiliza para volcar el contenido de la memoria RAM a un archivo. Otra opción es quitar los módulos de memoria RAM del sistema original e instalarlos rápidamente en una máquina compatible bajo el control del atacante, que luego se arranca para acceder a la memoria RAM.

Una vez realizado el volcado de la información remanente de la memoria RAM, se realiza un análisis de ese volcado utilizando algoritmos especializados para encontrar diversos datos sensibles, tales como las claves criptográficas contenidas en la misma. De este modo, el atacante habrá obtenido las claves criptográficas para acceder a la información encriptada.

En la actualidad están disponibles diversas herramientas automatizadas que permiten realizar estos ataques contra algunos sistemas de encriptación populares, usando varias formas de “key finding attacks”, que buscan claves criptográficas que se pueden utilizar para descifrar o firmar datos. No sólo pueden obtenerse los datos de cifrado del disco, cualquier información sensible almacenada en la memoria es vulnerable al ataque.

Con ciertos módulos de memoria RAM, la ventana de tiempo para un ataque puede extenderse de segundos o minutos a horas, enfriándolos con un refrigerante, tal como el nitrógeno líquido, antes de extraerlos del ordenador, ya que de este modo se puede ralentizar la degradación de los datos almacenados en la memoria volátil. Un método alternativo al nitrógeno líquido puede ser el aire comprimido, que cuando se libera enfría rápidamente cualquier superficie que toque.

El ataque cold boot attack es eficaz contra esquemas de cifrado de disco completos de varios proveedores y sistemas operativos, esto se debe a que se trata fundamentalmente de un problema de hardware y no de un problema de software.

Para mitigar el riesgo que supone el ataque de arranque en frío se recomienda que las computadoras se apaguen por completo, en lugar de dejarse en un estado de hibernación, suspensión o en modo de espera, cuando no están bajo el control físico del propietario legítimo de la computadora o cuando puedan ser robadas. Configurar el sistema operativo para que no utilice la opción hibernar o suspender, sino apagar, puede ayudar también a contrarrestar este riesgo.

El cifrado de la memoria RAM también puede mitigar la posibilidad de que un atacante pueda obtener claves de cifrado u otro material de la memoria a través de un ataque de arranque en frío.

Muchos dispositivos móviles o portátiles llevan la memoria RAM soldada a la placa base para prevenir ataques de arranque en frío, ya que si los módulos de memoria se sueldan a la placa base no pueden ser extraídos e insertados en otra máquina bajo el control de un atacante.