Ingeniería inversa de MCU

Desbloqueo de Microcontroladores - MikaTech

Nuestros valores y objetivos

Sobre MikaTech

El tiempo pasó rápido, desde el día que hicimos nuestro primer proyecto de ingeniería inversa de MCU 8051 en 1998, hasta el día que establecimos nuestro laboratorio de ingeniería inversa de un millón de dólares en 2012, pasaron 14 años. Ahora comenzamos nuestro nuevo negocio de desarrollo de sistemas visuales embebidos, esperamos poder servir otros 10 años.

sign Peter Lee Co-Fundador y CEO

Descifrado de MCU Dallas

Dallas Semiconductor, ahora subsidiaria de Maxim Integrated Products, diseña y fabrica semiconductores analógicos, digitales y de señal mixta (circuitos integrados o CI). Sus especialidades incluyen productos de comunicaciones (incluyendo productos T/E y Ethernet), microcontroladores, gestión de baterías, detección y gestión térmica, RAM no volátil, supervisores de microprocesador, líneas de retardo, osciladores de silicio, potenciómetros digitales, relojes en tiempo real, osciladores de cristal compensados por temperatura (TCXO), iButton (comúnmente conocido como Dallas Key) y productos 1-Wire. La empresa, con sede en Dallas, Texas, fue fundada en 1984 y comprada por Maxim Integrated Products en 2001. Ambas marcas, Maxim y Dallas Semiconductor, se usaron activamente hasta 2007. Desde entonces, el nombre Maxim se ha utilizado para todos los productos nuevos, aunque la marca Dallas Semiconductor se ha mantenido para algunos productos más antiguos.

  • Lista de ingeniería inversa de MCU Dallas de Mikatech:
  • Serie DS87CXX duplicación de controlador: DS87C520 DS87C530 DS87C550 ...
    Serie DS89CXX duplicación de controlador: DS89C420 DS89C430 DS89C450 ...

 

1. Familia de CI 1-Wire de un solo cable (DS24xx / DS28xx / DS19xx iButton)

1.1 DS24xx CI de memoria y función 1-Wire

DS2401 (ID ROM único de 64 bits)

DS2405 (interruptor de un solo canal 1-Wire)

DS2406 (interruptor de doble canal + EEPROM)

DS2408 (expansor de E/S de 8 canales)

DS2430A (EEPROM de 1 Kb)

DS2431 (EEPROM de 1 Kb con protección de escritura)

DS2432 (EEPROM segura cifrada SHA-1)

DS2433 / DS24B33 (EEPROM de 4 Kb)

DS2438 (monitor de temperatura + batería + ADC)

DS2450 (ADC 1-Wire de 4 canales)

1.2 DS28xx CI 1-Wire seguros y especializados

DS28E01 (chip de autenticación SHA-256)

DS28E04 (EEPROM segura de 4 Kb)

DS28EC20 (EEPROM de 20 Kb)

DS28EA00 (termómetro digital multipunto 1-Wire)

DS28S60 (chip de seguridad criptográfica)

1.3 DS19xx Registradores de datos autónomos iButton (con batería)

DS1921 (registrador de temperatura Thermochron)

DS1922 (registrador de temperatura de alta capacidad)

DS1923 (registrador de temperatura + humedad)

DS1961 (iButton de memoria segura SHA)

DS1963 (iButton EEPROM segura de múltiples páginas)

DS1990A (iButton de identificación única)

2. Serie de sensores de temperatura digitales y termostatos (DS18xx / DS17xx / DS56)

2.1 Sensores de temperatura 1-Wire DS18xx

DS1820 (termómetro digital de 9 bits)

DS18S20 (sensor de alta precisión de 9 bits)

DS18B20 (resolución programable de 9~12 bits, el más común)

DS1822 (sensor de 12 bits de bajo costo)

DS1825 (sensor de temperatura 1-Wire multicanal)

