Skip to content

DEF CON 34 talks are here: 354 talks, summarized and searchable.

Browse DEF CON 34

Trust me, I’m an Apple Watch

Nils Rollshausen

WirelessTalks40 minAdvancedOpen on YouTube ↗

Where

Talks
Objective by the Sea v8.0

Duration

40 min

Shows how reverse-engineered Apple Watch pairing protocols let a fake watch pull data from a paired iPhone.

Summary

The talk looks at how an Apple Watch and an iPhone establish trust when they first meet. The speaker explains the visual pairing code, which carries Bluetooth out-of-band values that authenticate an initial IKEv2 exchange using Apple's custom notify payloads. Once the tunnel exists, two proprietary channels run inside it: a proxy protocol that lets the watch reach the internet through the phone, and a message-passing protocol called alloy used by services such as health sync, with an extra encryption layer applied to health data.

Building on this analysis, the speaker reimplemented the pieces needed to pose as a watch. The setup used a small Bluetooth microcontroller driven by a Python Bluetooth stack, together with a minimal IKEv2 implementation and ESP decryption that handles Apple's implicit initialization vectors. Once paired, the phone pushed unsolicited data to the fake watch, including its local address, account email, time zone and saved Wi-Fi passwords. The watch could also trigger a remote camera capture while the phone was locked. A separate forged, unencrypted notify payload was described as a way to redirect the watch's Wi-Fi address, and the findings were disclosed to Apple.

The closing section argues that the same access can serve interoperability and research, citing an Android app that receives health data from a watch and a web-based decoder for Apple serialization formats. The takeaway is that proprietary protocols layered on standard ones can inherit weak spots, and that a trusted companion device is a high-value target for data theft.

Related talks