Skip to content
KitploitKITPLOIT
OutilsExploitsBlog
Log in
Soumettre
OutilsExploitsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

FluxContactConfidentialité© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
esp32-sniffer — Micrologiciel ESP32 qui renifle les paquets PROBE REQUEST envoyés par les smartphones à la recherche d'une connexion Wi-Fi afin d'extraire différents types d'informations | Kitploit
Outils/GitHubGitHub/ets-polito/esp32-sniffer
Sécurité des Systèmes EmbarquésSniffing et Analyse de PaquetsReconnaissanceAudit Wi-FiSécurité IoTCollecte d'InformationsSécurité Sans FilSécurité Matériel et IoT
GitHubets-polito/esp32-sniffer

esp32-sniffer

Micrologiciel ESP32 qui renifle les paquets PROBE REQUEST envoyés par les smartphones à la recherche d'une connexion Wi-Fi afin d'extraire différents types d'informations

3284055il y a 2 ansVérifié par Kitploit

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager
Voir le dépôtSite web

ESP32 Sniffer

ETS

Software License Demo Twitter

Ce projet utilise Espressif IoT Development Framework (ESP-IDF) et a été testé sur le module ESP-WROOM-32 et esp-idf v3.2.

Une vue d'ensemble du projet complet (c'est-à-dire le firmware ESP32, le serveur et l'interface graphique) est disponible ici.

Ce firmware est écrit dans le but de sniffer les paquets Probe Request envoyés par les smartphones qui recherchent une connexion Wi-Fi. Lorsque la connexion Wi-Fi est active sur un smartphone, celui-ci envoie en diffusion (sur toutes les fréquences de canaux) un message probe request demandant s'il existe des Wi-Fi libres ou des Wi-Fi connus (c'est-à-dire ceux pour lesquels le smartphone connaît le mot de passe). L'ESP32 les sniffe et en extrait différents types d'informations.

Les informations suivantes sont extraites de chaque paquet sniffé :

  • MAC du smartphone qui a envoyé la requête
  • SSID du wifi auquel la requête est envoyée
  • L'horodatage (Timestamp) du moment où la requête a été envoyée
  • Received Signal Strength Indicator (RSSI)
  • Sequence Number (SN)
  • HT Capabilities Info

Toutes les minutes, ces informations sont envoyées à un serveur et traitées. Enfin, il est possible de consulter les informations traitées (localisation en temps réel des smartphones, fréquence des smartphones, etc.) via une interface graphique.

Démo

Regarder la vidéo

Table des matières

  • Aperçu du firmware
  • Configuration de l'environnement ESP-IDF
  • Utilisation
  • Configuration des fichiers
    • Configuration des variables
    • Ajouter un menu personnalisé
  • Composants
  • Ressources

Aperçu du firmware

Le firmware se compose de deux threads/tâches principaux :

  • Tâche Sniffer

    • Sniffe les paquets Probe Request et enregistre les informations décrites ci-dessus dans un fichier.
  • Tâche Wi-Fi

    • Chaque minute, récupère les informations enregistrées par la Tâche Sniffer et les envoie au serveur.
    • Un lock est utilisé afin de gérer la section critique pour les opérations d'E/S dans le fichier.

L'ESP32 est configuré en mode WIFI_MODE_APSTA : c'est-à-dire qu'il crée le "soft-AP and station control block" et démarre le "soft-AP and station". Grâce à cela, l'ESP32 est capable de sniffer et d'envoyer des informations au serveur en même temps, évitant ainsi de perdre les informations des paquets pendant l'envoi des données.

Voici la liste complète des champs d'information pouvant figurer dans une Probe Request (source IEEE 802.11-2012) :

cwap-probe-10

Et ci-dessous un paquet sniffé avec Wireshark dans lequel vous pouvez voir, pour chaque champ, le nombre de bits et leur position au sein du paquet :

cwap-probe-03

Configuration de l'environnement ESP-IDF

Cette section peut être obsolète, consultez le site officiel pour plus d'informations et pour le guide le plus récent sur la façon de démarrer avec ESP-IDF.

  1. Configuration de la chaîne d'outils (Toolchain)

    • Windows
    • Linux
    • Mac OS
  2. Obtenir ESP-IDF

    En plus de la chaîne d'outils (qui contient les programmes pour compiler et construire l'application), vous avez également besoin des API / bibliothèques spécifiques à l'ESP32.

    cd ~/esp
    git clone --recursive https://github.com/espressif/esp-idf.git
     
    
  3. Basculer vers la version v3.x

    cd esp-idf
    git checkout release/v3.2
     
    
  4. Configurer le chemin vers ESP-IDF

    Les programmes de la chaîne d'outils accèdent à ESP-IDF via la variable d'environnement IDF_PATH. Cette variable doit être configurée sur votre PC, sinon les projets ne se compileront pas.

    • Windows
    • Linux & Mac OS
  5. Installer les packages Python requis

    python -m pip install --user -r $IDF_PATH/requirements.txt
    

Utilisation

  1. Assurez-vous d'avoir exporté le chemin

    export IDF_PATH=~/esp/esp-idf
    export PATH=$PATH:$HOME/esp/xtensa-esp32-elf/bin
    
  2. Cloner le dépôt

    git clone https://github.com/ETS-PoliTO/esp32-sniffer.git
    cd esp32-sniffer
    
  3. Établir une connexion série entre l'ESP32 et votre PC

    make menuconfig
    

    Allez dans Serial flasher config, puis Default serial port et définissez le port sur lequel l'ESP32 est connecté

    Notez que, si vous utilisez un pont, vous devrez probablement télécharger un pilote :

    • CP210x
    • FTDI

    Ceci fournit un guide sur la façon d'établir une connexion série entre l'ESP32 et le PC.

  4. Compiler le code et flasher l'ESP32

    make all && make flash
    
  5. Consulter les journaux

    make monitor
    

Configuration des fichiers

Le fichier /main/Kconfig.projbuild contient deux menus différents :

  • SPIFFS (SPI Flash File System)

    Il contient des informations importantes sur la partition SPIFFS :

    • Adresse de base SPIFFS
    • Taille SPIFFS
    • Taille de bloc logique SPIFFS
    • Taille de page logique SPIFFS

    SPIFFS est un système de fichiers qui prend en charge l'usure uniforme (wear leveling), les vérifications de cohérence du système de fichiers, et plus encore.

  • Configurations

    Il contient différentes variables :

    • ESP32_ID : ID de l'ESP32
    • WIFI_SSID : SSID du WiFi (nom du réseau)
    • WIFI_PASS : mot de passe WiFi (WPA ou WPA2)
    • BROKER_ADDR : IP du broker MQTT
    • BROKER_PSW : mot de passe du broker MQTT
    • BROKER_PORT : port du broker MQTT
    • CHANNEL : canal sur lequel l'ESP32 sniffra les PROBE REQUEST
    • SNIFFING_TIME : durée du sniffing
    • etc...

Configuration des variables

Télécharger l’outil