espressif / esp-idf

Espressif IoT Development Framework. Official development framework for Espressif SoCs.
Apache License 2.0
13.71k stars 7.3k forks source link

ESP-NOW: frame checksum is not validated (IDFGH-8072) #9575

Open ceribus opened 2 years ago

ceribus commented 2 years ago

Environment

Problem Description

Frames received by ESP-NOW with invalid FCS (checksum) are not discarded.

Expected Behavior

Frames with invalid FCS should be discarded.

Actual Behavior

Frames with invalid FCS are accepted and acknowledged.

image image

Steps to reproduce

Use the firmware and scripts from https://github.com/ceribu/esp-now-header-validation/blob/main/invalid-fcs.py

MaxwellAlan commented 2 years ago

Hi @ceribu

Can you share the type of your wireless card that you use with scapy to send FCS error packets, when I try your script, the tx packet's FCS part will be modified by the wifi driver.

Thanks.

ceribus commented 2 years ago

Hi @MaxwellAlan

I' m using an Intel Wireless 8265. The script was run on Ubuntu 22.04 and the wireless card was set to monitor mode before, as described in the Readme: https://github.com/ceribu/esp-now-header-validation/blob/main/README.md

MaxwellAlan commented 2 years ago

Intel Wireless 8265

Yeah, I have tried with Kali 21.2 with tplink TL-WN722N(AR9271) and rtl8192cu , both can not tx FCS error pkts. I will try with Inter AX200 at first.