Just looking at the data directly didn't make me optimistic, as all the results were jittery at first glance. I quickly made the STM32 measure the time between the last bit of the code sent and the time until the busy line got deasserted again (which takes quite a bunch of cycles after the last ID byte received, hmm). So, before having to redesign the makeshift probe into something more useful, I figured it might be easier to try a simpler timing attack first.
I at first tried power trace side-channel analysis attack (since I had a ChipWhisperer laying around gathering dust) when the bootloader checks the password, but my makeshift shunt probe was just too noisy. After the programmer sends the ID code check function, another command (0x70) can be used to check whether the ID code verification succeeded. To unlock the flash, the programmer sends 12 bytes: a command prefix (0xF5), the address of the ID code (?, 0x0FFFDF), the length of the ID code (?! 7) and 7 bytes of ID code. The clock comes from the programmer, and the EC exposes a Busy line used to synchronize whether its' ready to receive commands. If the programmer does not provide the code, no flash dump/write access is allowed.
This code is used by the built-in bootrom to allow/deny access to the flash via the 'Standard Serial I/O' protocol for programming (selectable via M0/M1 straps). The EC has a 7-byte ID code that it keeps in flash. After checking connectivity to the bootrom and that I was getting power traces, it was time to dive in. And finally, I added an oscilloscope to the voltage shunt and a logic analyzer to serial lines, for good measure.
I also attached a ChipWhisperer with a shunt sensor board to the EC's power line. I've then attached an STM32F303RE on a Nucleo board as a general interface board to the EC's serial and reset. Let's break this thing! I've etched a new board that lets me access important pins (serial TX, RX, CLK, BUSY RST and power lines) without having to fiddle with the previous hacky breakout board.
After another long hiatus, I've come back to this project. After procrastinating for a couple of years we now have the flash dump of the EC, which we are now reverse-engineering. We have so far dumped the BIOS from the FWH memory on board, reverse engineered it enough to find out it uses the EC (a Renesas M306K9FCLRP 16-bit micro) in order to check the password and password reset response. As a long-term goal we're thinking of porting Coreboot to them. The aim is to uderstand the laptop boot process better, with an immediate goal of writing a keygen for its' challenge/response mechanism, allowing us to actually boot them and use them as a lightweight Internet access platform. Since they are enterprisey laptops, we cannot just reset their password by unplugging the CMOS battery. We have acquired a bunch of BIOS locked Toshiba Portege R100 laptops.
Toshiba challenge response code generator Hey all, I've got a Toshiba Satellite M300 that has a bios password set. Izotope ozone keygen challenge codeng chemists will enjoy using izotope ozone keygen challenge code to learn all about the.
› ▼ ▼ Toshiba Challenge Code Keygen Generator