DS1821 (termostato 1-Wire con salida de conmutación)

2.2 Sensores de temperatura I2C/SMBus DS17xx

DS1720 (termómetro digital de 2 hilos)

DS1721 (sensor de temperatura con doble alarma)

DS1722 (sensor de temperatura SMBus de bajo voltaje)

DS1775 (monitor de temperatura de diodo remoto)

2.3 CI termostato analógico

DS56 (interruptor de temperatura analógico de doble punto de ajuste)

3. Reloj en tiempo real (RTC) y CI de cronometraje (DS12xx / DS13xx / DS15xx / DS16xx)

3.1 DS12xx RTC modular (batería integrada + cristal, reloj de PC heredado)

DS1287 (RTC estándar para placas base de PC)

DS12CR887 (versión de bajo voltaje mejorada de DS1287)

DS1202 (RTC SPI serie)

DS1204 (RTC con temporizador de vigilancia)

DS1216 (módulo RTC de zócalo inteligente)

3.2 DS13xx RTC de bajo consumo I2C (los más utilizados)

DS1302 (RTC serie de 3 hilos)

DS1307 (RTC básico I2C de 5V)

DS1337 (RTC I2C con alarma y salida de onda cuadrada)

DS1338 (RTC I2C de bajo voltaje 3.3V)

DS1340 (RTC de ultra bajo consumo con cargador de mantenimiento)

DS1374 (RTC con compensación de temperatura)

3.3 DS15xx RTC de alta integración (vigilancia / control de energía / NVSRAM)

DS1501 / DS1511 (RTC compatible con Y2K + vigilante + 256B NVSRAM)

DS1553 / DS1554 (RTC de registro de datos con gran NVSRAM)

3.4 DS16xx RTC de múltiples voltajes

DS1685 / DS1687 (RTC Y2K de 3V/5V, compatible con DS1287)

DS1602 (RTC SPI con monitor de batería)

4. Serie de SRAM no volátil (NVRAM / NVSRAM) (DS1220 / DS1225 / DS1230 / DS1245)

DS1220AB / DS1220Y (NVSRAM de 16K)

DS1225AB / DS1225Y (NVSRAM de 64K)

DS1230AB / DS1230Y (NVSRAM de 256K)

DS1245AB / DS1245Y (NVSRAM de 1024K 1MB)

DS1213 (soporte inteligente NVRAM)

5. Monitor de batería de iones de litio y CI de indicador de combustible (DS27xx)

DS2740 (monitor de batería de bajo consumo)

DS2750 / DS2751 / DS2752 (indicador de combustible de una celda)

DS2760 (monitor de batería de iones de litio de alta precisión con resistencia de detección integrada)

DS2770 / DS2771 (CI de protección de batería multicelda)

DS2780 / DS2781 (indicador de combustible autónomo para paquetes de baterías)

6. Microcontroladores Flash 8051 compatibles de alta velocidad (DS80Cxx / DS89Cxx)

6.1 DS80C Serie 8051 de alta velocidad

DS80C310 / DS80C320 / DS80C323 (8051 de alta velocidad de ciclo único)

DS80C400 (8051 en red con hardware TCP/IP)

6.2 DS89C 8051 Flash de ultra alta velocidad

DS89C420, DS89C430, DS89C440, DS89C450 (Flash programable en aplicación de 16KB/32KB/64KB)

7. Serie de potenciómetros digitales (resistencias controladas digitalmente) (DS180x / DS166x)

DS1802 (potenciómetro digital doble)

DS1803 (potenciómetro digital de 8 canales)

DS1804 (potenciómetro digital no volátil de un solo canal)

DS1669 (reóstato digital de bajo costo)

DS1689 (potenciómetro digital de volumen de audio)

8. Transceptores de un solo chip T1/E1 para telecomunicaciones (serie DS21xx)

DS2152, DS2154 (transceptores T1/E1 heredados)

