- Une vulnérabilité zero-click a été découverte dans Calendar sur macOS
- Un attaquant peut ajouter ou supprimer des fichiers arbitraires dans l’environnement sandbox de Calendar
- Combinée à l’exécution de code malveillant et au contournement des protections de sécurité, elle peut compromettre les données sensibles de l’utilisateur dans iCloud Photos
- Apple a corrigé l’ensemble des vulnérabilités entre octobre 2022 et septembre 2023
Détails des vulnérabilités
Étape 1 : vulnérabilité d’écriture et de suppression de fichiers arbitraires dans Calendar (CVE-2022-46723)
- Un attaquant peut inclure une pièce jointe dans une invitation de calendrier malveillante
- Le nom de fichier de la pièce jointe n’est pas correctement validé
- En définissant un chemin arbitraire dans la section ATTACH, il est possible de réaliser une attaque de traversal de répertoires
- Exemple :
FILENAME=../../../PoC.txt
- Le fichier est ajouté à
~/Library/Calendar/PoC.txt
- Si le fichier existe déjà, il est enregistré sous
PoC.txt-2
- Si l’événement ou la pièce jointe envoyés par l’attaquant sont supprimés, le fichier d’origine (
PoC.txt) est supprimé
- Cette vulnérabilité peut être utilisée pour supprimer des fichiers existants dans le système de fichiers
- La vulnérabilité est présente sur macOS Montrey 12.5. macOS 13.0 beta4 n’est pas vulnérable
Étape 2 : obtention d’une exécution de code à distance (RCE) via la vulnérabilité d’écriture de fichiers arbitraires
- Découverte juste avant la sortie de macOS Ventura
- En exploitant le processus de mise à niveau de version de macOS, il est possible d’obtenir une exécution de code à distance via la fonction Open File de Calendar
- Plusieurs fichiers sont infectés pour déclencher l’exploit RCE
Fichier injecté #1 : 000Hacked-$RANDOM.calendar
- Contient des données de calendrier ressemblant à des données suggérées par Siri
- Inclut des événements récurrents et des fonctionnalités de rappel
Fichier injecté #2 : fichier CalendarTruthFileMigrationInProgress
- Met à niveau et fusionne les calendriers existants vers une nouvelle base de données
Fichier injecté #3 : CalPoCInit.dmg
- Une alerte incluse dans l’événement de calendrier ouvre le fichier
CalPoCInit.dmg contient une référence pointant vers un serveur Samba externe
Fichier injecté #4 : stage1.url
- Une deuxième alerte incluse dans l’événement de calendrier ouvre le fichier
- Contient une URL pointant vers une application sur un montage Samba
Fichier injecté #5 : stage2.url
- Une troisième alerte incluse dans l’événement de calendrier ouvre le fichier
- Exécute une application malveillante sans interaction de l’utilisateur
Étape 3 : accès aux données sensibles de Photos
- En modifiant la configuration de Photos, il devient possible d’accéder aux photos stockées dans iCloud
- Le contournement des protections TCC permet d’exfiltrer des données utilisateur sensibles
Accès aux fichiers iCloud via une modification de la configuration de Photos
- L’attaquant crée un fichier de configuration définissant la System Photo Library de Photos vers un autre chemin
- Lors de l’exécution de
PhotosPoC.sh, le nouveau fichier de configuration est importé
- La configuration d’origine est sauvegardée et la nouvelle est stockée dans
/var/tmp/mypictures/
- Photos est lancé avec la nouvelle System Photo Library et la synchronisation iCloud est activée
Chaîne complète
- Il faut franchir plusieurs étapes pour surmonter tous les obstacles de sécurité de macOS
- La sandbox est contournée, puis des astuces SMB sont utilisées pour contourner les mesures d’atténuation de Gatekeeper
- Les protections TCC sont contournées, permettant l’accès à des données sensibles
Chronologie
- 2022-08-08 : signalement d’une écriture et suppression de fichiers arbitraires dans la sandbox de Calendar
- 2022-10-24 : correctif dans macOS Monterey 12.6.1 et Ventura 13
- 2022-11-14 : envoi du PoC, méthode d’exécution de code arbitraire via la vulnérabilité de Calendar
- 2022-12-04 : envoi du PoC, méthode d’accès aux photos iCloud
- 2023-02-20 : ajout du crédit CVE-2022-46723 et du CVE
- 2023-03-27 : correction du contournement de Gatekeeper dans macOS Ventura 13.3
- 2023-09-26 : correction et crédit pour la vulnérabilité Photos CVE-2023-40434
- 2023-10-09 : annonce de la bug bounty liée au contournement de Gatekeeper et à la vulnérabilité Photos
- 2023-12-21 : crédit pour le contournement de Gatekeeper CVE-2023-40433
Résumé de GN⁺
- Cet article traite d’une vulnérabilité zero-click dans Calendar sur macOS et explique comment elle peut permettre à un attaquant d’accéder aux données sensibles de l’utilisateur dans iCloud Photos
- La chaîne de vulnérabilités contourne en plusieurs étapes la sandbox, ainsi que les protections Gatekeeper et TCC, pour permettre l’exécution de code à distance et l’accès à des données sensibles
- Cet article fournit des informations importantes pour les chercheurs en sécurité et les utilisateurs de macOS, tout en soulignant qu’Apple a corrigé ces vulnérabilités
- Parmi les autres projets offrant des fonctionnalités similaires, on trouve d’autres applications de calendrier comme Google Calendar
1 commentaires
Commentaires Hacker News
Si un grand groupe technologique ne verse pas une prime, il y a probablement une bonne raison
Je n’utilise pas iCloud Photo Library, mais il est étrange que si l’emplacement de la photothèque change, le nouvel emplacement ne soit pas protégé
~/Pictures, l’accès est refusé/tmp, l’accès est autoriséIl existe une autre façon de manipuler le drapeau de quarantaine
La première étape à elle seule constitue une vulnérabilité grave
Un attaquant peut voler les photos iCloud d’une victime via une invitation de calendrier malveillante
Si le fichier désigné par l’attaquant existe déjà, il est enregistré sous "PoC.txt-2"
Le statut de la prime ne me plaît pas
Je ressens toujours une certaine excitation lorsqu’une vulnérabilité de sécurité n’est pas liée à la sûreté mémoire
Je me demande si le mode Lockdown empêche cela
C’est un exploit assez ancien