Impact
The vulnerability is an unsafe deserialization flaw that allows a maliciously crafted .npz dataset containing an object‑typed array to trigger pickle code execution when ESPectre’s analysis tools load the file. This results in arbitrary code running with the privileges of the maintainer or developer, providing full control over the system. The weakness is a classic unsafe deserialization (CWE‑502).
Affected Systems
ESPectre, the Wi‑Fi motion sensing platform for ESP32 developed by Francesco Pace, is affected. All versions released before 3.0.0‑rc1 that use the tools/6_optimize_filter_params.py, tools/1_analyze_raw_data.py, and tools/10_train_ml_model.py and load NPZ datasets via micro‑espectre/tools/csi_utils.py are vulnerable. The issue is fixed starting with release 3.0.0‑rc1.
Risk and Exploitability
The CVSS score of 7.8 indicates moderate to high severity. No EPSS score is available, and the vulnerability is not listed in CISA’s KEV catalog. The attack vector is inferred to be local; a collaborator or developer who can provide a malicious .npz file or a pull‑request author who can inject the payload will trigger execution when the analysis tool reads the field. Because the flaw relies on pickle deserialization in trusted code, exploitation requires that the attacker can influence the dataset loaded by the maintainer.
OpenCVE Enrichment