You can build your own firmware using the ESP-IDF framework. However, we will focus on the ESP-IDF framework in this guide.
Important
The version you need to install must be 5.3.1; we cannot guarantee that a more recent version will compile.
- Minino
- ESP-IDF v5.3.1 installed
- Make installed
- pre-commit installed (optional but recommended)
- Clone this repository:
Using HTTPS:
git clone https://github.com/ElectronicCats/Minino.git
Using SSH:
git clone [email protected]:ElectronicCats/Minino.git
- Change to the firmware directory:
cd Minino/firmware
- Set the IDF_PATH environment variable:
get_idf
Note:
get_idf
should be an alias you created if you followed the ESP-IDF installation guide.
- Setup the project environment:
make setup
To build the firmware, run the following command:
make compile
-
Connect your Minino to your computer and identify the port it is connected to. For example,
/dev/ttyUSB0
or/dev/ttyACM0
on Linux,COM1
orCOM2
on Windows, or/dev/cu.usbmodem14401
on macOS. -
Set the PORT to an environment variable, for example:
export PORT=/dev/ttyUSB0
Replace
/dev/ttyUSB0
with the port your Minino is connected to.
- Flash the firmware:
make flash
To monitor the serial output, run the following command:
make monitor
To do all the previous steps in one command, run:
make all
If you you have dependencies issues or want to clean the project, run the following command:
make clean
To create a release, you need to update the firmware version in the menuconfig
. To do this, run:
idf.py menuconfig
Navigate to General project
-> Firmware version
and update the version number.
Get the build files:
./get_build.sh
If you can't run the script, make sure it has the correct permissions:
chmod +x get_build.sh
Note: On Windows, you can run the script using Git Bash.
The build files will be in the build_files.zip
file. Now you can create a release on GitHub and attach the build_files.zip
file.
Table for ESP Tool
Flash Address | File |
---|---|
0x0 | bootloader.bin |
0x8000 | partition-table.bin |
0x15000 | ota_data_initial.bin |
0xa0000 | minino.bin |
Command
python -m esptool --chip esp32c6 -b 460800 --before default_reset --after hard_reset write_flash --flash_mode dio --flash_size 8MB --flash_freq 80m 0x0 bootloader.bin 0x8000 partition-table.bin 0x15000 ota_data_initial.bin 0xa0000 minino.bin
Flash Address | File |
---|---|
0x0 | bootloader.bin |
0x8000 | partition-table.bin |
0x20000 | minino.bin |
python -m esptool --chip esp32c6 -b 460800 --before default_reset --after hard_reset write_flash --flash_mode dio --flash_size 8MB --flash_freq 80m 0x0 bootloader.bin 0x8000 partition-table.bin 0x20000 minino.bin
Find the instructions here.
First run a python simple server with:
python3 -m http.server
Next open the DoS app in minino and if you haven't a AP saved in the serial terminal you need to add your AP:
Welcome to the Minino Console.
Type 'help' to get the list of commands.
Use UP/DOWN arrows to navigate through command history.
Press TAB when typing command name to auto-complete.
Press Enter or Ctrl+C will terminate the current
command.
minino> save AP_NAME PASSWORD
The minino will try to connect to AP. Once you have a AP saved if the minino app do not show the AP's exit and come back to the app to load AP, once minino found a AP available this will try to connect and if done, the next screen will show the target, if target is not configured, you need to introduce manually in the serial terminal:
Welcome to the Minino Console.
Type 'help' to get the list of commands.
Use UP/DOWN arrows to navigate through command history.
Press TAB when typing command name to auto-complete.
Press Enter or Ctrl+C will terminate the current
command.
minino> web_config IP_VICTIM PORT_VICTIM _PATH_VICTIM
In this case our victim server are our pc so the command will be like this: web_config 192.168.0.178 8000 /
Then we can execute the command catdos
to start the attack.