A Mask ROM Tool in Qt6 and C++
Where
Talks
ShmooCon 2023
Duration
39 min
Shows how photographing and chemically delayering mask ROM chips lets their stored bits be extracted with a Qt6 tool.
Summary
Mask ROM stores its contents as a fixed pattern set during chip manufacture. That makes it expensive to produce in small runs, but it is a valuable reverse engineering target, because the data sits in the physical layout of the die. A photograph can reveal the stored bits even when the chip is broken or has no usable interface. The talk introduces a new open-source tool, written in Qt6 and C++, that turns annotated microscope images into grids of ordered bits.
The speaker walks through the workflow. The package is opened with nitric acid, and the upper metal layers are removed with hydrofluoric acid baths so the transistors become visible. Many overlapping microscope images are stitched into a panorama, and row and column lines are placed over the bits. The software offers design rule checks for ambiguous readings, can merge annotations from several chips to correct errors, and exports to formats such as ASCII art, CSV, JSON and Python arrays. Examples include a 1988 greeting card chip, a Game Boy ROM whose hash matched existing extractions, and the Clipper and Capstone chips, which yielded Skipjack tables and an ARM6 program.
The main takeaway is that converting physical bit positions into logical byte order is a separate and harder problem, with existing tools such as Zorrom helping there. Good tooling, speed and patience with the chemistry and imaging can recover firmware from chips that otherwise resist analysis. The speaker also notes that the approach becomes harder as features shrink below the wavelength of light.
Related talks
Talks·31 min
Inbar Raz
Shows how an obscure payphone CPU was reverse engineered by writing a Ghidra processor module and patching ROM firmware.
Talks·47 min
Michael Ossmann
Walks through open-source FPGA tools for building USB devices, analyzing USB traffic, and emulating hardware.
Talks·51 min
Aleksandar Nikolic · Travis Goodspeed
Shows how film can replace a missing digital sensor when imaging electronics with a cabinet X-ray machine.