DS21352, DS21354, DS21552, DS21554 (nueva generación SCT T1/E1 de 3.3V)

DS2188 (chip de interfaz de línea de telecomunicaciones multipuerto)

9. Temporizador de vigilancia, monitor de alimentación y CI de reinicio

DS1232 (supervisor de microprocesador con vigilante)

DS1830 (supervisor de reinicio de bajo voltaje)

DS1705 (detector de voltaje con vigilante)

10. CI de función especial misceláneos

DS21Q43 (chip de protección de interfaz de línea)

DS9097 / DS9097E (chip de interfaz adaptador USB 1-Wire)

DS1420 (puente RS232 a 1-Wire)

Notas técnicas complementarias

  1. Historia de la marca
  2. Dallas Semiconductor fue adquirida por Maxim Integrated en 2001; Maxim fue adquirida por Analog Devices en 2021. Todos los dispositivos de la serie DS aún son mantenidos por ADI/Maxim.
  3. Regla de sufijos de nomenclatura
  4. Las letras de sufijo indican voltaje (-3=3.3V, -5=5V), encapsulado (S=SOIC, Q=QFP, P=DIP), grado de temperatura (comercial / industrial) y módulo de batería integrado (CR=batería de litio integrada).
  5. Limitación de alcance
  6. Este catálogo solo enumera familias de CI comerciales estándar de producción en serie. Se excluyen los CI de máscara personalizados, placas de evaluación y módulos adaptadores. Cada modelo base tiene cientos de números de pieza pedibles completos diferenciados por tamaño de memoria, número de pines, encapsulado y temperatura, que no pueden enumerarse uno por uno.
  7. Característica tecnológica central
  8. La tecnología propietaria icónica de Dallas Semiconductor es el bus 1-Wire® de un solo cable, que permite la alimentación y la comunicación de datos bidireccionales a través de una sola línea de señal más tierra.

