
Recherche de preuves de l'exploit CVE-2021-30860 (FORCEDENTRY)
CVE-2021-30860 (FORCEDENTRY) est une vulnérabilité connue dans MacOS, iOS et WatchOS. Elle permet l'exécution de code arbitraire en envoyant à un appareil victime un "PDF malveillamment conçu".
Cette vulnérabilité a été corrigée par Apple le 13 septembre 2021 avec les versions suivantes :
Cependant, elle a été exploitée dans la nature depuis février 2021 ou avant.
Détecter des preuves d'une exploitation passée sur les ordinateurs MacOS ou les iPhones (en analysant une sauvegarde locale sur un Mac). Cela n'est pas destiné à se défendre contre une future attaque ou à annuler les effets d'une attaque antérieure. Cela n'est pas destiné à détecter une exploitation passée sur les Apple Watches ou les iPads.
Deux méthodes distinctes sont utilisées ici pour détecter les preuves d'une exploitation antérieure.
Le vecteur d'attaque bien connu utilisant cette vulnérabilité consiste à envoyer des fichiers PDF ou PSD malveillants (faussement étiquetés comme des GIF) par SMS. Les scripts ici analysent les pièces jointes des messages reçus d'une sauvegarde Mac ou iPhone pour les fichiers « .gif » dont la signature de fichier ne correspond pas à celle d'un GIF. Il convient de noter que la réception des fichiers ne signifie pas nécessairement qu'un appareil a été compromis, surtout si le(s) fichier(s) ont été reçus après l'installation de la mise à jour de sécurité sur l'appareil.
Les attaques menées par le groupe NSO utilisant cette vulnérabilité comportaient au moins un bug dans leur phase de nettoyage. Une preuve est laissée sur un iPhone sous forme d'une incohérence dans une base de données SQL particulière. Citizenlab a démontré une requête SQL simple sur cette base de données qui peut détecter l'incohérence pertinente.
python3 cve_scan.py pour analyser avec les options par défaut, ou python3 cve_scan.py -h pour obtenir de l'aide.python3 cve_scan.py --mode macpython3 cve_scan.py --mode iphonepython3 cve_scan.py --mode iphone --method attachmentspython3 cve_scan.py --mode iphone --method datausagedbpython3 cve_scan.py --mode iphone --backups newest