Zavrieť reklamu

Posielanie správ cez iMessage patrí k populárnym spôsobom komunikácie medzi iOS zariadeniami a taktiež počítačmi Mac. Denne servery Applu spracujú desiatky miliónov správ a ako rastú predaje zariadení s nahryznutým jablkom, rastie aj popularita iMessage. Premýšľali ste ale niekedy na tom, akým spôsobom sú vaše správy chránené pred potenciálnymi útočníkmi?

Apple nedávno vydal dokument popisujúce bezpečnosť iOS. Sú v ňom pekne popísané bezpečnostné mechanizmy použité v iOS – systém, šifrovanie a ochrana dát, zabezpečenie aplikácií, sieťovej komunikácie, internetových služieb a zabezpečenie zariadenia. Pokiaľ bezpečnosti trochu rozumiete a nemáte problém s angličtinou, iMessage nájdete na strane číslo 20. Ak nie, pokúsim sa princíp zabezpečenia iMessage popísať čo najzrozumiteľnejšie.

Základom posielania správ je ich šifrovanie. To je u laikov často spojené s postupom, keď správu zašifrujete nejakým kľúčom a týmto kľúčom ju príjemca dešifruje. Takýto kľúč sa nazýva symetrický. Kritickým bodom tohto procesu je odovzdanie kľúča príjemcovi. Ak by sa ho zmocnil útočník, mohol by vaše správy jednoducho dešifrovať a vydávať sa za príjemcu. Pre zjednodušenie si predstavte schránku so zámkom, do ktorého pasuje iba jeden kľúč as týmto kľúčom môžete do schránky obsah vkladať aj vyberať.

Našťastie tu existuje asymetrická kryptografia využívajúca dva kľúčov – verejného a súkromného. Princíp je taký, že váš verejný kľúč môžu poznať všetci, súkromný poznáte samozrejme iba vy. Ak vám niekto bude chcieť poslať správu, zašifruje ju vašim verejným kľúčom. Zašifrovanú správu je možné potom dešifrovať iba vaším súkromným kľúčom. Ak si predstavíte opäť zjednodušene schránku, potom bude mať tentoraz dva zámky. Verejným kľúčom ju ktokoľvek odomkne na vloženie obsahu, avšak ten môžete vybrať len vy s vašim privátnym kľúčom. Pre istotu doplním, že správu zašifrovanú verejným kľúčom nemožno týmto verejným kľúčom dešifrovať.

Ako funguje zabezpečenie v iMessage:

  • Pri aktivovaní iMessage sú v zariadení vygenerované dva páry kľúčov – 1280b RSA na šifrovanie dát a 256b ECDSA na overenie, či neboli dáta po ceste pozmenené.
  • Dva verejné kľúče sú odoslané do adresárovej služby Applu (IDS). Dva privátne kľúče zostávajú samozrejme uložené iba v zariadení.
  • V IDS sú verejné kľúče spojené s vašim telefónnym číslom, e-mailom a adresou zariadenia v službe na rozosielanie oznámení (Apple Push Notification – APN)
  • Ak vám niekto chce napísať správu, zistí si jeho zariadenie v IDS váš verejný kľúč (alebo viac verejných kľúčov, ak používa iMessage na viacerých zariadeniach) a APN adresy vašich zariadení.
  • Správu zašifruje pomocou 128b AES a podpíše svojim súkromným kľúčom. Ak vám správa má doraziť na viac zariadení, je správa uložená a zašifrovaná na serveroch Applu zvlášť pre každé z nich.
  • Niektoré dáta, ako napríklad časové pečiatky, nie sú šifrované vôbec.
  • Všetka komunikácia je vykonávaná cez TLS.
  • Dlhšie správy a prílohy sú zašifrované náhodným kľúčom na iCloud. Každý takýto objekt má svoju vlastnú URI (adresa pre niečo na serveri).
  • Hneď ako je správa doručená na všetky vaše zariadenia, je zmazaná. Pokiaľ nie je doručená aspoň na jedno z vašich zariadení, je ponechaná na serveroch po dobu 7 dní a potom zmazaná.

Tento popis sa vám možno bude zdať zložitý, avšak pokiaľ sa pozriete na obrázok vyššie, určite princíp pochopíte. Výhodou takéhoto systému zabezpečenia je ten, že ho možno zvonku napadnúť len hrubou silou. Teda zatiaľ, pretože útočníci sú stále múdrejší.

Potenciálna hrozba je u samotného Applu. Ten totiž spravuje celú infraštruktúru kľúčov, a tak by teoreticky k vášmu účtu mohol priradiť napríklad kvôli súdnemu nariadeniu iné zariadenie (ďalší pár verejného a súkromného kľúča), v ktorom by boli prichádzajúce správy dešifrovateľné. Avšak tu Apple povedal, že nič také nerobí ani robiť nebude.

zdroje: TechCrunch, iOS Security (February 2014)
.