Preguntas Generales sobre Extracción de Firmware de Microcontroladores


  • ¿Es seguro enviar el pago a MikaTech?

    Si MikaTech fuera una mala empresa, podría encontrar toneladas de malas reputaciones sobre su servicio en Internet a lo largo de sus 28 años de historia

    ¡Entonces, la respuesta es SÍ! Somos buena gente.

    Por qué elegir Mikatech, por favor haga clic aquí para saberlo


  • ¿Puede Mikatech romper circuitos integrados no listados en este sitio?

    Diferentes fabricantes de chips tienen diferentes números de pieza, pero el núcleo interno del chip puede estar hecho con la misma tecnología, sería imposible listar todos los números de pieza donde nuestra tecnología puede aplicarse, como MYSON, STK, FEELING, ANALOG, FUJITSU, NOVATEK, LG/HYNDAI.

    Además, con el avance de la tecnología, cada día ganamos más experiencia y desarrollamos nuevos métodos de ingeniería inversa para diferentes partes de circuitos integrados. La lista completa de números de pieza de circuitos integrados que están dentro de nuestro alcance siempre crece, por favor contáctenos para averiguarlo.

  • ¿Se protegerá mi privacidad?

    Mikatech Innovative Limited comprende la importancia de la privacidad de sus clientes. En el momento en que contacta a Mikatech, la información personal suya quedará bajo protección mediante nuestras normas de gestión desarrolladas a lo largo de nuestros años de práctica. Mikatech utiliza esta información para personalizar su servicio hacia usted, nunca la divulgará a terceros por ninguna razón.
    En cada proyecto que realizamos, eliminamos todos los datos, materiales y códigos 60 días después de entregar los archivos, lo que nos protege a nosotros y protege su privacidad.

  • ¿Es legal obtener el servicio de Mikatech?

    Sí, es totalmente legal.
    Mikatech ofrece sus servicios de ingeniería inversa solo con fines educativos, puede ser ilegal utilizar los servicios mencionados en algunos países o regiones, por favor consulte sus leyes locales. Mikatech no asume ninguna responsabilidad en relación con el uso de los servicios mencionados que pudiera considerarse ilegal.


  • Ataques de temporización y el bloqueo de bits de MCU

    Los ataques de temporización explotan la variación en el tiempo de ejecución de operaciones criptográficas o críticas para la seguridad. El bloqueo de bits de la MCU a menudo se basa en comparaciones de contraseñas. Si la comparación retorna temprano ante una discrepancia, el atacante puede medir el tiempo. Esto revela la contraseña correcta byte por byte. La lectura de un procesador EEPROM puede estar protegida por contraseña. El atacante puede usar la temporización para adivinar la contraseña. Una vez adivinada, puede volcar la flash y la EEPROM. No se necesita decapsulado ni recuperación de código. Copiar el contenido de la memoria criptográfica se vuelve posible. La ingeniería inversa puede continuar. La extracción de firmware es el objetivo final. El bloqueo de bits se ve vencido por un simple canal lateral de temporización. Para prevenirlo, la comparación debe ser de tiempo constante. Debe tomar el mismo número de ciclos independientemente de la contraseña. Muchas MCU implementan la comparación de tiempo constante en hardware. El hardware compara todos los bytes simultáneamente. Esto elimina las diferencias de temporización. Sin embargo, otras operaciones pueden tener variaciones de temporización. Por ejemplo, los tiempos de acceso a memoria pueden depender de la dirección. Si el atacante puede provocar fallos de caché, puede inferir datos. Algunas MCU tienen cachés de instrucciones. El comportamiento de la caché filtra información. El bloqueo de bits puede ser eludido explotando la temporización de la caché. El atacante puede monitorear el tiempo de ejecución de una función. Si la función accede a una tabla secreta, el tiempo revela el índice. Este es un ataque clásico. La lectura de un procesador EEPROM puede verse afectada por la caché. El volcado de flash y EEPROM puede tener latencia variable. El atacante puede aprovecharlo. Para contrarrestar los ataques de temporización, las MCU usan acceso a memoria determinista. Deshabilitan las cachés durante operaciones sensibles a la seguridad. También usan retardos aleatorios. Los retardos aleatorios añaden ruido. Pero no eliminan la fuga. El atacante puede promediar el ruido. Por lo tanto, el tiempo constante es la única solución robusta. El bloqueo de bits debe implementarse en hardware. El hardware no tiene variaciones de temporización debidas a la microarquitectura. Es determinista. La decisión de bloqueo debe ser un único camino combinatorio. Ese camino tiene retardo fijo. El atacante no puede extraer información. Además, la MCU puede usar ofuscación (blinding). La ofuscación aleatoriza la entrada. Esto dificulta los ataques de temporización. Por ejemplo, la contraseña puede ser XORed con un valor aleatorio. La comparación se realiza sobre los valores ofuscados. El valor aleatorio cambia en cada intento. El atacante no puede correlacionar el tiempo con la contraseña. El bloqueo de bits también incluye un número máximo de intentos. Después de algunos fallos, el bloqueo se bloquea permanentemente. Esto previene ataques de temporización iterativos. La lectura de un procesador EEPROM se deshabilita. El volcado de flash y EEPROM se deshabilita. Copiar el contenido de la memoria criptográfica se deshabilita. La ingeniería inversa se detiene. La extracción de firmware es imposible. En conclusión, los ataques de temporización son un método sutil pero efectivo para romper el bloqueo de bits. Las defensas incluyen comparaciones de tiempo constante, gestión de caché, retardos aleatorios, ofuscación y límites de intentos. Estas aseguran que la lectura, el volcado, el decapsulado, la copia, la ingeniería inversa y la extracción no se beneficien de fugas de temporización.



    microcontroller_hack_time

    Años

    28 +
    microcontroller hack countries

    Países

    110 +
    microcontroller attack clients

    Clientes

    5000 +
    microcontroller projects unlocked

    Proyectos

    60000 +