Let's do the Arduino set-up first:
- Download and install the Arduino IDE
- Open it up and go to File > Preferences
- In "Additional Boards Manager URLs" add
- Hit "OK"
- Go to Tools > Board: ____ > Boards Manager
- For "Filter your search" type "ESP8266" and let it find the module
- Click "Install" and it should download and install the add-on
- Click "Close" when that's done
- Select Tools > Board: ____ > ESP8266 Boards > Generic ESP8266 Module
- Select Tools > Flash size: ____ > 4MB (FS:1MB OTA:~1019KB)
- Plug in your badge and switch it on
- Go to Tools > Port and select the port it's on. (Kali picked /dev/ttyUSB0)
At this point, you can load whatever Arduino code you like. The official Kernelcon badge code uses a JSON library, so if you're going to reload the official code, install the JSON library first.
- In the IDE select Tools > Manage Libraries
- Search for "ArduinoJson" and click "Install" to add it
- Click "Close" when it's done installing.
Finally, let's fetch the original badge code, update the wifi settings, and upload it to the badge.
- Download and unzip the ZonkSec kernelcon-2022-badge code
- In the Arduino IDE, open kernelcon_watch_v4.ino
- This opens all the source files. Select the wifi.h file tab
- Update the SSID and password values and save the file
- Select Sketch > Upload and watch it compile and transfer
- The badge will restart, and it should use your updated wifi settings as it does.
That's it! Mess around with the badge code some more, if you like. Or go find some ESP8266 code and mess with the little guy. For me, my next step is to try to get the original deauther code running.