Kas Yra Saugus Anklavą?

Išversta su https://www.mikeash.com/pyblog/friday-qa-2016-02-19-what-is-the-secure-enclave.html

Didelis technologijų naujienos, šią savaitę, kad FBI bando priversti Apple atrakinti įtariamojo iPhone. Vienas iš įdomių klausimų apie šią istoriją yra tai, kad iPhone klausimas yra senesnis vienas, iPhone 5c. Naujesni telefonai turi tai, ką Apple kvietimus Saugaus Anklavo (Secure Enclave), kurį kai kas sako, apsaugo nuo prašymų šiuo klausimu; net jei Apple norėjo įsilaužti į jūsų telefoną, jie negalėjo. Kuris tada iškelia įdomų klausimą aš mačiau daug žmonių klausia: kas tiksliai yra Saugus Anklavas, ir kokį vaidmenį ji vaidina čia?

Trumpa pastaba, kol aš pradėti: savo įprastą požiūrį į straipsnių rašymas yra kasti visą kelią žemyn į bitai ir baitai, ir tada aptarti, kas ten yra. Tai nebūtinai yra šiek tiek kitokia. Pagal savo pobūdį, Saugaus Anklavo yra neprieinama tik mirtingieji, kaip aš. Vietoj to, dauguma žinių čia ateina iš Apple iOS Saugumo Vadovas, plius kai bendroji teorija. Ketinama išgauti atitinkamą bitai nuo tos vadovas, paaiškinti jiems, ir manau, kad per pasekmės. Šis straipsnis turi prisiimti Apple informacija yra tiksli, nes nėra jokio praktinio būdo patikrinti iš išorės. Rezultatas bus tik taip gerai, kaip produkto vadovo tikslumą ir mano supratimu, todėl skaitytojas saugokitės.

Taip pat, šis yra skirtas išnagrinėti techninius aspektus, šiuo atveju ir Saugaus Anklavo technologija. Jokios nuomones apie privalumus FBI prašymu arba Apple atsakymą, arba bet kokių kitų politinių klausimų yra nurodytos arba numanomos. Jei norite aptarti politinius klausimus, šiuo atveju, yra daug kitų vietų, kur galite tai padaryti.

Su kad iš kelio, pradėkime.

Peržiūros
IPhone klausimas yra apsaugotas kodą, kuris nėra saugomas ir bet kur ant prietaiso. Vienintelis būdas gauti yra brute-force kodą. Skaičiuojant reikia patikrinti kodą sąmoningai lėtai, reikia apie 80 milisekundžių per bandymas. Dar, brutalia jėga krekingo yra įmanoma. Už keturių skaitmenų kodą, bando 10,000 deriniai 80 milisekundžių kiekvienas užtrunka mažiau nei 15 minučių. Šešių skaitmenų kodą truktų apie parą.

Tai reiškia, kad ryšio kodus yra nėra labai saugus. Apple mažina ši su papildomų vėlavimų, po per daug nepavykusių bandymų. Po kelių nesėkmingų bandymų, iPhone padės jums laukti, kol jūs galite išbandyti dar kartą, pradedant nuo vienos minutės uždelsimas, tada penkių minučių vėlavimo, ir už jos ribų. Tai daro brute force atakos nepraktiška.

Gali galvoti, kad jums galėtų dirbti apie tai, jei jūs ištraukė iš flash atminties iPhone, nukopijuoti jo turinį, tada bandė nulaužti jį greitas kompiuteris. Jūs nebūčiau, bet kokia programinė įranga, kuri nustato papildomus vėlavimo. Kaip premiją, 80 milisekundžių, reikalingą kiekvienam bandymas gali eiti daug greičiau, greičiau kompiuterio, ir jums gali paleisti daug bandymų lygiagrečiai. Tačiau tai nepadeda. Duomenų šifravimas yra susieta su aparatūros, todėl brute force ataka turi būti paleisti į pradinius prietaiso.

