I forkant av årets Hack in the Box (HITB) -konferanse i Singapore, har sikkerhetsforsker som går på Twitter-håndtaket “xerub” klart å avsløre den fullvokste dekrypteringsnøkkelen for iPhone 5s kryptografiske koprocessor som håndterer Touch ID, kalt Secure Enclave.
Han la også ut dekrypteringsnøkkelen på nettet.
Utgivelsen av denne nøkkelen betyr ikke at telefonen ikke lenger er sikker: sensitive data som er lagret i Secure Enclave er sikret med andre nøkler som ikke har blitt kompromittert, og sannsynligvis ikke vil gjøre det. Alt sikkerhetseksperter kan gjøre er å bruke “img4lib” -biblioteket for å dekryptere og se nærmere på Apples hemmelige programvare som kjører på den kryptografiske koprocessoren, ikke lese data lagret i den.
For de som lurer på, er Secure Enclave produsert i S2-brikken som driver Apple Watch Series 1 og Series 2 og Apples A-serie chips fra A7-brikken i iPhone 5s og videre.
Jeg spekulerer bare her, men å undersøke firmware fra Secure Enclave kan gi verdifull innsikt i dens indre arbeidsmåter, som igjen kan gjøre det lettere å oppdage utnyttelser som brukes til jailbreaking. Imidlertid vil eventuelle utnyttelser som er spesielt målrettet mot Secure Enclave, være spesifikke for iPhone 5s og krever fysisk tilgang til telefonen for å laste inn tilpasset firmware..
Secure Enclave har sin egen sikre oppstartsprosess for å sikre at den separate firmwaren er verifisert og signert av Apple. For ikke å forveksle med iOS-koden som kjører på hovedprosessoren, kan Secure Enclave firmware bare endres via en personlig programvareoppdateringsprosess som er opprettet bare for den, separat fra hovedprosessoren i A-serien..
nøkkelen er fullt utvokst https://t.co/MwN4kb9SQI bruk https://t.co/I9fLo5Iglh for å dekryptere og https://t.co/og6tiJHbCu for å behandle
- ~ (@xerub) 16. august 2017
iOS-hacker Will Strafach aka Chronic var raskt ute med å påpeke at dette ikke er en stor avtale for sluttbrukere fordi Secure Enclave faktisk ikke har blitt hacket. "Dekrypteringsnøkkel i dette tilfellet er firmware, slik at flere forskere kan se på den," sa han på Twitter.
Da iPhone 5s ble utgitt i 2013, debuterte den Touch ID fingeravtrykssensor. For å lagre og beskytte sensitive data fra fingeravtrykksensoren på en sikker måte, har Apple laget en Secure Enclave-chip-in-a-chip innebygd i telefonens viktigste A7-prosessor.
Tenk på det som en egen enhet med sitt eget krypterte minne og en generator for tilfeldig tall for maskinvare. All kommunikasjon mellom Secure Enclave og hoved A7-prosessoren er isolert til en avbrutt-drevet postkasse og delte minnedatabuffere.
Prosessoren videresender bare dataene til Secure Enclave, men kan ikke lese dem. Med andre ord kan hovedprosessoren ikke direkte skaffe enhetsnøkler eller lese krypterte data som er lagret i Secure Enclave, og kan heller ikke endre funksjonene, noe som vil kreve distribusjon av en ny signert firmware opprettet spesielt for Secure Enclave.
I utgangspunktet en ARMv7a-prosessor, driver Secure Enclave en Apple-tilpasset versjon av L4-mikrokernelfamilien. Det har blitt spekulert i at dataene som er lagret sikkert i Secure Enclaves krypterte minne blir håndhevet av ARMs TrustZone og SecurCore-teknologi.
I motsetning til Secure Enclaves minne i A8 og nyere prosessorer, er den i A7s Secure Enclave ikke autentisert med den flyktige tasten (opprettet når telefonen starter opp).
Secure Enclave (mindre rektangel) er innebygd i hovedbrikken i A-serien.
Som nevnt ovenfor har Secure Enclave sin egen firmware, kjernen, drivere og tjenester som driver Touch ID og gir alle kryptografiske funksjoner til systemet.
Bortsett fra å regulere all kommunikasjon mellom Touch ID-sensoren og Secure Enclave via en sikker bane, gir den kryptografiske koprocessoren andre funksjoner og tjenester:
- Krypterer data skrevet til flashlagring
- Dekrypterer data som er lest fra filsystemet
- Tvinger opptrappende tidsforsinkelser etter at en ugyldig passord er tastet inn på låseskjermen
- Administrerer Apple Pay-godkjenningsprosessen og gjør det mulig for en transaksjon å fortsette
- Mottar rasterskanning av fingeravtrykket ditt fra Touch ID-sensoren
- Lagrer skanningen midlertidig i sitt eget krypterte minne
- Vectoriserer skanningen for analyse, og kast deretter skanningen
- Avgjør om det er en kamp mot registrerte fingeravtrykk
- Lagrer det resulterende kartet over noder sikkert, uten identitetsinformasjon
I henhold til Apples iOS Security Guide-dokument og tilhørende patentinnlevering, bruker Secure Enclave System Software Autorization for å sikre integriteten til databeskyttelse og sin egen firmware, selv om kjernen har blitt kompromittert, for å forhindre nedgradering av installasjoner.
På A9 eller nyere A-serien prosessorer er Secure Enclave også ansvarlig for å generere den unike ID (UID) på en sikker måte, som er en 256-biters AES-nøkkel som er unik for hver enhet.
Denne UID-en er lagret sikkert i Secure Enclaves eget krypterte minne, og som sådan er ukjent for Apple og andre deler av systemet.
Alt iOS kan se er resultatene av krypterings- eller dekrypteringsoperasjoner utført av dedikerte AES-motorer implementert i silisium ved bruk av UID som en nøkkel (eller GID, som er en enhetsgruppe-ID som er satt sammen i brikken og felles for alle prosessorer i en klasse av enheter ; for eksempel alle iOS-enheter som bruker A9-prosessoren).
I henhold til Apples program for bugpremier, skal vellykket utvinning av konfidensielt materiale beskyttet av Secure Enclave tildeles kule $ 100 000.