>_ DevTrendsit

Lingua

Home

Linguaggi

Sezioni

Frontend Backend Mobile DevOps AI / ML GameDev Blockchain Embedded Sicurezza
C

Trasformare una economica scheda ESP32 in un Flipper Zero

Flipper Zero rimane uno dei gadget più ambiti per geek, laboratori di ricerca e appassionati di protocolli wireless. Tuttavia, non tutti sono disposti a spendere oltre 20.000 rubli. Specialmente se hai bisogno del dispositivo solo per un progetto del weekend o per stress-testare il tuo router.

Lo sviluppatore Sor3nt ha affrontato la questione da un angolo diverso. Ha portato l'intero sistema operativo Flipper Zero su popolari e poco costosi microcontrollori ESP32. Il progetto si chiama Flipper-Zero-ESP32-Port e ti permette di ottenere l'interfaccia familiare, i servizi e le applicazioni su hardware che costa solo un paio di migliaia di rubli.

Board

Una parola sulla sicurezza prima di tutto

Un incidente spiacevole è recentemente accaduto nella community del progetto. Un firmware di terze parti chiamato "L15Dev" o "Bitwire" è apparso online. Questa build personalizzata conteneva un virus e una backdoor che ruba le password Wi-Fi salvate e i dump.

Se decidi di provare il progetto, esegui il flash solo attraverso il repository ufficiale dell'autore o il suo web-flasher basato su browser. Nessun binario di terze parti da canali Telegram discutibili.

Requisiti hardware

Eseguire il sistema su un controller "nudo" senza schermo non funzionerà, dato che il progetto ha bisogno di un display e di controlli. Il firmware funziona al meglio su schede di sviluppo già pronte:

  • LilyGo T-Embed CC1101 (basato su ESP32-S3). L'opzione migliore disponibile oggi. Presenta un display 320×170, un encoder, un modulo radio CC1101, connettori per un lettore NFC (PN532) e uno slot MicroSD.
  • Waveshare ESP32-C6-LCD (versioni da 1,9 e 1,47 pollici). Un'opzione più economica basata sul chip RISC-V con touchscreen.
  • Build fai-da-te usando ESP32-S3 con un display ILI9XXX e pulsanti normali.

La scheda Waveshare C6 con schermo da 1,47 pollici ha una limitazione importante. Ha solo 512 KB di RAM a bordo senza PSRAM esterno. Il sistema semplicemente non ha abbastanza RAM per attività pesanti. Può ancora scansionare punti di accesso, ma la cattura dell'handshake WPA va in crash con errore ESP_ERR_NO_MEM. Tienilo a mente prima dell'acquisto.

Interface

Quali capacità sono state portate

L'autore si è impegnato a preservare il software nativo originale, adattandolo per le periferiche ESP32.

Audit Wi-Fi e attacchi

Nel Flipper originale, il Wi-Fi è disponibile solo attraverso un modulo esterno. Qui, il canale radio del microcontrollore viene utilizzato al massimo del suo potenziale:

  • Scansione di reti, misurazione dell'intensità del segnale e visualizzazione dei dettagli di autenticazione.
  • Cattura di handshake WPA/WPA2/WPA3 e salvataggio in file PCAP.
  • Invio di pacchetti di deautenticazione (Deauther).
  • Invio di SSID falsi (Beacon Spam) con supporto per wordlist personalizzate.
  • Evil Portal per configurare punti di accesso phishing. La porta aggiunge una funzione bridge NAPT. La vittima si connette al punto di accesso falso, inserisce la sua password nella pagina di login, e il dispositivo la collega alla rete internet reale per evitare sospetti.

La modalità Mesh / Buddy è implementata in modo intelligente. Se hai un paio di economiche schede ESP32 senza custodie, puoi flasharle con firmware speciale dalla cartella buddy_firmware e collegarle alla scheda principale tramite il protocollo ESP-NOW. I moduli ausiliari funzionano come scanner autonomi: catturano passivamente gli handshake dall'etere, li salvano nella propria memoria e li trasmettono alla scheda principale quando va online.

Lavorare con radio e NFC

Con i moduli CC1101 e PN532 collegati, il dispositivo si trasforma in un classico strumento di intelligence sui segnali:

  • Sub-1 GHz: Ricezione e trasmissione sulle frequenze 433–868 MHz, salvataggio di dump raw .sub, analizzatore di spettro e generatore di attacchi brute-force con dizionario. Un bel bonus — decoder per sensori di pressione pneumatici (TPMS).
  • NFC: Lettura, scrittura e emulazione di carte, attacchi con dizionario su Mifare Classic e Ultralight, parser integrati per carte di trasporto.
  • Bluetooth: Invio di pacchetti di servizio spam (BLE Spam) per iOS, Android e Windows, emulazione AirTag (FindMy) e funzionamento come tastiera o mouse wireless (HID).
  • Porta IR: Apprendimento di segnali da telecomandi, database integrato di telecomandi universali per TV, condizionatori e altri elettrodomestici.

Inoltre, la porta include BadUSB (esecuzione di script Ducky da un'unità flash), un file manager, un motore di scripting JS e persino una porta del classico cult DOOM.

Come funziona sotto il cofano

Portare firmware scritto per un microcontrollore STM32 specifico su architetture Xtensa e RISC-V è un compito non banale. Lo sviluppatore ha adottato l'approccio di preservare l'architettura originale di Furi OS il più possibile:

  1. Sistema operativo: Furi OS gira sopra FreeRTOS. L'autore ha preservato l'intero sistema originale di thread, mutex, code di messaggi e bus eventi.
  2. Livello di astrazione hardware (HAL): Le chiamate di output STM32 sono state riscritte per i driver ESP-IDF. Ad esempio, le chiamate di rendering del display funzionano attraverso esp_lcd, la porta IR è gestita dal modulo RMT e il Bluetooth usa lo stack Bluedroid.
  3. Adattamento grafico: L'interfaccia originale di Flipper Zero è progettata per uno schermo monocromatico 128×64. Il firmware renderizza l'immagine in un frame buffer interno, poi la scala di due e la converte in RGB565 a colori per l'output sulla matrice TFT.
  4. Trucco intelligente per la memoria: In STM32, l'heap viene riempito di zeri per impostazione predefinita quando si alloca memoria attraverso malloc. In ESP32, contiene spazzatura. Per questo motivo, molte applicazioni Flipper andavano in crash con errori. Il problema è stato risolto con una semplice ridefinizione: la funzione malloc nella porta è stata hard-linkata a calloc.

C'è anche una limitazione che non è ancora stata aggirata. La porta non ha accesso al modulo crittografico hardware (Flipper Enclave). Per questo motivo, i database Keeloq crittografati per Sub-1 GHz non possono essere decrittati — non possono essere spoofati. Funziona solo l'algoritmo aperto keeloq_mfcodes_user.

Come provarlo

Compilare il firmware dal codice sorgente richiede ESP-IDF v5.4.1 installato. Per Windows, il repository ha un comodo script winbuild.py che gestisce tutta la configurazione dell'ambiente e la routine di flashing.

Ma se non vuoi compilare codice, il web flasher è l'opzione più semplice:

  1. Apri il flasher online in Chrome o Edge.
  2. Collega la scheda via USB e premi il pulsante Flash.
  3. Scarica l'archivio sdcard.zip dalle release del progetto, estrailo nella scheda SD formattata come FAT32 e inseriscila nella scheda.

Il verdetto

Sor3nt ha realizzato un progetto di ingegneria di qualità. Non è solo un tentativo di disegnare icone simili su uno schermo ESP32 — è una porta completa del sistema operativo con architettura applicativa preservata.

È una sostituzione completa per Flipper Zero? Se hai bisogno di un dispositivo pronto all'uso, indistruttibile "out of the box" in una bella custodia — probabilmente no. Ma se vuoi sperimentare con lo spettro radio, costruire un tester Wi-Fi portatile a un prezzo ragionevole, o studiare gli interni di Furi OS, la LilyGo T-Embed con questo firmware è un'ottima scelta.

Progetti correlati