Vyresnio amžiaus iPhone be Saugaus Anklavo, yra silpnumas šią sistemą. Būdingas vėlavimas kelią brutalia jėga krekingo kodą, bet tokie atvejai yra tik funkcija telefono OS. A 80 milisekundės klavišą išvedimas yra būdinga savybė, kad skaičiavimas, tačiau papildomų minučių ar valandų vėlavimas, po per daug nepavykusių bandymų yra tik OS kodas atsisako priimti papildomų sąnaudų, kol praėjo šiek tiek laiko. FBI nori, kad Apple sukurti ir įdiegti specialios OS versijos, kurios neleidžia vykdyti šių vėlavimų, ir kuri leidžia kodus būti pateikti elektroniniu būdu. Tai leistų FBI nulaužti kodą per kelias minutes ar valandas. iPhone nebus priimti OS atnaujinimus iš bet kas, be Apple, kad ši sistema yra saugi nuo ne puola, bet tai nėra saugu prieš Apple pati.

Atkreipkite dėmesį, kad tai yra pagrįsta vartotojui, naudojant skaitinį kodą. Geras sudėtingas slaptažodis yra vis dar saugus net vyresnio amžiaus iPhone. Aštuonių simbolių raidinis skaitmeninis slaptažodį užtruktų apie 550,000 metus išbandyti visus įmanomus derinius, pvz.

Neįskaitomas Skysčiai
Kiekvienu iOS CPU yra pastatytas su 256-bitų unikalus identifikatorius arba UID. Tai UID yra sudeginti į aparatūros ir saugomi ne bet kur kitur. Į UID yra ne tik neprieinama išorinio pasaulio, tačiau ji neprieinama net ir programinės įrangos veikia aukščiausiu privilegija lygiai CPU. Vietoj, CPU yra aparatūros AES šifravimo variklio, ir vienintelis būdas UID gali būti prieinama įranga yra įkėlę jį AES variklis kaip pagrindinis ir naudojant jį užšifruoti arba iššifruoti duomenis.

Apple naudoja šią aparatūrą entangle vartotojo kodą su prietaisu. Nustatant įrenginio UID kaip AES klavišą ir tada šifravimo kodą, rezultatas yra atsitiktinis-ieško krūva duomenis, kurie negali būti atkurta kur nors kitur, nes tai priklauso ir nuo vartotojo kodą ir paslaptis, neįskaitomas, konkrečiu prietaisu UID. Šis procesas kartojamas per daug raundų, naudojant PBKDF2 funkciją, šėrimo kiekvieno turo rezultatai atgal į kitą etapą savo indėlį, atlikti sunkiųjų skaičiuojant reikia priversti 80 milisekundžių darbo kiekvienos patikrinimo kodą bandymas.

Saugus Anklavą
Saugaus Anklavo buvo pristatytas su Apple A7 sistemos luste. Visus iphone pradedant 5s. 5/5c ir toliau nėra. IPad šono, viskas nuo iPad Mini 2 ir iPad Air.

Saugaus Anklavo yra atskiras CPU per A7 (arba vėliau), kuris yra atsakingas už žemo lygio kriptografinis operacijas. Ji neveikia iOS ar ką nors panašaus iOS, tačiau vietoj to, veikia modifikuotų L4 microkernel. L4 ketinama paleisti, kaip mažai kodas, kaip įmanoma į branduolį, kuris teoriškai turėtų padaryti, kad sistema būtų saugi mažinant potencialiai buggy kodas veikia su visomis privilegijomis. Saugaus Anklavo naudoja saugų įkrovos sistema, siekiant užtikrinti, kad ji kodekso jis veikia modifikuoti negalima, ir ji naudoja užšifruoti atminties užtikrinti, kad likusi sistemos negali skaityti arba gadinti jos duomenis. Tai veiksmingai formos, šiek tiek kompiuterio per kompiuterį, kad sunku, kad ataka.

Saugaus Anklavo yra savo UID ir aparatūros AES variklio. Kodo tikrinimo procesas čia vyksta, atskirtos nuo likusios sistemos. Saugaus Anklavo pat rankenos Touch ID pirštų atspaudų tvarkymo ir atitikimo, ir leidžiantis mokėjimai už Apple Sumokėti.

Saugaus Anklavo atlieka visas pagrindines valdymo šifruotų failų. Failo šifravimo taikoma beveik visus vartotojo duomenis. Labiausiai sistemos apps jį, naudoti ir trečiosios šalies programos visi jį naudoti pagal nutylėjimą, jei veikia ant iOS 7 ar naujesnė versija. Kiekvieną užšifruoti failą, turi unikalų raktą, kuris savo ruožtu yra šifruojami su kitu klavišu gauti iš prietaiso UID ir vartotojo kodą. Pagrindinis CPU negaliu skaityti šifruotus failus savo. Ji privalo prašyti dokumentų klavišus Saugaus Anklavą, kuris, savo ruožtu, negali suteikti jiems be vartotojo kodą.

Būdingas vilkinimo nepavyko kodą bandymų vykdymą užtikrina Saugaus Anklavo. Pagrindinis CPU tik tvirtina kodus ir gauna rezultatus. Saugaus Anklavo atlieka patikrinimus, ir jei ten buvo per daug nesėkmių, ji bus nedelsiant peforming tuos čekius. Pagrindinis CPU negalite greitis dalykų kartu.

Pasekmės
Ką Saugaus Anklavo reiškia, apsaugos sistemos, kaip visumos?

Daugumoje sistemų, jei jūs galite gauti į OS branduolį, tada jūs savo visą sistemą. Branduolio gali padaryti bet ką. Jį galite skaityti ir rašyti kiekvieną baitas sistemos atminties, ji gali kontroliuoti viską, aparatūros, ir ji yra atsakinga už visos paraiškos kodą, sistema, veikia, kurios gali subvert ne bus.

Nuo Saugaus Anklavo yra atskiras CPU daugiausia atkirsta nuo likusios sistemos, tai nėra pagal branduolio kontrolės. Dėl senesnių iPhone, kuriai priklauso branduolio – turinti viską padaro sistema, įskaitant kodą patikros procesą. Su Saugia Anklavas, nesvarbu, kas valdo pagrindinis CPU, nesvarbu koks kodas yra OS veikia, pagrindines saugumo funkcijas, lieka nepaliesti.

Ši sistema iš esmės leidžia savavališką kodą į priešais šifravimo funkcijas, tokias, kad šio savavališko kodas negali būti ignoruojamos. Tai šiek tiek panašu į super dydžio versija 80 milisekundės skaičiavimo laiko slaptažodį bandymai. Kad vėlavimas yra vykdomas naudojant apskaičiuoti, kad iš esmės mano, kad daug laiko. Tai reiškia, kad ji negali būti ignoruojamos, tačiau yra apribojimų, ką jūs galite sukurti iš įgimtų apribojimų skaičiavimai. Pavyzdžiui, galite pridėti vieną minutę nedelsiant penktasis bandymas, nes raw šifravimo konstruoja neturite sąvoka “penktasis bandymas.” Su Saugia Anklavas, kad vienas minučių vėlavimas gali būti įvykdytas, nes net su likusia sistemos dalimi subverted, nedelsiant kodas Saugaus Anklavo lieka nepažeistas.

Programinės Įrangos Atnaujinimus
IPhone 5c (ir kitų pre-A7 iPhone), gali būti taikoma brute force atakos kurti naują OS be dirbtinių vėlavimų, pakrovimo, kad ant prietaiso, tada bandymai kodus taip greitai, kaip įranga gali apskaičiuoti. Saugaus Anklavo trukdo tai. O kas vykdo tą pačią ataką viename lygyje, toliau žemyn, įkeldami naują programinę įrangą į Saugią Anklavas, kuris pašalina jos dirbtinis delsiama?

Apple vadovas yra ši diskusija programinės įrangos naujinimai, skirti Saugaus Anklavo:

“Jis naudoja savo secure boot, ir asmeninį programinės įrangos atnaujinimas atskirai nuo paraiškos procesorius.”

Štai ir viskas! Nėra informacijos jokios. Kokia yra reali situacija? Čia, mes turime įvesti karalystė spekuliacijos, nes kiek aš galiu kasti nėra informacijos ten apie tai, kaip Saugaus Anklavas programinės įrangos atnaujinimus iš tikrųjų dirba. Aš matau dvi galimybes.

Pirmoji galimybė yra, kad Saugaus Anklavo naudoja tos pačios rūšies programinės įrangos atnaujinimo mechanizmas, kaip poilsio prietaiso. Tai yra, atnaujinimus, turi būti pasirašyti Apple, tačiau gali būti laisvai taikyti. Tai leistų Saugaus Anklavas nenaudingas prieš išpuolį Apple pati, nes Apple gali tik sukurti naują Saugaus Anklavo programinę įrangą, kuri pašalina apribojimus. Saugaus Anklavo dar būtų naudinga funkcija, padedanti apsaugoti vartotoją, jei pagrindinė OS yra išnaudojami trečioji šalis, bet tai būtų nereikšmingas klausimas, ar Apple gali įsilaužti į savo prietaisus.

