Skip to content
This repository has been archived by the owner on Nov 19, 2022. It is now read-only.

mix-archive/esp32-nearby-sniffer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ESP32 附近WiFi设备嗅探

介绍

本项目是基于ESP32的WiFi嗅探器,可以扫描附近的WiFi使用设备

技术细节

Wi-Fi的嗅探是通过ESP32提供的WiFi数据包嗅探功能实现的,具体的实现过程如下:

  1. 通过esp_wifi_set_promiscuous函数设置ESP32为嗅探模式
  2. 通过esp_wifi_set_promiscuous_rx_cb函数设置嗅探回调函数
  3. 在回调函数中解析WiFi数据包, 获取MAC地址:
    • WiFi的数据包有两种类型,一种是管理帧,一种是数据帧
    • 管理帧中的MAC地址在wifi_promiscuous_pkt_t结构体中的payload字段中
    • 根据IEEE802.11标准, 管理包的结构如下: Management Packet 其中Frame Control的结构如下: Frame Control 为了获得正确的MAC地址, 我们需要关心From DS和To DS这两个字段, 其含义如下: From DS and To DS
    • 从结构体中读取需要的数据
  4. 将MAC地址转换为字符串,通过屏幕打印出来

展示

image

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published