Matthew Alt's PiFex Turns a Raspberry Pi Into an Accessible Tool for Reverse Engineering
Originally developed to support VoidStar Security's training courses, the PiFex converts a Raspberry Pi into a useful USB Ethernet gadget.
Security consultant Matthew Alt, of VoidStar Security, has designed an add-on that turns a Raspberry Pi into a handy tool for reverse engineering new and unknown hardware: the Pi Interface Explorer, or PiFex.
"The PiFex [is] a basic companion board for the Raspberry Pi designed to teach users the basics of hardware hacking and embedded protocols," Alt explains of his creation. "By breaking out the commonly used interfaces and routing them through bi-directional level shifters, we aimed to streamline some of the initial steps when reverse engineering a new device or trying to learn how a new sensor works. While this device was initially designed for use during our hardware hacking bootcamp it has quickly become my go-to when performing initial hardware assessments of COTS [Commercial Off-The-Shelf] devices."
Sitting atop a Raspberry Pi single-board computer, the PiFex provides access to UART, SPI, and I2C buses, along with JTAG and Serial Wire Debug (SWD) interfaces. "These interfaces were chosen because they are the ones that we utilize in our hardware hacking training," Alt explains, "and are also the most likely to be used by tinkerers and hardware hackers for other projects." The board also offers eight general-purpose input/output (GPIO) pins, an on-board OLED display, and a dedicated header for connection to a logic analyzer.
"The Raspberry PI uses 3.3V logic levels," Alt notes, "meaning it can only communicate with devices that use that same logic level. If we want to connect to a device that uses lower voltages (1.8V and 1.2V are becoming increasingly common), we need to route those through a level shifter. To streamline this and help reduce issues with wiring during our training, we've added two onboard level shifters." These can be toggled using a physical switch at the top of the board.
On the software side, a dedicated PiFex operating system images exposes the device as a USB Ethernet gadget when connected to a host machine over USB. A web interface provides information about the board's capabilities as well as access to each feature, with Jupyter notebooks pre-loaded.
A detailed walkthrough of the PiFex's capabilities is available on the VoidStar Security blog, while boards are available to order via the company's GumRoad store at $50.