Quanto è difficile leggere la memoria flash da un chip?

4

Quali sono i parametri in gioco e quale è una stima approssimativa della durezza del compito di leggere i contenuti della memoria flash da un microcontrollore? Naturalmente, si presume che non ci sia un modo convenzionale per farlo.

    
posta user907323 03.02.2014 - 12:04
fonte

1 risposta

6

Dipende in gran parte dal chip e dalla persona che lo ha programmato. I microcontrollori di solito hanno una funzione che consente di estrarre il binario del firmware esistente, ma in molti casi può essere disabilitato con un cosiddetto "flag di sicurezza", che disabilita il processo di download fino a quando non viene caricato un nuovo firmware contenente direttive che trasformano il bandiera sicura. Naturalmente, questo pulisce il firmware esistente nel processo. Controlla la scheda tecnica del microcontrollore per informazioni specifiche.

Se si tratta di un microprocessore (al contrario di un microcontrollore), di solito non esiste un firmware on-chip e il codice del programma viene memorizzato esternamente su un dispositivo di memoria. Di solito si tratta di una EEPROM o di una ROM maschera che è possibile interfacciare separatamente. L'ho fatto con i sistemi embedded che usano il flash SPI: basta dissaldarlo e collegarlo a un Bus Pirate. Se non riesci a dissaldare il dispositivo, potrebbe anche essere possibile sniffare il bus e ottenere informazioni in questo modo.

Il modo universale per ottenere i dati è il decapping. Ottieni un acido strong (l'acido nitrico è una scelta comune) che mangerà via e il composto del pacchetto, ma non il silicio, e lascialo lì per un giorno o due. Quindi scatti fotografie con un microscopio digitale e usi l'elaborazione delle immagini per trasformare i pattern in dati.

    
risposta data 03.02.2014 - 12:32
fonte

Leggi altre domande sui tag