Firmware extraction is the recovery of the program and data stored inside a microcontroller, flash device or SoC. The straightforward cases — an unprotected serial flash, an MCU with read-out protection disabled — are routine. The interesting cases are the protected ones, and those are decided by which attack path is appropriate rather than by brute force.
We approach every extraction by first identifying the protection mechanism actually present, then choosing the least destructive method that will defeat it. That ordering matters: an invasive attack that is unnecessary is a device destroyed for no reason.
| Protection | Typical device families | Approach |
|---|---|---|
| No protection / lock bits clear | Most 8- and 16-bit MCUs, SPI flash | Direct read via programmer or in-circuit |
| Read-out protection (ROP / CRP / LPM) | STM32, GD32, NXP LPC, PIC, AVR, MSP430 | Non-invasive or semi-invasive, depending on silicon revision |
| Debug port lock (JTAG / SWD disable) | ARM Cortex-M families, PIC32, Renesas | Port re-enablement, glitch, or invasive access to the debug logic |
| Security fuse / OTP lock | Many 8-bit and legacy MCUs | Invasive die access with fuse analysis |
| Encrypted external flash | Application processors, network SoCs | On-chip key recovery followed by decryption of the external image |
| Secure element / crypto co-processor | Payment, identity and automotive parts | Side-channel (DPA/SPA) and fault injection; scoped per engagement |
Exploits the debug interface, bootloader, firmware update path or a documented silicon erratum. Nothing is physically altered, so the original device survives and can be returned to you intact. This is always tried first.
The package is opened and the die is accessed with UV, laser or optical fault injection while the device is running. Typical uses are clearing a security fuse or forcing a branch inside the protection routine.
Micro-probing or focused ion beam work on the die to read the array directly or to reach internal signal lines. Reserved for parts where the protection is implemented in hardware with no exploitable interface.
| Case | Typical duration |
|---|---|
| Unprotected flash or EEPROM | 1–2 working days |
| Read-out protected MCU, known method | 3–10 working days |
| Protected MCU requiring method development | 2–6 weeks |
| Side-channel or fault-injection engagement | Quoted per scope |
Will the device survive the extraction?
For non-invasive methods, yes — the device is returned unmodified and still functional. Semi-invasive extraction usually leaves the device usable but with the package opened. Invasive methods generally make the part non-functional. We tell you which category applies to your device before starting.
My MCU is read-out protected. Is extraction guaranteed?
No, and any vendor who guarantees it is not being straight with you. Protection implementations differ between silicon revisions of the same part number, and a method that works on one revision may be fixed on the next. We assess the specific die revision first and report the realistic probability, including the case where we recommend against proceeding.
Do you need the whole product or just the chip?
Either. In-circuit extraction is often preferred because the board supplies the clock, power and boot environment the protection routine expects. If the board is not available, a bare part can be placed in a test fixture, but this occasionally changes the behaviour of the protection logic.
What about encrypted external flash?
That is a two-part problem: recover the key from the SoC, then decrypt the off-chip image. We handle both, but the two stages are scoped and quoted separately because the key recovery is usually the harder half.
Can you extract from a device that is already damaged?
Often yes, provided the die itself is intact. Package damage, broken leads or a dead board are not obstacles. If the die is physically cracked or the memory array has been electrically destroyed, extraction may become impossible and we will say so after inspection.
Tell us the part number, the package, whether you can supply the whole board or only the chip, and what you need the binary for. We will confirm the protection mechanism, the realistic method, the probability of success and the turnaround before any destructive step. We accept work only where the requester can demonstrate ownership or written authorisation.