This post continues the series of articles about Apple companion devices. If you haven’t seen them, you may want to read Apple TV and Apple Watch Forensics 01: Acquisition first. If you are into Apple Watch forensics, have a look at Apple Watch Forensics 02: Analysis as well. Today we’ll have a look at what’s inside of the Apple TV.
A recent market analysis shows that Apple has sold more than 13 million Apple TV devices worldwide since 2016. Since 2007, Apple manufactured 6 different Apple TV models. Like any other Apple device, the model can be easily identified by checking the label on the bottom of the device.
The first-generation Apple TV (model A1218) contains a regular hard drive that can be extracted and imaged with a traditional approach. The operating system is a modified version of Mac OS X 10.4 (Tiger). A detailed explanation on how to approach this kind of devices was introduced at DEFCON 2009 by Kevin Estis and Randy Robbins (the presentation is available here while the video is available here).
The Apple TV from second (model A1378) to fourth (A1625) generations have an internal NAND storage varying from 8 GB (A1378 – A1427 – A1469) to 32 or 64 GB (A1625). These models also feature a USB port connection (micro USB or USB-C). The availability of a USB port allows connecting the device to a PC/Mac. Forensic experts can use the port for data extraction. Apple removed USB connectivity in the latest, fifth generation Apple TV (Apple TV 4K, model A1842), making it more difficult to connect and extract data.
The good news from a forensic perspective is that these kind of devices cannot be protected with a passcode, unlike the iPhone, iPad or Apple Watch. The bad news is that the backup service available on the iPhone and on the iPad is missing on the Apple TV. The USB port is meant to be a “Service and Support” port. Its intended purpose is to restore or update the operating system through the computer. By simply connecting the Apple TV to a computer with iTunes installed, one can access information such as the serial number and the UDID of the device. As described in previous blog post on Apple TV Acquisition, three methods of acquisition are always available:
For a detailed explanation on how to analyze these files you can read my previous blog post on Apple Watch Analysis: the structure of databases (MediaLibrary.sqlitedb and Photos.sqlite) and Sysdiagnose logs is coherent among those devices. Moreover, real-time syslog can be extracted from any Apple TV model by using e.g. the iBackup Bot tool , or with Apple XCode.
The Apple TV 4K (model A1842) does not feature a USB port, so the direct connection is not possible. You may connect through Wi-Fi with a Mac. The generation of sysdiagnose data is also available on the Apple TV 4K; it can be synced with macOS through XCode. Although not completely documented by Apple, some information is available here on the Apple Forum Developer website (restricted access).
As described in the Apple TV acquisition article, jailbreaking the device is an option available for different versions of tvOS, the Apple TV operating system. You can find here the detailed list of available jailbreaks for the Apple TV. Once you have a jailbroken device, you have access to the file system. Below is the list of some of the most interesting information you can find.
Path: /private/var/DB/DHCPCLIENT/LEASES/
Path: /private/var/preferences/SystemConfiguration/com.apple.wifi.plist
Path: /private/var/mobile/Library/Accounts/Accounts3.sqlite
Path: /private/var/mobile/Library/com.apple.HeadBoard/
This folder lists the app order on the Head Board (AppOrder.plist) and contains the associated Icons Cache (subfolder com.apple.TVIconsCache)
The HeadBoard cache is stored in /private/var/mobile/Library/Caches/com.apple.HeadBoard
Path: /private/var/mobile/Library/TVWallpaper/
The folder contains Apple TV wallpapers
Other relevant files and folders you can find are:
Third-party applications can be installed on the Apple TV from the App Store.
Bundles of installed applications are located in /private/var/Containers/Bundle/Application
Third-party app data is stored in /private/var/mobile/Containers/Data/Application
Every application has its own folder for storing settings and data. In the following picture you can see the example of the “Facebook TV” application.
The one thing I’d like to shed some more light on is iCloud Photos. It’s far more important than it may seem. While accessing iCloud Photos from the computer requires the user’s Apple ID and password (and possibly access to the second authentication factor), the Apple TV may have the Thumbnails stored right on the box. This happens automatically if the user is syncing photos with iCloud.
Interestingly, the thumbnails synced to the Apple TV still contain full EXIF information. It is the same metadata that’s stored in full-size photos. The EXIF may (and usually does) contain location information either directly in the photo or in the Photos.sqlite database.
Full images are there if and only if the user opened the image on the Apple TV (that would mean that the image was downloaded).
In addition to iCloud Photos, Elcomsoft iOS Forensic Toolkit can extract the keychain from jailbroken Apple TV devices. Apple TV keychain is often overlooked. It contains far less information compared to iOS keychain due to the fact that Apple TV does not sync iCloud Keychain (the iCloud Keychain requires the device to have a passcode to sync, which Apple TV devices lack). However, Apple TV keychain still contains Wi-Fi passwords and stores an authentication token to the user’s iCloud account. Extracting that token allows experts accessing non-2FA iCloud accounts with very few restrictions (with Elcomsoft Phone Breaker)..
I would like to thank Claudia Meda who helped me a lot with the Apple TV research last year. She regularly tweets about forensic news and events.
If you can extract the file system of an Apple TV 4 or 4K, you gain access to a plethora of data. Quite a few bits and pieces have forensic significance. The analysis of the Apple TV can provide the examiner access to three different sources of information:
We consider the Apple TV a “low hanging fruit” as (unlike the iPhone) the device cannot be protected with a passcode. Connecting the latest model (Apple TV 4K) is more difficult due to the lack of a USB port; one must use Xcode to establish a wireless connection.
Extract critical evidence from Apple iOS devices in real time. Gain access to phone secrets including passwords and encryption keys, and decrypt the file system image with or without the original passcode. Physical and logical acquisition options for all 64-bit devices running all versions of iOS.
Elcomsoft iOS Forensic Toolkit official web page & downloads »