Código de seguridad de ARM Cortex M4 MCU

¿Cuáles son los principales métodos en los que se puede extraer el código dentro de una determinada MCU ARM Cortex M4 (TI LM4F120H5QR, etc.) después de la implementación?

¿Es posible evitar por completo que un tercero robe el código que contiene?

Respuestas (1)

Completa nunca es posible. Simplemente puede aumentar el esfuerzo y el costo.

No tiene nada que ver con 'cortex m4', sino con la implementación del chip por parte del fabricante.

Su chip tiene el conjunto habitual de bits de protección de lectura/ejecución. Dudo que se sepa mucho en la literatura (abierta) sobre las debilidades detalladas de un chip nuevo de este tipo.

Hablando en términos muy generales, un esquema de protección 'común y corriente' está bien contra piratas informáticos individuales, la mayoría de los países y competidores de bajo presupuesto. Probablemente no resista a un gran competidor corporativo (del tamaño de IBM/Apple/Google, especialmente si poseen una fábrica de chips), la CIA o el esfuerzo combinado de la comunidad de hackers.

Una forma notable de proteger su código es ocultarlo lo menos posible, por lo tanto, reduzca la población que participará en la piratería de su producto. Si la 'comunidad combinada de piratas informáticos' quiere hacer algo con su dispositivo a lo que realmente no se opone, asegúrese de que puedan hacerlo sin piratear totalmente su dispositivo. Eso reducirá sustancialmente el esfuerzo combinado puesto en hackearlo.

No se puede predecir cuáles serán los mecanismos que se pueden usar para eludir el esquema de protección de este chip en particular, pero puede leer cómo se han descifrado otros chips para tener una idea de la variedad de métodos. Sólo algunos:

  • voltajes de suministro de energía fuera de especificación y/o ciclos
  • monitoreo cuidadoso de la corriente de suministro
  • destapar el chip y deshabilitar el esquema de protección por luz ultravioleta, o por líneas de corte
  • destapar y leer las cargas eléctricas (o corrientes) en la matriz de memoria