MVT (Mobile Verification Toolkit) est un outil d'analyse forensique publié par le Security Lab d'Amnesty International, sorti en juillet 2021 avec les révélations du Projet Pegasus. Il examine une sauvegarde d'iPhone et compare ce qu'elle contient à une liste d'indicateurs de compromission connus (IOC).
16.1 À qui cela s'adresse
Les logiciels espions mercenaires comme Pegasus ou Predator coûtent très cher et visent des cibles précises. Pour la très grande majorité des gens, le risque réel reste le mot de passe réutilisé et le phishing, traités dans les chapitres précédents.
Cette vérification a du sens si :
- vous êtes journaliste, avocat, militant, élu ou chercheur sur des sujets sensibles
- vous avez reçu une notification de menace d'Apple
- vous avez une raison concrète de penser que votre téléphone est surveillé
Si vous voulez simplement vous rassurer, la checklist du chapitre 14 vous apportera bien plus.
16.2 Ce qu'il vous faut
- un Mac ou un PC sous Linux (MVT ne fonctionne pas nativement sous Windows, il faut passer par WSL)
- Python 3.6 ou plus récent
- un câble pour brancher l'iPhone
- de la place disque pour la sauvegarde, puis pour sa version déchiffrée
16.3 Installer MVT
Sur macOS, avec Homebrew :
brew install python3 pipx libusb sqlite3
pipx ensurepath
pipx install mvt
Fermez puis rouvrez le terminal après « pipx ensurepath », sinon la commande mvt-ios ne sera pas trouvée.
16.4 Faire une sauvegarde chiffrée
Le chiffrement de la sauvegarde n'est pas optionnel : sans lui, iOS n'inclut pas certaines données (historiques, journaux) sur lesquelles repose l'analyse.
- Branchez l'iPhone au Mac et ouvrez le Finder.
- Sélectionnez l'iPhone dans la barre latérale, onglet Général.
- Choisissez « Sauvegarder toutes les données de votre iPhone sur ce Mac ».
- Cochez « Chiffrer la sauvegarde locale » et définissez un mot de passe.
- Cliquez sur « Sauvegarder maintenant » et attendez la fin.
Notez ce mot de passe dans votre gestionnaire. Sans lui, la sauvegarde est inexploitable, y compris par vous.
La sauvegarde se trouve ensuite dans un dossier nommé d'après l'identifiant de l'appareil :
~/Library/Application Support/MobileSync/Backup/<UDID>
16.5 Déchiffrer la sauvegarde
MVT_IOS_BACKUP_PASSWORD="votre-mot-de-passe" \
mvt-ios decrypt-backup \
-d ~/mvt/decrypted \
"~/Library/Application Support/MobileSync/Backup/<UDID>"
La copie déchiffrée contient tout ce que contient votre téléphone. Gardez-la sur un disque chiffré et supprimez-la une fois l'analyse terminée.
16.6 Récupérer les indicateurs publics
MVT ne détecte que ce qu'on lui donne à chercher. Cette commande télécharge la liste publique maintenue par le projet :
mvt-ios download-iocs
16.7 Lancer l'analyse
mvt-ios check-backup --output ~/mvt/results ~/mvt/decrypted
MVT extrait les enregistrements de la sauvegarde vers ~/mvt/results au format JSON, et les compare aux indicateurs.
16.8 Lire le résultat
- aucun fichier suffixé _detected : rien de connu n'a été trouvé
- un fichier suffixé _detected : un élément correspond à un indicateur connu, et mérite un avis compétent
Une correspondance n'est pas une preuve à elle seule, et une absence de correspondance n'est pas un certificat de propreté. MVT n'implémente qu'une partie de la norme STIX2 et ne connaît que les campagnes déjà documentées publiquement.
16.9 Si quelque chose est détecté
- Ne réinitialisez pas le téléphone tout de suite : vous détruiriez les traces.
- Conservez la sauvegarde et le dossier de résultats.
- Contactez la Digital Security Helpline d'Access Now, gratuite et disponible 24h/24.
- Activez le mode Isolement d'Apple, conçu contre ce type d'attaques.