Kaip „Apple“ (privačiai) ras jūsų prarastą įrenginį neprisijungus?

Pirmadienį vykusioje WWDC konferencijoje „Apple“. pristatė šaunią naują funkciją „Find My“. Skirtingai nuo standartinio Raskite mano iPhone», kuri priklauso nuo pamesto įrenginio korinio ryšio infrastruktūros ir GPS, funkcija Find Me gali rasti net įrenginius be SIM kortelės ir GPS. Pavyzdžiui, nešiojamieji kompiuteriai ar net „kvailiai“ vietos žymekliai, pritvirtintas prie bet kurio daikto (Apple tai tik užsiminė plačiąja prasme).

Idėja – visą esamą „iPhone“ tinklą paversti didelio masto sutelktinio finansavimo sistema aplinkiniams objektams sekti. Kiekvienas aktyvus iPhone Jis nuolat stebės BLE švyturių pranešimus iš kitų įrenginių. Aptikęs vieną iš šių signalų, jis pažymi paketą jo GPS koordinatėmis ir siunčia jį į „Apple“ serverius. Tai puikiai tinka tokiems išsiblaškiusiems žmonėms kaip aš, kurie nuolat pameta daiktus: jei paliksiu kuprinę biure turistiniame autobuse Kinijoje, anksčiau ar vėliau kažkas užklups jo signalą ir aš iš karto žinosiu, kur jį rasti.

(Verta pažymėti, kad „Apple“ nesugalvojo. Tiesą sakant, įmonės, pvz Čerpė dirba gana ilgai. Ir taip, jie turėtų nerimauti dėl savo verslo).

Jei jūsų nesužavėjo aukščiau pateiktas aprašymas, leiskite man užduoti klausimą, kurį turėtumėte užduoti: Kaip ši sistema apsaugos nuo didžiulių privatumo pažeidimų?

Čia yra galimų problemų sąrašas:

  • Jei įrenginys nuolat skleidžia BLE signalą, kuris jį unikaliai identifikuoja, dabar kiekvienas turi (kitą) būdą jus sekti. Rinkodaros specialistai jau naudoja WiFi ir Bluetooth MAC adresus tam ir funkcijai Rasti Mano sukuria kitą sekimo kanalą.
  • Taip pat išslaptinami tie, kurie dalyvauja vyksta. Dabar šie žmonės nusiųs savo dabartinę vietą „Apple“ (tikriausiai tai jau daro). Tačiau dabar jie turės pasidalinti šia informacija taip pat su nepažįstamais žmonėmis, kurie „pameta“ savo įrenginius. Tai gali baigtis blogai.
  • Sukčiai taip pat gali pradėti aktyvias atakas, kurių metu jie apgaudinėja jūsų įrenginio vietą. Nors atrodo mažai tikėtina, žmonės visada stebisi.

Geros naujienos yra tai, kad „Apple“ teigia, kad sistema iš tikrųjų užtikrina tvirtą privatumą sumaniai naudojant kriptografiją. Tačiau, kaip įprasta, jie atsisakė pasakyti įgyvendinimo detales. Andy Greenberg iš Wired papasakojo iš dalies techninis įgyvendinimas „Apple“ teigimu, tai yra labai prasminga. Deja, šis pasakojimas vis dar palieka didžiulių spragų. Tai yra tie, kuriuos ketinu užpildyti, pateikdama labiausiai tikėtiną aprašymą, ką iš tikrųjų daro „Apple“.

Didelis įspėjimas: daugelis dalykų gali būti visiškai neteisingi. Būtinai atnaujinsiu šį straipsnį, kai „Apple“ atskleis daugiau.

Keletas didelių problemų

Norint išdėstyti scenarijų, į paveikslėlį reikia įtraukti kelis įrenginius. Įkvėpimo ieškokite šeštojo dešimtmečio televizijos seriale „Lassie“.

Pirmas įrenginys, į kurį paskambinsime Timmy, "prarasti". U Timmy Yra BLE radijo siųstuvas, bet nėra GPS ar interneto ryšio. Laimei, jis jau buvo susietas su antruoju įrenginiu Rūtakas nori jį surasti. Mūsų pagrindinis veikėjas yra Lassie: Tai atsitiktinio (ir nežinančio) nepažįstamo žmogaus, kuris (darant prielaidą) turi bent nutrūkstamą interneto ryšį ir patikimą GPS, iPhone. Ir Lassie yra labai gera mergina. Tinklo įrenginiai palaiko ryšį per Apple iCloud serverius, kaip parodyta toliau:

