Resources to learn hardware hacking…

Intro to Hardware Hacking

Courses

Reverse Engineering

Learn Ghidra

Hardware Sims

YouTube Channels

OWASP IoT Security Testing Guide

IoT Ecosystem Testing Methodology

MITRE - EMB3D Cybersecurity Threat Model for Embedded Devices

Arduino

FT232H

Pulseview

Use the FT232H GPIO

Libraries

  • Install libusb sudo apt-get install libusb-1.0
  • Setup udev rules in /etc/udev/rules.d/11-ftdi.rules
# /etc/udev/rules.d/11-ftdi.rules
SUBSYSTEM=="usb", ATTR{idVendor}=="0403", ATTR{idProduct}=="6001", GROUP="plugdev", MODE="0666"
SUBSYSTEM=="usb", ATTR{idVendor}=="0403", ATTR{idProduct}=="6011", GROUP="plugdev", MODE="0666"
SUBSYSTEM=="usb", ATTR{idVendor}=="0403", ATTR{idProduct}=="6010", GROUP="plugdev", MODE="0666"
SUBSYSTEM=="usb", ATTR{idVendor}=="0403", ATTR{idProduct}=="6014", GROUP="plugdev", MODE="0666"
SUBSYSTEM=="usb", ATTR{idVendor}=="0403", ATTR{idProduct}=="6015", GROUP="plugdev", MODE="0666"
  • Install pyftdi pip3 install pyftdi

  • Install Blinka pip3 install adafruit-blinka

  • Set environment variable export BLINKA_FT232H=1

  • Check pyftdi is installed correctly

from pyftdi.ftdi import Ftdi
Ftdi().open_from_url('ftdi:///?')

Raspberry Pi

Raspberry pi PICO

Hardware to hack