ESP32 Bus Pirate представляет собой прошивку с открытым исходным кодом, вдохновленную оригинальным Bus Pirate от Dangerous Prototypes, которая превращает стандартное оборудование (ESP32-S3) в мультипротокольный хакерский инструмент.
Она поддерживает сниффинг, отправку, скриптинг и взаимодействие с различными цифровыми протоколами (I2C, UART, 1-Wire, SPI и т.д.) через последовательный терминал или веб-интерфейс командной строки. Протестировано на платах разработки Espressif ESP32-S3-DevKitC-1 , M5Stack Cardputer , M5StickC Plus2 , Atom S3 Lite , M5Stamp S3 и LILYGO T-Embed (CC1101).
Ключевые особенности прошивки ESP32 Bus Pirate:

- Интерактивный интерфейс командной строки через
- USB serial – для повышенной производительности и отзывчивости
- Веб-интерфейс (через Wi-Fi) – не требуется подключение кабеля к хосту, работает в любом веб-браузере
- Поддерживаемые режимы
- HiZ (по умолчанию) – безопасный режим с высоким импедансом, при котором все выходы отключены, а источники питания деактивированы
- I2C (сканирование, глитчинг, ведомый режим, дамп)
- SPI (флеш-память, SD-карта, ведомый режим)
- UART / полудуплексный UART (мост, чтение, запись)
- 1-WIRE (ibutton, датчик температуры)
- 2-WIRE (смарт-карта) / 3-WIRE (EEPROM)
- DIO (цифровой ввод/вывод, чтение, подтяжка, установка)
- Инфракрасный (Device-B-Gone, отправка и прием)
- USB (HID, мышь, клавиатура, геймпад, хранилище)
- Bluetooth (BLE HID, сканирование, спуфинг, сниффинг)
- Wi-Fi (сканирование, точка доступа, подключение, сниффинг, деаутентификация)
- JTAG (определение распиновки, SWD)
- Управление светодиодами (анимации, настройка LED)
- Аудио I2S
- Шина CAN
- Снифферы протоколов для I2C, Wi-Fi, Bluetooth, 1Wire, CAN.
- Скриптинг с использованием инструкций в байт-коде стиля Bus Pirate.
Исходный код на C++, файлы прошивки для поддерживаемых плат и документация по каждому режиму доступны на GitHub под разрешительной лицензией MIT. Разработчик (Geo) предупреждает, что устройства должны работать только при 3,3 В или 5 В – подключение периферии с другими уровнями напряжения может повредить ESP32. Для повышенной гибкости по напряжениям рекомендуется использовать аппаратные инструменты Bus Pirate, такие как новейшие Bus Pirate 5XL и 6 на базе Raspberry Pi RP2350A/RP2350B, особенно с учетом выхода ревизии RP2350 A4 stepping с исправлением ошибки GPIO E9 .
Выражаем свою благодарность источнику, с которого взята и переведена статья, сайту cnx-software.com.
Оригинал статьи вы можете прочитать здесь.