Looking to get started with hardware hacking after DefCon? Here are a few blogs to get you started! 🧵
The first question I get is: "What tools to we need to build a hardware hacking lab?" - we've got you covered here with a wiki outlining common tools and their use cases:
If you want a more interractive guide to how to use JTAG and SWD as a reverse engineer, check out this hack chat that I did in 2020:
If you're looking to learn more about UART, UBoot and how to use both of these to extract firmware, check out this blog post where we extract the firmware from an arcade cabinet:
Now that we have the flash extracted, what do we do with it? Here is a follow up post talking about patterns to look for in bare-metal firmware dumps and working with esoteric processors:
Maybe your firmware image is more complex, or you're interested in reverse engineering more standard target binaries - we've got a free Ghidra course here to get you started!
Dang ... my processor isn't currently supported in Ghidra, or maybe it does not have a proper loader! Not to fear, adding memory maps and processor specific peripherals can be done pretty easily:
Next, perhaps you're looking at a complex function and you'd like to debug it or step through it - Ghidra's PCode emulation is a great place to start when learning how your target binaries work:
Finally, if you or your organization is interested in a formal onsite training about hardware hacking and reverse engineering, check out our course here:
Happy Friday! Looking to learn a little more about #ghidra or software RE? Here is a quick thread with some resources that I've put together over the years (1/6) 🐉
First, here is a free four-session that I put together with @hackaday, there are lectures on YouTube, and all of the materials are available on GitHub.