Plist Forensics
forensicsDéfinition
Les fichiers Plist (Property List) sont des fichiers de configuration et de données utilisés par Apple dans macOS et iOS pour stocker des préférences, paramètres d'applications, et diverses données système. Ils constituent une source forensique majeure sur les systèmes Apple, équivalente en importance aux fichiers de registre sur Windows. Les plist existent en deux formats principaux. Le format XML est lisible directement dans un éditeur de texte et représente les données en balises plist. Le format binaire (bplist) est plus compact et plus courant en pratique — les applications et le système l'utilisent pour des raisons de performance. Des outils comme plistutil (Linux), plutil (macOS/iOS), ou des visualiseurs dédiés convertissent les bplist binaires en XML lisible. Les fichiers plist forensiquement significatifs sur macOS incluent les préférences utilisateur (~Library/Preferences/com.apple.*.plist), les métadonnées des applications récemment utilisées, les caches de bureau (Dock.plist), l'historique de téléchargements (Downloads.plist), les applications de démarrage automatique (~Library/LaunchAgents/), les caches de localisation, et les métadonnées des services cloud (iCloud, Dropbox). Les agents de lancement (LaunchAgents et LaunchDaemons via des fichiers plist) sont les vecteurs de persistance macOS équivalents aux clés Run du registre Windows. Sur iOS, les plist constituent la majorité des données forensiques extractibles : preferences.plist pour les préférences d'applications, consolidated.db historiquement pour la géolocalisation, com.apple.wifi.plist pour les réseaux WiFi connus, et de nombreuses bases de configuration système. L'outil iLEAPP (iOS Logs, Events and Plists Parser) parse automatiquement des centaines de fichiers plist forensiquement pertinents depuis une extraction iOS. La corrélation entre les plist et les bases SQLite (utilisées par les mêmes applications) fournit une vision complète de l'activité sur les appareils Apple. Par exemple, com.apple.springboard.plist complète l'analyse de SpringBoard.db pour reconstituer l'utilisation des applications.
Fonctionnement
Les plist stockent des données en types XML ou binaires : string, integer, real, boolean, date, data (binaire base64), array (liste), dict (dictionnaire clé/valeur). Le format binaire commence par 'bplist00'. La conversion : plutil -convert xml1 file.plist (macOS), plistutil -i file.plist (Linux), plistlib Python (programmation).
Application DFIR
Sur macOS compromis : examiner ~/Library/LaunchAgents/ et /Library/LaunchAgents/ pour les agents de persistance malveillants, ~/Library/Preferences/ pour les préférences d'applications suspectes, et /Library/LaunchDaemons/ pour les démons système non légitimes. Sur iOS : utiliser iLEAPP ou Oxygen Forensics pour parser automatiquement les plist forensiquement pertinents.
Outils
macOS : plutil (natif, conversion et vérification), PlistEdit Pro (GUI, payant), BBEdit/TextMate (XML plist). Linux : plistutil, libplist. Python : plistlib (module natif). Forensics : iLEAPP (iOS plist parsing), ALEAPP (Android equivalent), Autopsy (plugin macOS/iOS), Magnet AXIOM (plist support). Analyse LaunchAgents : KnockKnock (macOS), BlockBlock (surveillance temps réel).
Articles liés
Expert en cybersécurité offensive et intelligence artificielle. Pentest, audit et développement IA sur-mesure.
Services
- Audit Infrastructure
- Audit Kubernetes
- Audit Microsoft 365
- Audit Sécurité Réseau
- Analyse de Risques
- Audit Active Directory
- Audit Application Web
- Audit Cloud (AWS/Azure/GCP)
- Audit Messagerie
- Audit API (OWASP Top 10)
- Audit DevSecOps & CI/CD
- Audit Code Source (SAST)
- Audit Postes de Travail
- Audit Sauvegarde & Résilience
- Audit OT/SCADA (IEC 62443)
- Développement IA
- Formations
Ressources
Projets & Outils
© 2026 Ayi NEDJIMI Consultants. Tous droits réservés.
Un projet cybersécurité ?
Expert dispo · Réponse 24h