
droidground v1.0.13
Un parco giochi flessibile per le sfide CTF su Android.
DroidGround
Nelle tradizionali sfide CTF, è comune nascondere le flag in file sul sistema, richiedendo agli attaccanti di sfruttare vulnerabilità per recuperarle. Tuttavia, nel mondo Android, questo approccio non funziona bene. I file APK sono facilmente scaricabili e reversibili, quindi inserire una flag sul dispositivo la rende solitamente banale da estrarre tramite analisi statica o trucchi con l'emulatore. Questo limita severamente la capacità di creare sfide realistiche e focalizzate sul runtime.
DroidGround è progettato per risolvere questo problema.
È una piattaforma realizzata su misura per ospitare sfide di hacking mobile Android in un ambiente controllato e realistico, in cui gli attaccanti sono vincolati quanto basta per richiedere la risoluzione delle sfide nel modo previsto.
È importante notare che i partecipanti possono essere isolati all'interno dell'ambiente dell'app. La modularità dello strumento consente di stabilire se l'utente può o non può avviare una shell, leggere file arbitrari o caricare strumenti tramite sideload. Tutto può essere configurato in modo che l'unico modo per recuperare la flag sia comprendere e sfruttare l'app stessa.
📋 Indice
- 🧭 Panoramica
- ✨ Funzionalità
- 📸 Screenshot
- ⚙️ Configurazione
- 🧩 Casi d'uso
- ⚙️ Utilizzo
- 💡 Suggerimenti
- 🛠 Sviluppo
- 🤝 Contribuire
- 📚 Crediti
- 🪪 Licenza
🧭 Panoramica
DroidGround abilita un'ampia varietà di sfide Android che altrimenti sarebbero difficili da implementare nelle configurazioni CTF tradizionali. Ad esempio, in una sfida di esecuzione di codice remoto (RCE), i giocatori potrebbero ricevere un APK per l'analisi locale. Dopo aver scoperto una vulnerabilità, possono sviluppare uno script Frida ed eseguirlo tramite DroidGround sul dispositivo di destinazione reale per estrarre la flag dall'archivio interno. Altri tipi di sfida possono coinvolgere activity nascoste, intent broadcast personalizzati, sfruttamento di servizi o analisi dinamica utilizzando strumenti precaricati.
Con lo streaming del dispositivo in tempo reale, il controllo granulare delle funzionalità, l'integrazione con Frida e script di configurazione e reset personalizzabili, DroidGround consente agli organizzatori di CTF di creare sfide Android sicure, flessibili e realistiche che vanno ben oltre ciò che è tipicamente possibile.
✨ Funzionalità
DroidGround offre un ricco set di funzionalità controllate dal server.
- Schermo del dispositivo in tempo reale (tramite
scrcpy), con controllo opzionale di mouse, touch e tastiera - Ripristino dello stato della sfida
- Riavvio dell'app / Avvio activity / Avvio servizio
- Invio di intent broadcast
- Spegnimento / Riavvio del dispositivo
- Download del bugreport (bugreportz)
- Scripting Frida
- Esecuzione da libreria precaricata (modalità isolata)
- Esecuzione di script arbitrari (modalità completa)
- Browser dei file
- Accesso al terminale
- Gestione APK
- Visualizzatore Logcat
- Server di exploit (se la modalità team è abilitata)
Quasi tutte le funzionalità sono modulari e definite tramite variabili d'ambiente, garantendo un controllo preciso sull'ambito della sfida.
📸 Screenshot
![]() | ![]() |
|---|---|
| Panoramica | Avvia Activity |
![]() | ![]() |
| Modalità Frida Jailed | Modalità Frida Full |
![]() | ![]() |
| Browser File | Gestione App |
![]() | ![]() |
| Terminale | Log |
⚙️ Configurazione
Il file .env.sample nella directory principale è un buon punto di partenza. Di seguito è riportato l'elenco completo di tutte le variabili d'ambiente attualmente supportate:







