Hacking del hardware de seguridad de los sistemas empotrados
Tiempo de lectura estimado: 8 minutos
Esta conferencia magistral pertenece al Módulo 11 "IoT y Seguridad" de C1b3rWall Academy 2021/2022. El objetivo de la misma es conocer más acerca de las características comunes de los sistemas empotradas y sus medidas de seguridad.
Dificultando la identificación de los elementos de seguridad y el acceso a ellos
En la imagen se puede ver una placa de videojuegos arcade. Sobre los sistemas que contienen la información hay una capa de resina. La forma más cómoda de extraer estas capas es con químicos que las disuelven. Una vez el chip está extraído no se ve qué tipo de chip es, lo que dificulta algo la extracción de información. En tiradas muy bajas, es usual ver dispositivos simplemente con la superficie raspada para evitar marcas; en grandes tiradas, es posible que el componente tenga marcas "a medida" que no se correspondan con ningún modelo de catálogo.
Una técnica muy efectiva para identificar el hardware es hacer decap al chipar para dejar expuesto el die e inspeccionarlo con el microscopio en busca de marcas o distribuciones conocidas.
Mediante calentado y cambios bruscos de temperatura (decap térmico), podemos romper el encapsulado y se daña el die. Por ello, la mejor solución es el decap químico, que consiste en disolver el chip en ciertos químicos para, a su vez, disolver el encapsulado sin dañar.
Si se cuenta con el equipamiento apropiado, se puede utilizar la técnica del decap láser que, eso sí, es caro y necesita muchos medios, aunque el resultado, evidentemente, es muy limpio.
Dificultando la lectura de la información de los elementos de seguridad
Los fabricantes no solo basan su seguridad en el desconocimiento del chip (seguridad por oscuridad), sino que implementan medidas activas de protección. Esto se aplica a microcontroladores, controladores programables de interrupciones, dispositivos de lógica programada, etc. Este tipo de dispositivos cuenta con medidas para impedir la lectura de la información de seguridad, y normalmente hay dos tipos:
- ROM en máscara: cuando hay tiradas muy grandes y todos los dispositivos tienen la información, se encarga al fabricante que dé el chip ya programado, así no hay forma de borrar o reescribir. Cuando las tiradas son más reducidas o cada dispositivo tiene una información única, esta se graba en el dispositivo y justo después se activa el bit de protección o seguridad, que impìde que la información se pueda extraer.
- ROM programable.
Hay otros elementos de lectura de información protegida, por ejemplo, la técnica de la máscara de ultravioletas. Aquí, las memorias CMOS se borran cuando se exponen a la luz ultravioleta. La técnica consiste en exponer únicamente el bit de protección a la luz UV para que esta se borre (protegiendo la información de seguridad contra el borrado con una máscara que no deje pasar esa luz UV).
También está la técnica del microprobbing, donde, mediante microsoldaduras, se pueden exponer conexiones en el chip que estaban ocultas o eran exclusivamente de origen interno. En este caso son necesarias amplias habilidades y mucha práctica. Hay casos en los que el bit de seguridad no es un bit de memoria, sino un fusible que, al fundirse, impide leer la información de seguridad. Mediante microsoldaduras se puede volver a restaurar ese fusible.
La técnica del glitching consiste en introducir perturbaciones físicas en el dispositivo para causar un comportamiento errático que desemboque en la posibilidad de extracción de la información de seguridad. También se denomina glitching a aprovechar fallos de diseño mediante un uso anómalo del dispositivo que permita la extracción de información protegida. Una variante más sofisticada es el glitching por láser, que puede causar comportamientos erráticos de muy diversa índole, dependiendo de dónde y cómo se aplique.
Una última técnica es la del troyano. Romper un dispositivo de seguridad con un troyano no es solo cosa de software. Es muy difícil que un microcontrolador ejecute un troyano.
¿Todavía no formas parte de C1b3rWall Academy? El contenido es gratuito, únete a otras 30.000 personas desde este enlace.
Si te interesa este tema, puedes consultar la información y cursar el Máster en Ciberseguridad o ver la oferta de másteres desde aquí.
Ponente: Tomás García-Merás Capote
Tomás lleva más de diez años trabajando en proyectos de consultoría y desarrollo de software en torno a la criptografía y la seguridad, en organismos como el Senado, la Fábrica Nacional de Moneda y Timbre, el Ministerio del Interior, el Ministerio de Defensa o el Ministerio de Asuntos Exteriores. Durante estos años ha liderado proyectos emblemáticos de firma electrónica como AutoFirma, FIRe o el Cliente @firma.
Actualmente trabaja como Client Account Leadership Manager en Accenture, donde centra sus esfuerzos en la transformación digital del sector público y en la implantación de sistemas de Administración Electrónica.
¿Cuál es tu reacción?