Behind the scenes of iOS and Mac Security

Black Hat USA 2019

Presented by: Ivan Krstić
Date: Thursday August 08, 2019
Time: 12:10 - 13:00
Location: South Pacific

With over 1.4 billion active devices and in-depth security protections spanning every layer from silicon to software, Apple works to advance the state of the art in user security with every new product and software release. We will discuss three iOS and Mac security topics in unprecedented technical detail, offering the first public discussion of several key technologies new to iOS 13 and the Mac.

Code integrity enforcement has long been a critical part of the iOS security architecture. Starting with iPhone 7, we began to fortify core pieces of this security mechanism with new features built directly into Apple silicon. We will delve into the history of code and memory integrity technologies in the iOS kernel and userland, culminating in Pointer Authentication Codes (PAC) in the Apple A12 Bionic and S4 chips. PAC prohibits modification of function pointers, return addresses and certain data, preventing traditional exploitation of memory corruption bugs. We will take a close look at how PAC is implemented, including improvements in iOS 13. We will also discuss previously-undisclosed VM permission and page protection technologies that are part of our overall iOS code integrity architecture.

The T2 Security Chip brought powerful secure boot capabilities to the Mac. Comprehensively securing the boot process required protections against sophisticated direct memory access (DMA) attacks at every point, even in the presence of arbitrary Option ROM firmware. We will walk through the boot sequence of a Mac with the T2 Security Chip and explain key attacks and defenses at each step, including two industry-first firmware security technologies that have not been publicly discussed before.

The Find My feature in iOS 13 and macOS Catalina enables users to receive help from other nearby Apple devices in finding their lost Macs, while rigorously protecting the privacy of all participants. We will discuss our efficient elliptic curve key diversification system that derives short non-linkable public keys from a user’s keypair, and allows users to find their offline devices without divulging sensitive information to Apple.

Ivan Krstić

Ivan Krstić is head of Apple Security Engineering and Architecture, the group responsible for end-to-end security of all Apple products. He has led the design and implementation of key security mechanisms across Apple platforms.


KhanFu - Mobile schedules for INFOSEC conferences.
Mobile interface | Alternate Formats