Kaip „Apple“ (privačiai) ras jūsų prarastą įrenginį neprisijungus?

(Nes Timmy и Rūta turi būti suporuoti iš anksto, tikriausiai jie abu priklauso tam pačiam asmeniui. Ar minėjau, kad reikės pirkti два „Apple“ įrenginiai, kad sistema veiktų? Tai puikiai tinka Apple.)

Mes žiūrime į apsaugos sistemą, todėl pirmasis klausimas yra: kas tas blogiukas? Šioje situacijoje atsakymas yra nemalonus: Kiekvienas gali būti potencialus užpuolikas. Štai kodėl problema tokia įdomi.

Timmy anonimiškumo išlaikymas

Svarbiausias sistemos aspektas yra tai, kad pašaliniams asmenims neturėtų būti leista sekti Timmy, ypač kai jis nėra prarastas. Tai pašalina kai kuriuos gana akivaizdžius sprendimus, pavyzdžiui, kada įrenginys Timmy tik šaukia: "Sveiki, mano vardas Timmy, prašau paskambinti mano mamai Rūtai ir pranešti, kad aš pasiklydau.". Tai taip pat atmeta praktiškai bet kokį nekintamą statinį identifikatorių, net ir tą, kuris yra nepermatomas ir atrodo atsitiktinis.

Šis paskutinis reikalavimas kyla dėl nesėkmingos paslaugų, kurios piktnaudžiauja statiniais identifikatoriais (pvz., tavo WiFi MAC adresas) stebėti įrenginių judėjimą. Apple su mišria sėkme kovoja su šiuo stebėjimu atsitiktinai parinkdamas identifikatorius, pvz., MAC adresus. Jei „Apple“ pridės statinį „Find My“ stebėjimo ID, problemos tik pablogės.

Šis reikalavimas reiškia, kad bet kokie pranešimai perduodami Timmy, turi būti nepermatomas. Be to, šių pranešimų turinys turi gana dažnai keistis į naujas vertes, kurių negalima susieti su senomis. Vienas akivaizdus būdas susietam įrenginiui atpažinti tokius pranešimus yra priverstinis Timmy и Rūta susitarti dėl ilgo atsitiktinių sąrašo“pseudonimai" dėl Timmy, Paleisk Timmy kiekvieną kartą pasirenka vis kitą.

Tai tikrai padeda. Kiekvieną kartą, kai Lassie mato kažkokį (nežinomą) įrenginį, transliuojantį ID, ji nežinos, ar jis priklauso Timmy: Bet ji gali nusiųsti jį į Apple serverius kartu su savo GPS vieta. Jeigu Timmy pasiklys Rūta gali paprašyti Apple surasti visus galimus slapyvardžius Timmy. Esant tokiai situacijai, niekas už Apple ribų nežinos sąrašo ir net pati Apple jį sužinos tik po to, kai kas nors pasiklys, todėl šis metodas neleidžia daugeliui sekimo parinkčių.

Šiek tiek efektyvesnis būdas įgyvendinti šią idėją yra naudoti kriptografinę funkciją (pvz., MAC arba maišos funkciją), kad sugeneruotų slapyvardžių sąrašą iš vienos trumpos pradinės dalies, kurios kopijos yra saugomos. Timmy и Rūta. Tai gerai, nes sumažina saugomų duomenų kiekį. Bet rasti Timmy, Rūta vis tiek turi išsiųsti visus slapyvardžius – arba sėklas – „Apple“, kuri turės ieškoti kiekvieno slapyvardžio savo duomenų bazėje.

Slepia Lassie buvimo vietą

Aprašytas metodas su slapyvardžiais turėtų gerai pasislėpti asmenybė Timmy nuo Lassie ir net iš „Apple“ (iki taško, kur Rūta pradeda jo ieškoti). Tačiau yra didelis trūkumas: jis neslepia GPS koordinačių Lassie.

