Sikre programvareoppdateringer
Sikkerhet er en prosess. Det er ikke nok å starte operativsystemversjonen installert på fabrikken, det må også finnes en mekanisme for å hente de nyeste sikkerhetsoppdateringene på en rask og sikker måte. Med jevne mellomrom lanserer Apple programvareoppdateringer som retter opp sikkerhetsproblemer som har oppstått. Brukere av iPhone- og iPad-enheter mottar oppdateringsvarsler på enheten. Mac-brukere finner tilgjengelige oppdateringer i Systeminnstillinger (macOS 13 eller nyere) eller Systemvalg (macOS 12 eller eldre). Oppdateringer leveres trådløst, for rask utrulling av nye sikkerhetsoppdateringer.
Sikkerhet for oppdateringsprosessen
Oppdateringsprosessen bruker samme maskinvarebaserte «root of trust» som sikker oppstart som er utviklet for å installere Apple-signert kode. Oppdateringsprosessen bruker også systemprogramvareautorisering til å kontrollere at kun operativsystemversjoner som aktivt signeres av Apple, kan installeres på iPhone- og iPad-enheter, eller på Macer med Full sikkerhet-innstillingen konfigurert som regelsettet for sikker oppstart i Oppstartssikkerhetsverktøy. Med disse sikre prosessene på plass kan Apple slutte å signere eldre operativsystemversjoner med kjente sårbarheter, noe som bidrar til å forhindre nedgraderingsangrep.
Hvis enheten som skal oppgraderes, er fysisk koblet til en Mac, vil det av sikkerhetsmessige årsaker lastes ned og installeres en komplett kopi av iOS eller iPadOS. For trådløse programvareoppdateringer er det kun komponentene som kreves for å fullføre en oppdatering, som lastes ned. Dette reduserer belastningen på nettverket. I tillegg kan programvareoppdateringer bufres på Macer som kjører macOS 10.13 eller nyere med innholdsbufring slått på, slik at iPhone- og iPad-enheter ikke trenger å laste ned den nødvendige programvareoppdateringen på nytt over internett. (De må fortsatt kontakte Apple-tjenere for å fullføre oppdateringsprosessen.)
Tilpasset oppdateringsprosess
Ved oppgraderinger og oppdateringer gjøres noe informasjon tilgjengelig for Apples tjener for installeringsgodkjenning, inkludert en liste med kryptografiske målinger for hver del av pakken som skal installeres (for eksempel iBoot, kjernen og operativsystemfilen), en tilfeldig anti-repetisjonsverdi og enhetens unike Exclusive Chip Identification (ECID).
Godkjenningstjeneren kontrollerer listen med målinger mot versjoner som det er tillatt å installere. Hvis den finner et samsvarende treff, legger den ECID-en til i målingen og signerer resultatet. Tjeneren sender et komplett sett med signerte data til enheten som en del av oppgraderingsprosessen. Når ECID-en blir lagt til, tilpasses godkjenningen for den aktuelle enheten. Når det bare er kjente målinger som godkjennes og signeres, bidrar tjeneren til å sikre at oppdateringen skjer akkurat slik den ble levert av Apple.
Sikkerhetskjeden verifiserer at signaturen kommer fra Apple, og at målingen av objektet som er lastet fra lagringsenheten, kombinert med enhetens ECID, samsvarer med det som ble omfattet av signaturen. Disse trinnene er utviklet for å sikre at på enheter som støtter tilpassing, gjelder autoriseringen for en spesifikk enhet og at et eldre operativsystem med en firmwareversjon fra én enhet ikke kan kopieres til en annen. Anti-repetisjonsverdien bidrar til å hindre uvedkommende i å lagre tjenerens svar og bruke det til å manipulere en enhet eller endre systemprogramvaren på andre måter.
Tilpasningsprosessen er grunnen til at en nettverksforbindelse til Apple alltid er påkrevd ved oppdatering av enheter med Apple-designede brikker og Intel-baserte Macer med Apple T2-sikkerhetsbrikken.
På enheter med Secure Enclave tar denne maskinvaren også i bruk systemprogramvareautorisering for sjekke integriteten til programvaren, og den er utviklet for å hindre at det installeres nedgraderinger.