Analizzare con MVT
Questa pagina è per analisti, helpline e supporto tecnico che hanno ricevuto un export di Bugbane e vogliono analizzarlo con MVT (Mobile Verification Toolkit).
La versione breve: un export di Bugbane è un’acquisizione in formato AndroidQF, cifrata con age. Decifrala, e mvt-android check-androidqf la consuma direttamente.
Cosa dovresti aver ricevuto #
- L’archivio, con un nome come
acquisition-1a2b3c4d.zip.age. - La passphrase (32 caratteri alfanumerici), che dovrebbe essere arrivata attraverso un canale diverso.
1. Installa gli strumenti #
# age: dal tuo package manager, ad esempio
brew install age # macOS
apt install age # Debian/Ubuntu
# MVT: pipx è il metodo raccomandato
pipx install mvt
2. Decifra l’archivio #
age --decrypt -o acquisition.zip acquisition-1a2b3c4d.zip.age
age chiede la passphrase in modo interattivo. Il risultato è un normale ZIP con il layout AndroidQF.
hashes.csv con lo SHA-256 di ogni artefatto, e un acquisition.json con UUID, timestamp e stato per modulo dell’acquisizione — utili sia per la verifica sia per la documentazione del caso.3. Procurati gli indicatori di compromissione #
Scarica gli indicatori STIX2 pubblici indicizzati dal progetto MVT:
mvt-android download-iocs
Gli indicatori scaricati si caricano automaticamente a ogni check. Puoi aggiungere file STIX2 privati o aggiuntivi con più flag --iocs, o tramite la variabile d’ambiente MVT_STIX2.
4. Esegui il check #
check-androidqf accetta direttamente lo ZIP, oppure la directory estratta:
mvt-android check-androidqf --output results/ acquisition.zip
Flag utili: --iocs FILE per indicatori extra, --list-modules per vedere cosa gira, --module NOME per un solo modulo, e --virustotal per il lookup degli hash APK (richiede MVT_VT_API_KEY).
5. Leggi i risultati #
Nella directory di output trovi:
- un
<modulo>.jsonper modulo, con tutti i record estratti; - file
<modulo>_detected.jsonsolo dove qualcosa ha trovato corrispondenza con un indicatore — parti da qui; timeline.csv, una vista cronologica su tutti i moduli;info.jsonecommand.logper l’esecuzione stessa.
Ricorda il solito avvertimento, che anche la documentazione di MVT sottolinea: gli indicatori pubblici non bastano a stabilire che un dispositivo è pulito. Nessuna rilevazione significa nessuna rilevazione — non assenza di compromissione.
Buono a sapersi #
- La chiave ADB dell’acquirente. Bugbane acquisisce tramite il Debug Wireless del dispositivo stesso, quindi la sua chiave pubblica ADB compare legittimamente sul dispositivo. L’archivio la include come
adb_host_key.pub(e dentroacquisition.json), così puoi distinguerla dalle chiavi sconosciute. acquisition.jsonriporta la versione di Bugbane nel campoandroidqf_version(comeBugbane-<versione>), più i moduli falliti o saltati — controllalo prima di concludere che un artefatto manca.- I vecchi workflow di MVT non si applicano. Le versioni recenti di MVT hanno rimosso
check-adb;check-androidqfè il percorso supportato per questo tipo di acquisizione. - Vuoi sapere cosa contiene ogni file dell’archivio? Vedi la guida agli artefatti.