Tai blogai dėl bent kelių priežasčių. Kiekvieną kartą, kai Lassie aptinka bet kurį įrenginį su BLE signalu, jis turi perduoti dabartinę savo vietą (kartu su matomu slapyvardžiu) į Apple serverius. Tai reiškia kad Lassie nuolat praneša Apple, kur ji yra. Ir dar daugiau, net jei „Apple“ žada nesaugoti jūsų tapatybės Lassie, visų šių pranešimų rezultatas yra didžiulė centralizuota duomenų bazė, rodanti visas aptiktas GPS vietas bet koks Apple įrenginys.

Atkreipkite dėmesį, kad pats tokių duomenų masyvas suteikia daug informacijos. Taip, įrenginių ID gali būti slapyvardžiai, bet tai nepadaro informacijos nenaudinga. Pavyzdžiui, jei kai kurie Apple įrenginys vakarais transliuoja tas pačias koordinates, tai suteikia tikėtiną asmens gyvenamosios vietos adresą.

Akivaizdus būdas neleisti Apple atskleisti šių duomenų – užšifruoti juos, kad juos matytų tik tie, kuriems tikrai reikia informaciją matyti. reikia žinoti įrenginio vietą. Jeigu Lassie gauna pranešimą iš Timmy, tada vienintelis asmuo, kuris tikrai turi žinoti vietą LassieJis Rūta. Kad ši informacija būtų konfidenciali, Lassie turi užšifruoti savo koordinates viešuoju raktu Rūta.

Žinoma, kyla klausimas: kaip Lassie gaus raktą Rūta? Akivaizdus sprendimas Timmy - sušuk viešąjį raktą Rūta kiekvienoje laidoje. Bet tai sukurs statinį identifikatorių, kuris vėl leis jums sekti Timmy.

Norėdami išspręsti šią problemą, turite Rūta ji buvo daug nesusietų viešųjų raktųtaip kad Timmy kiekviena transliacija gali išduoti skirtingus raktus. Vienas iš variantų – priversti Rūta и Timmy generuoti daug skirtingų bendrų raktų porų (arba generuoti daug tokių porų iš bendros sėklos). Bet tai erzina ir Rūta turėsite saugoti daug slaptų raktų. Ir ankstesniame skyriuje minėtus identifikatorius galima gauti sumaišius kiekvieną viešąjį raktą.

Šiek tiek geresnis metodas (kurį Apple gali naudoti arba ne) apima atsitiktinių imčių raktai. Tai yra kai kurių kriptosistemų savybė, pvz Elgamal: ji yra leidžia bet kuriai šaliai atsitiktinai pasirinkti viešąjį raktą, todėl jis niekaip nesusijęs su originalu. Geriausia šios funkcijos dalis yra ta Rūta gali naudoti vienas slaptasis raktas, neatsižvelgiant į tai, kuri jo viešojo rakto atsitiktinė versija buvo naudojama šifravimui.

Kaip „Apple“ (privačiai) ras jūsų prarastą įrenginį neprisijungus?

Visa tai veda prie galutinės protokolo idėjos. Kiekvienoje laidoje Timmy perduoda naują slapyvardį ir atsitiktinę viešojo rakto kopiją Rūta. Kai Lassie priima transliaciją, ji užšifruoja savo GPS koordinates viešuoju raktu ir siunčia šifruotą žinutę Apple. Rūta gali siųsti slapyvardžius Timmy į „Apple“ serverius, o jei „Apple“ randa atitikmenį, ji gali gauti ir iššifruoti GPS koordinates.

Ar tai išsprendžia visas problemas?

Gaila, kad daugeliui keistų situacijų nėra tobulo sprendimo. Pavyzdžiui, kas būtų, jei Timmy pikti ketinimai ir jis nori priversti Lassie atskleisti savo Apple vietą? Ką daryti, jei Old Man Smithers bandys pagrobti Lassie?

Kažkuriuo momentu atsakymas į šį klausimą ateina tuo, kad padarėme viską, kas įmanoma: visos likusios problemos turėtų būti perkeltos už grėsmės modelio ribų. Kartais net Lassie žino, kada sustoti.

Šaltinis: www.habr.com

Pirkite patikimą prieglobą svetainėms su DDoS apsauga, VPS VDS serveriais 🔥 Įsigykite patikimą svetainių talpinimą su DDoS apsauga, VPS VDS serveriais | ProHoster