Controllare Flipper Zero con la voce e le reti neurali con Vesper
Recentemente mi sono imbattuto nel repository V3SP3R. L'autore ha deciso di combinare due hobby popolari degli ultimi anni: il gadget tascabile Flipper Zero e i modelli linguistici. Chiunque abbia provato a scorrere infinite liste sul piccolo schermo del "flipper" usando il joystick ricorda questa esperienza specifica. Delegare le attività di routine a comandi testuali o vocali sembra un passo completamente naturale.
Cos'è Vesper
Vesper è un'app Android mobile scritta in Kotlin con il toolkit UI Jetpack Compose. La configurazione è semplice. Il telefono si connette a Flipper Zero tramite Bluetooth Low Energy e alle reti neurali attraverso il gateway API unificato OpenRouter.
Di conseguenza, invii una query di testo naturale o parli nel microfono. Frasi come "mostra i dump SubGHz recenti", "crea uno script BadUSB" o "verifica il livello della batteria" vengono analizzate dalla rete neurale in funzioni componenti. Quindi l'app invia i comandi RPC necessari allo stesso Flipper e visualizza il risultato nella chat.
Funzionalità Principali del Progetto
Controllo Vocale e Multimodale
L'app può accettare più di semplici messaggi di testo o audio. Se invii una foto di un dispositivo o una targhetta con dati tecnici, il modello tenterà di determinare la frequenza o il protocollo. Inoltre, il repository include un bridge Node.js per collegare gli occhiali smart Mentra. Con questi, puoi richiedere immagini direttamente dalla fotocamera integrata degli occhiali.
Laboratorio dei Segnali e Generazione di Payload
Il modulo Alchemy Lab contiene un editor visivo di segnali a radio frequenza. Puoi combinare forme d'onda ed esportare immediatamente il file pronto .sub nella scheda SD del dispositivo. Il modulo Payload Lab gestisce la preparazione di script Rubber Ducky/BadUSB, telecomandi a infrarossi e tag NFC.
Sistema di Segmentazione del Rischio
Concedere a una rete neurale l'accesso completo al filesystem di un dispositivo di un hacker è rischioso. Un'allucinazione del modello potrebbe portare all'eliminazione di dump necessari. Per prevenire questo, l'autore ha implementato quattro livelli di accesso:
- Le operazioni di lettura sicure vengono eseguite automaticamente.
- Le modifiche ai file mostrano la differenza prima e dopo la scrittura.
- La trasmissione radio o l'eliminazione richiedono conferma.
- Le directory di sistema del firmware sono bloccate per impostazione predefinita.
Ogni azione viene salvata in un log di audit locale. Può essere filtrato per tipo o esportato per l'analisi.
Download di Software da FapHub e GitHub
L'app ha un catalogo FapHub integrato. Puoi trovare le utility di cui hai bisogno e installarle su Flipper con un clic. La ricerca delle risorse GitHub funziona in modo simile: l'app trova i file compatibili e li scarica direttamente nella scheda di memoria.
Dettagli Tecnici
A livello architetturale, il codice è suddiviso in tre livelli standard:
- UI Layer è costruito su Jetpack Compose con dependency injection tramite Hilt.
- Domain Layer contiene l'orchestratore VesperAgent, il gestore delle chiamate di strumenti e il modulo di valutazione del rischio RiskAssessor.
- Data Layer gestisce la connessione Bluetooth tramite FlipperBleService, salva la cronologia in Room e mantiene le impostazioni in Encrypted DataStore.
Quando si lavora con gli LLM, sorge un problema comune quando il modello restituisce JSON corrotto nelle chiamate di funzione (Tool Calling). Vesper ha un modulo di correzione della sintassi integrato che ripristina la struttura della risposta prima di passare il comando per l'esecuzione.
Per i modelli, l'autore consiglia di utilizzare Nous Research Hermes 4 o Claude Sonnet 4. Gestiscono bene le chiamate di funzioni esterne. Per attività di lettura semplici, Claude Haiku 4 è sufficiente, e per l'analisi di segnali complessi — Claude Opus 4.6.
Come Avviare l'App
È possibile che non ci siano file APK precompilati nella sezione release, quindi dovrai compilare il progetto tu stesso.
Per la compilazione sono necessari JDK 17 e un sistema Android SDK installato. Clona il repository ed esegui la build:
git clone https://github.com/elder-plinius/V3SP3R.git
cd V3SP3R
./gradlew assembleDebug
Il file pronto apparirà in app/build/outputs/apk/debug/app-debug.apk.
Tre cose sono necessarie per il funzionamento dell'app:
- Uno smartphone con Android 8.0 o superiore.
- Bluetooth abilitato su Flipper Zero.
- Un account OpenRouter con un saldo di un paio di dollari.
Dopo l'avvio, concedi i permessi per Bluetooth e l'accesso alla posizione (questo è un requisito Android per la scansione BLE), inserisci la chiave API nelle impostazioni e connettiti al "flipper" nella scheda Dispositivo.
Riepilogo
Vesper dimostra un caso d'uso pratico per gli agenti LLM nel controllo dell'hardware fisico. Il progetto non è privo di inconvenienti: hai ancora bisogno di una chiave API di terze parti e la compilazione dell'app dal codice sorgente richiede competenze minime nell'SDK Android.
Tuttavia, per i ricercatori di sicurezza e gli appassionati di microelettronica, questa è un'ottima utility che elimina la navigazione nei menu e accelera i test di routine.
Progetti correlati