“Lo spionaggio potrebbe essere tollerabile se potesse essere esercitato da persone oneste.”
Charles Louis Montesquieu
Dovreste aver sentito parlare di Pegasus, lo spyware creato dagli israeliani della NSO Group e utilizzato da molte agenzie e governi per sorvegliare politici, giornalisti, attivisti civili ma anche persone comuni.
Le indagini sull’inchiesta portata avanti dal Guardian e da altri gruppi giornalistici come Forbidden Stories, hanno rivelato un elenco di oltre 50.000 utenze telefoniche attenzionate da questo spyware, che sfruttava alcune falle dei sistemi operativi Android e iPhone per intercettare posizione gps, SMS, cronologia web, chat, video, foto, documenti e contatti. Oltre a essere in grado di attivare microfono e videocamera per registrazioni e monitoraggio ambientale, ovviamente all’insaputa dell’utente.
The Guardian, proprio in questi giorni, sta rilasciando aggiornamenti sulla vicenda con alcuni dettagli in merito alle personalità che risulterebbero essere state intercettate.
Nella lista figurerebbero personalità politiche di un certo rilievo, come Lady Uddin, “membro indipendente della Camera dei Lord”, alcune personalità coinvolte nella battaglia legale della principessa del Dubai, Haya, contro lo sceicco Mohammed bin Rashid Al Maktoum, primo ministro degli Emirati Arabi Uniti. Ma anche politici “nostrani” risulterebbero essere stati intercettati, come l’ex premier Prodi, tanto da aver attivato anche il Garante della Privacy italiano.
Risulterebbero essere stati intercettati anche attivisti nel campo dei diritti umani, come la saudita Loujain al-Hathloul; Umar Khalid, studente indiano leader dell’Unione Studenti Democratici; l’avvocato inglese Rodney Dixon, anche se il suo smartphone sembrerebbe aver “resistito” alla compromissione da parte dello spyware.
Politicamente parlando, la vicenda del Project Pegasus rischia di provocare un enorme terremoto nelle relazioni internazionali tra gli stati, soprattutto tra i sospetti mandanti e le potenziali vittime. Se volete saperne di più, segnalo la pagina The Pegasus Project media index, dell’emittente MSNBC, con l’elenco aggiornato di molte fonti stampa sull’argomento.
Le analisi forensi per evidenziare la presenza di Pegasus sono state condotte dall’Amnesty International Security Lab e altri laboratori indipendenti, che hanno pubblicamente rilasciato uno strumento open source per rilevarne la presenza (insieme ad altri potenziali spyware e malware), il Mobile Verification Toolkit (“MVT”), oltre all’elenco degli IOC (“Indicators of Compromise” – Indicatori di compromissione) relativi allo spyware Pegasus.
A prescindere dal rischio concreto di essere stati vittima del trojan Pegasus, credo che l’uso di MVT sia un ottima abitudine per mantenere pulito il nostro smartphone anche dal malware che spesso si nasconde, a nostra insaputa, in alcune applicazioni.
Semplificando, MVT è uno strumento che si collega allo smartphone Android attraverso l’interfaccia ADB (Android Debug Bridge) per recuperare tutti gli apk (Application PacKage) installati. Dopodiché procede a verificare se contengono gli IOC tipici di Pegasus. In più è possibile inviare il checksum anche sui portali VirusTotal e KooDous, per individuare l’eventuale presenza di applicazioni malevole o sospette.
Installare e usare MVT
Premettendo che la descrizione dei passaggi che seguono è relativa a distribuzione Linux Mint 20.2, procediamo installando le dipendenze minime richieste:
sudo apt install python3 python3-pip libusb-1.0-0
Procediamo poi con l’ultima versione di Android debug bridge (la versione nel repo ufficiale è obsoleta e potrebbe dare problemi) da SDK Platform Tools.
Successivamente effettuiamo un clone del repo su GitHub di MVT:
git clone https://github.com/mvt-project/mvt.git
a questo punto, installiamo MVT:
cd mvt; python3 setup.py build; sudo python3 setup.py install
(oppure potete semplicemente usare PIP, come indicato nelle istruzioni: pip3 install mvt)
Se tutto è andato a buon fine, dovremmo avere questi eseguibili:
mvt-ios
mvt-android
A questo punto, colleghiamo via USB il nostro smartphone Android e abilitiamo la modalità sviluppatore, come indicato qui: Configure on-device developer options.
Verifichiamo con adb il collegamento:
adb devices
che dovrebbe restituire l’elenco dei dispositivi Android collegati:
(nel caso a destra del dispositivo fosse scritto “unauthorized“, verificare sullo smartphone di aver autorizzato la connessione).
A questo punto “uccidiamo” il demone adb (”adb kill-server“) e avviamo la verifica dello smartphone con:
mvt-android download-apks --output /tmp --all-checks
(NB: ho scelto di usare /tmp come directory temporanea per il download degli apk. Ovviamente potete scegliere la directory che preferite)
Il download degli APK impiegherà un po’ di tempo, a seconda del numero di applicazioni che avete installate. Al termine, sarà restituita una schermata riepilogativa degli IOC individuati:
e del risultato delle analisi dei checksum su VirusTotal e KooDous:
Ho inserito di proposito nell’elenco finale una app “sospetta” di un prodotto cinese, che viene individuata come potenziale contenitore di malware: in questi casi è bene procedere a ulteriori verifiche e, nel caso non sia una app essenziale, disinstallarla nel più breve tempo possibile!