Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/dj1ch/esp32c6-sniffer
a proof of concept ESP32C6 sniffer
https://github.com/dj1ch/esp32c6-sniffer
esp-idf esp32c6 packetsniffing sniffer sniffing-devices
Last synced: 21 days ago
JSON representation
a proof of concept ESP32C6 sniffer
- Host: GitHub
- URL: https://github.com/dj1ch/esp32c6-sniffer
- Owner: dj1ch
- License: mit
- Created: 2024-07-28T17:11:39.000Z (6 months ago)
- Default Branch: main
- Last Pushed: 2024-09-02T07:46:26.000Z (4 months ago)
- Last Synced: 2024-10-27T19:34:53.126Z (3 months ago)
- Topics: esp-idf, esp32c6, packetsniffing, sniffer, sniffing-devices
- Language: C
- Homepage:
- Size: 289 KB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
![GitHub contributors](https://img.shields.io/github/contributors/dj1ch/esp32c6-sniffer)
![GitHub forks](https://img.shields.io/github/forks/dj1ch/esp32c6-sniffer)
![GitHub Repo stars](https://img.shields.io/github/stars/dj1ch/esp32c6-sniffer)
![GitHub Repo stars](https://img.shields.io/github/stars/dj1ch/esp32c6-sniffer)
![GitHub Issues](https://img.shields.io/github/issues/dj1ch/esp32c6-sniffer)
![GitHub License](https://img.shields.io/github/license/dj1ch/esp32c6-sniffer)
esp32c6-sniffer
A proof of concept ESP32C6 sniffer.
Explore the docs »
View Demo(TBA)
·
Report Bug
·
Request Feature
## Table of Contents
* [About the Project](#about-the-project)
* [Built With](#built-with)
* [Getting Started](#getting-started)
* [Prerequisites](#prerequisites)
* [Installation](#installation)
* [Usage](#usage)
* [Roadmap](#roadmap)
* [Contributing](#contributing)
* [License](#license)
* [Contact](#contact)
* [Acknowledgements](#acknowledgements)## About The Project
This POC (Proof of concept) tool showcases an ESP32C6 with the ESP-IDF framework, to be a WiFi sniffer with the capabilities of looking for user-specified settings. I don't intend for this to be anymore than a miniature version of Wireshark.
As of now, the firmware is very minimal and is only capable of sniffing for packets on a user-set channel. Everything else from the CLI to the user-defined settings are still a work in progress.
Originally, this was meant to be firmware for the M5NanoC6, but it is likely that this can compile on other ESP32 boards if you delete the `sdkconfig`, reset the settings, then compile for the board of your choice.
**As a developer, I do not endorse the illegal use of this firmware. Any sort of trouble you get into I am not responsible for!!!**
### Built With
* [[email protected]](https://github.com/espressif/esp-idf/tree/v5.3)
* [M5NanoC6](https://shop.m5stack.com/products/m5stack-nanoc6-dev-kit) or any other ESP32## Getting Started
To get a local copy up and running follow these simple steps.
### Prerequisites
### Installation
1. Clone the repo
```sh
git clone https://github.com/dj1ch/esp32c6-sniffer.git
```2. Install `esp-idf`: Follow [documentation](https://docs.espressif.com/projects/esp-idf/en/latest/esp32/get-started/#installation) and install version 5.3.
3. Set board target
```sh
idf.py set-target
```If it asks that you delete the build directory or `sdkconfig`, you will need to do that to compile for that board.
4. Build the project
```sh
idf.py build
```5. Flash to your ESP32(replace `PORT` with the port connected to your ESP32)
```sh
idf.py -p PORT flash
```or you can run
```sh
idf.py flash
```## Usage
In terms of features I didn't add that many. The software itself is very minimal.
Sniffer command list:
* `switchchannel`: Switches channel. Use the `--channel` flag to set the channel you're switching to.
* `start`: Starts the sniffer. Use the `--type` flag to set the packet type you're searching for (`management`, `data`, or `misc`), which is optional. Use the `--mac` flag to specify a mac address to search for, which is also optional.
* `currentchannel`: Returns your current channel.## Roadmap
As of now I would like to implement/am in the progress of implementing:
* Video demo
See the [open issues](https://github.com/dj1ch/esp32c6-sniffer/issues) for a list of proposed features (and known issues).
## Contributing
Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are **greatly appreciated**.
1. Fork the Project
2. Create your Feature Branch (`git checkout -b feature/AmazingFeature`)
3. Commit your Changes (`git commit -m 'Add some AmazingFeature'`)
4. Push to the Branch (`git push origin feature/AmazingFeature`)
5. Open a Pull Request## License
Distributed under the MIT License. See `LICENSE` for more information.
## Contact
dj1ch - [email protected]
Project Link: [https://github.com/dj1ch/esp32c6-sniffer](https://github.com/dj1ch/esp32c6-sniffer)
## Acknowledgements
* [Espressif](https://github.com/espressif/)
* [ESP32 WiFi Sniffing example](https://github.com/lpodkalicki/blog/blob/master/esp32/016_wifi_sniffer/main/main.c)
* [ESP32 Advanced Console example](https://github.com/espressif/esp-idf/tree/v5.3/examples/system/console/advanced)
* [ESP32 Basic Console example](https://github.com/espressif/esp-idf/tree/v5.3/examples/system/console/basic)
* And many more...!