Antroji galimybė yra ta, kad Saugaus Anklavo programinės įrangos atnaujinimo mechanizmas daro kažką daugiau sudėtingų apsaugoti nuo išpuolių, net iš Apple. Visa idėja Saugaus Anklavo yra tai, kad ji vykdo papildomas taisykles, kad negali būti ignoruojamos iš išorės. Tai galėtų būti papildomas taisykles, apie savo programinės įrangos atnaujinimus. Atsižvelgiant į tikslą apsaugoti vartotojo duomenų, tai padaryti daug prasmės, dėl Saugaus Anklavo atsisakyti naudoti bet kokį programinės įrangos atnaujinimas išskyrus atvejus, kai prietaisas jau buvo atrakinta su vartotojo kodą. Dėl atvejais, kai vartotojas jau pamiršai slaptažodį ir nori nuvalykite prietaisą ir pradėti iš naujo, Saugaus Anklavo galėtų leisti atnaujinimus, bet ištrinti magistro raktai apsaugoti vartotojo duomenis.

Kuris iš jų yra tiesa? Dabar, mes nežinome. Apple įdėti daug pastangų, siekiant apsaugoti vartotojų duomenis, o tai padaryti daug prasmės, juos antrasis metodas, kai atnaujinimus, atsargiai nušluostykite prietaisą, jei taikoma be vartotojo kodą. Tai būtų gana lengva įgyvendinti, ir neturėtų turėti įtakos funkcionalumui prietaiso. Kadangi Apple visuomenės poziciją dėl vartotojų privatumo, norėčiau rasti labai keista, jei ji Saugaus Anklavo programinės įrangos atnaujinimo mechanizmas nebuvo įgyvendintos tokiu būdu. Kita vertus, Tim Cook viešą laišką, tai reiškia, kad visi iPhone modeliai yra galimai pažeidžiami, todėl galbūt jie nebuvo imtasi, tai papildomas žingsnis.

Kai jis ateina į klausimą teisėsaugos verčia Apple atakuoti iOS įrenginio, tai yra svarbiausias klausimas. Jei Saugaus Anklavo atnaujinimai yra apsaugotos net ir prieš Apple, tada FBI gebėjimą priimti šiuos prašymus sustoja iPhone 5s. Jei jie nėra, tada net naujausius 6s galėtų būti užpultas. Esu labai įdomu sužinoti atsakymą į šį klausimą.

Išvada
Saugaus Anklavo prideda papildomą gynybos linija prieš išpuolius įgyvendinti pagrindines saugumo ir kriptografijos funkcijos atskirą CPU per Apple techninės įrangos. Tai atskiras CPU veikia specialios programinės įrangos ir yra sienelėmis nuo likusios sistemos, pateikti ją kontroliuoti iš pagrindinių OS, įskaitant branduolio. Saugaus Anklavo įgyvendina ir raskite prietaiso prieigos kodą patikros, failų šifravimo, Touch ID pripažinimo, ir Apple Pay, ir už saugumo apribojimų, pvz., būdingas vėlavimas taikomas po pernelyg neteisingą kodą bandymai.

IPhone 5c, kad FBI klausia Apple įsilaužti į atsirado anksčiau nei Saugaus Anklavo, ir todėl gali būti subverted įdiegti naują OS pasirašė Apple, kuri pašalina dirbtinis kodą vėlavimo. Ar naujesni telefonai gali būti panašiai subverted priklauso nuo to, kaip Saugaus Anklavo programinės įrangos atnaujinimo mechanizmas yra įgyvendinamos. Jei programinės įrangos atnaujinimų, ištrinkite meistras, šifravimo raktus, kai įdiegiama be kodą, tada naujesnių iphone negali būti užpultas tokiu būdu, net ir Apple. Jei naujinimų yra leidžiama be kodą ir be trynimas klavišus, tada Saugaus Anklavo gali būti subverted tiesiog vyresnio amžiaus iPhone gali būti. Kiek aš galėtų nustatyti, ar šiuo atveju lieka atviras klausimas.

 

Grįžti į pagrindinį

Leave a Reply

Your email address will not be published. Required fields are marked *