A first look at iOS 18 forensics
This has been a tough year for me: my mom passed away in June, and I'm still slowly recovering from the hard blow. It's time to start again doing what I love: researching and sharing!
It's early September and like every year, that moment is approaching when everyone who deals with mobile forensics starts to tremble at the thought of the arrival of a new version of iOS!
First the good news: the basic and traditional techniques for logical acquisition (or Advanced Logical, if you want to call it that) still work on iOS 18!
A new cross-platform open-source tool has recently become available that enables this type of extraction from various types of Apple devices (iPhone, iPad, Apple TV, Apple Watch).
The UFADE tool https://github.com/prosch88/UFADE), developed and maintained by Christian Peter, fully supports iOS 18 and was used to perform the tests described in this article.
The tests were performed on an iPhone 12 with iOS 18 beta operating system, which was reinstalled after a reset and without restoring from a previous backup. After configuration, an existing iCloud account was logged in, with subsequent synchronization of the existing data (e.g. photos, contacts, etc.).
After installation, the device was only used with native applications, and various acquisitions were performed:
- iTunes backup
- AFC
- Crash logs and Sysdiagnose
Basic device information and configuration
- Device Model Number and Device Name
- /private/var/preferences/SystemConfiguration/preferences.plist
- Serial Number
- /private/var/root/Library/Caches/locationd/consolidated.db
- Last Known ICCID
- /private/var/wireless/Library/Preferences/com.apple.commcenter.plist
- SIM Card information
- /private/var/wireless/Library/Databases/CellularUsage.db
- /private/var/wireless/Library/Preferences/com.apple.commcenter.data.plist
- Control Center
- /private/var/wireless/Library/ControlCenter/ModuleConfiguration.plist
- Timezone
- /private/var/mobile/Library/Preferences/com.apple.AppStore.plist
- Location Services setting
- /private/var/mobile/Library/Preferences/com.apple.locationd.plist
- Find my iPhone settings
- /private/var/mobile/Library/Preferences/com.apple.icloud.findmydeviced.FMIPAccounts.plist
- Backup information
- /private/var/mobile/Library/Preferences/com.apple.MobileBackup.plist
- /private/var/mobile/Library/Preferences/com.apple.mobile.ldbackup.plist
Native Apps
- Accounts
- /private/var/mobile/Library/Accounts/Accounts3.sqlite
- Address Book
- /private/var/mobile/Library/AddressBook/AddressBook.sqlitedb
- /private/var/mobile/Library/AddressBook/AddressBookImages.sqlitedb
- Calendar
- /private/var/mobile/Library/Calendar/Calendar.sqlitedb
- /private/var/mobile/Library/Calendar/Extras.db
- Call History (Phone and FaceTime)
- /private/var/mobile/Library/CallHistoryDB/CallHistory.storedata
- Files
- /private/var/mobile/Library/Application Support/CloudDocs/session/db/client.db
- /private/var/mobile/Library/Application Support/CloudDocs/session/db/server.db
- Maps
- /private/var/mobile/Containers/Shared/AppGroup/<GUID>/Library/Maps/MapsSync_0.0.1
- Media (Pictures/Videos)
- /private/var/mobile/Media/DCIM/*
- /private/var/mobile/Media/PhotoData/Photos.sqlite
- /private/var/mobile/Media/PhotoData/CPL/*
- /private/var/mobile/Media/PhotoData/Mutations/*
- /private/var/mobile/Media/PhotoData/Thumbnails/*
- Notes
- /private/var/mobile/Library/Notes/notes.sqlite
- Safari
- /private/var/mobile/Library/Safari/Bookmarks.db
- /private/var/mobile/Library/Safari/History.db
- /private/var/mobile/Library/Safari/SafariTabs.db
- SMS/MMS/iMessage
- /private/var/mobile/Library/SMS/sms.db
- /private/var/mobile/Library/Preferences/com.apple.MobileSMS.plist
- Shortcuts
- /private/var/mobile/Library/Shortcuts/Shortcuts.sqlite
- Voicemail
- /private/var/mobile/Library/Voicemail/voicemail.db
- Weather
- /private/var/mobile/Containers/Shared/AppGroup/<GUID>/Library/Preferences/group.com.apple.weather.plist
Networks and connected devices
- Bluetooth
- /private/var/containers/Shared/SystemGroup/<GUID>/Library/Database/com.apple.MobileBluetooth.ledevices.paired.db
- /private/var/containers/Shared/SystemGroup/<GUID>/Library/Database/com.apple.MobileBluetooth.ledevices.other.db
- Wi-Fi Networks
- /private/var/preferences/com.apple.wifi.known-networks.plist
- /private/var/preferences/SystemConfiguration/com.apple.wifi-private-mac-networks.plist
- Home Kit (IoT Devices)
- /private/var/mobile/homed/datastore3.sqlite
Application usage
- Application State (Installed applications)
- /private/var/mobile/FrontBoard/applicationState.db
- iOS Screen Layout
- /private/var/mobile/Library/SpringBoard/IconState.plist
- TCC (Transparency, Consent and Control)
- /private/var/mobile/Library/TCC/TCC.db
- Data Usage
- /private/var/wireless/Library/Databases/DataUsage.sqlite
Pattern of life
- Health
- /private/var/mobile/Library/Health/healthdb.sqlite
- /private/var/mobile/Library/Health/healthdb_secure.sqlite
- Keyboard Usage Stats
- /private/var/mobile/Library/Keyboard/user_model_database.sqlite
- InteractionC
- /private/var/mobile/Library/CoreDuet/People/interactionC.db
- Personalization Portrait
- /private/var/mobile/Library/PersonalizationPortrait/PPSQLDatabase.db
- Recents
- /private/var/mobile/Library/Recents/Recents
- Mobile Installation Logs (useful to track app installation and uninstall)
- /private/var/installd/Libary/Logs/MobileInstallation/
- Mobile Activation Logs (useful to track device power on)
- /private/var/mobile/Library/Logs/mobileactivationd/*
- Lockdownd Logs (useful to track passcode changes)
- /private/var/logs/lockdownd.log
- Shutdown Logs (useful to track device power off/shutdown)
- /private/var/db/diagnostics/shutdown.log
- Logd Log (useful to track device power off/shutdown)
- /private/var/db/diagnostics/logd.N.log
- PowerLog.PLSQL (partial)
- \private\var\containers\Shared\SystemGroup\<GUID>\Library\BatteryLife\CurrentPowerlog.PLSQL
- Wi-Fi Manager Logs
- Emails
- Location-related artifacts
- Cached locations (Cache.sqlite)
- Wi-Fi/Cell towers locations (cache_encryptedB.db)
- Motion History (cache_encryptedC.db)
- Significant Location (local.sqlite/cloud-V2.sqlite)
- FindMy Devices
- Device usage-related artifacts
- Notifications (DuetExpertCenter folder)
- CurrentPowerLog.PLSQL (complete)
- Biome
- knowledgec.db
- Network Usage (netusage.sqlite)
- Aggregated Dictionary (ADDataStore.sqlitedb)
- Screen Time (RMAdminStore-Local.sqlite / RMAdminStore-Cloud.sqlite)
Comments
Post a Comment