Android ve firemním prostředí [aktualizováno]

No Image-01

V zářijovém čísle časopisu Security World vyšel náš článek o nasazení Androidu ve firemním prostředí lehce srovnávající možnosti Androida, iPhonu a BlackBerry, který se svolením vydavatele a s drobnými úpravami pro internetové médium publikujeme také zde.

Android je nový operační systém a aplikační platforma pro mobilní zařízení za nímž z největší části stojí firma Google. První Android zařízení (T-Mobile G1) se na trhu objevilo v říjnu 2008 a na letošní rok je ohlášeno dalších zhruba 19 zařízení od různých výrobců. Je tedy na čase podívat se, kde jsou silná a slabá místa v nasazení Android telefonů ve firemním prostředí. Doufáme, že k orientaci Vám pomůže tento článek.

Hlavními konkurenty Androidu, se kterými budeme v článku srovnávat řešení jednotlivých bezpečnostních problémů a způsobů nasazení jsou:

  • iPhone OS (iPhone) od Applu je platforma provozovaná na dosud nejoblíbenějším chytrém telefonu iPhone. iPhone je pro Android – vzhledem ke svému dosavadnímu zaměření hlavně na cílového uživatele, ne na firemní prostředí – největším konkurentem.
  • BlackBerry OS (BB) od Research in Motion je platforma zaměřená především na enterprise business, kde lze naplno využít zabezpečených, centralizovaných služeb poskytnutých BlackBerry Enterprise Serverem (BES) a vzdálenou správou mobilních zařízení hardwarově identifikovaných a zabezpečených pomocí BlackBerry PIN.

Zapojení do firemního groupware

První Android zařízení T-Mobile G1 se při svém prvním spuštění zeptalo na váš Google účet a od té doby s ním bylo nezměnitelně spojeno a synchronizováno. Novější typy telefonů (některé edice telefonů HTC Magic) dokáží použít váš účet na Google Apps. Zatím pouze HTC Hero je schopno syncnout se s Microsoft Exchange v „základní výbavě“.

Google Apps hostované v Google „cloudu“ mohou být dobrým řešením pro firmu, která hledá alternativu ke drahým groupware řešením například pomocí Microsoft Exchange. Firma s Google Apps získá komplexní, bezpečné a spolehlivě dostupné online groupware řešení obsahující email s uživatelským rozhraním Gmailu, kalendář, kontakty, chat, dokumenty (a pár dalších služeb) a může naplno využít automatické synchronizace probíhající na pozadí.

Pro synchronizaci s asi nejrozšířenějšími groupware nástroji Microsoft Exchange resp. Lotus Notes je k dispozici placená aplikace TouchDown resp. CompanionLink (nesynchronizuje email, pouze kalendář a kontakty a nesynchronizuje na telefon ale nejdříve do vašeho Google účtu). Google samotný se v podpoře synchronizace pro Exchange neplánuje nijak angažovat a nechává prostor jiným firmám. Již nyní je ale možné se připojit k emailu hostovanému na Microsoft Exchange pomocí IMAP protokolu.

Naproti tomu zařízení BB jsou integrována do firemní sítě pomocí BES, který zajišťuje propojení s Microsoft Exchange, Lotus Domino, Novell GroupWise. Takže tady je zabezpečená synchronizace zajištěna podobně jako v zařízeních Windows Mobile a iPhone, které obsahují synchronizační nástroj ActiveSync.

Bezpečný email

Android standardně obsahuje emailového klienta, který se připojí k jakémukoli IMAP a POP3 serveru. Samozřejmostí je SSL i TLS šifrovaný přístup. Aplikace automaticky rozpozná většinu oblíbených freemailů a nakonfiguruje připojení sama. Pokud přistupujete ke své poště pomocí IMAP, automaticky se provedené akce synchronizují se serverem. Můžete tak mít synchronizován neomezený počet emailových adres. Veškerá komunikace aplikace se servery se odehrává na pozadí a v případě nové zprávy se zobrazí notifikace. Standardně telefon ukládá 25 posledních zpráv v IMAP složce, takže i kdyby došlo k odcizení telefonu a jeho prolomení (viz následující odstavec), není škoda tak vysoká.

Získání úplné kontroly, odblokování, šifrovaný obsah

Získání úplné kontroly nad systémem (tzv. rootování/jailbreaking) je způsob, jakým lze vytáhnout z nepřístupných oblastí telefonu citlivá data a získat neomezený přístup do filesystému telefonu. Každý systém se proti rootování chrání jiným způsobem.

Pro všechny verze iPhone je k dispozici program dokonce s grafickým uživatelským rozhraním, který jailbreak provede, takže jailbreak zvládne i méně zkušený uživatel. Nic takového není pro Android ještě donedávna k dispozici nebylo. Rootování Android telefonu byla dost náročná a zdlouhavá práce. Poslední dobou se však už i pro tento systém začaly objevovat aplikace, které vše výrazně zjednodušují, i tak ale nelze v žádném případě „rooting“ doporučit nezkušenému uživateli – riziko, že Vám nepovedený pokus odrovná telefon je přítomno stále.

BB umožňuje zadat heslo a šifrovat obsah telefonu. Uživatel má pak jistotu, že ze ztraceného telefonu nepůjdou získat citlivá data, jako jsou kontakty, emaily, smsky apod. iPhone ani Android nic takového k dispozici nemají. Android má ale tu výhodu, že je při tvorbě aplikací možné použít standardní šifrovací knihovny napsané v Javě a vytvořit si tak podobné zabezpečení, pokud je vyžadováno. Navíc všechny aplikace jsou si rovny, takže je možné nahradit aplikaci pro správu kontaktů vlastní aplikací, která bude kontaktní data šifrovat.

Vývoj, podepisování a distribuce aplikací

File?id=dgfkb28w 25fb8982hh bVšechny tři hlavní sledované platformy používají k distribuci aplikací řešení v podobě obchodu na internetu (Android Market, App Store – pro iPhone, App World – pro BB), který má v telefonu tlustého, předinstalovaného klienta. Kdokoli se může po zaplacení poplatku (výše poplatku se u jednotlivých obchodů liší) registrovat a distribuovat aplikace. Obchody pro Android, iPhone a BB se ale velice liší svou politikou. Android Market je ze zmíněných obchodů nejsvobodnější. Licenční podmínky zakazují k distribuci nejméně aplikací, což vede k tomu, že po odeslání si mohou uživatelé aplikaci stáhnouti během několika minut. Apple si naproti tomu vyhrazuje právo na testování a případné odmítnutí každé aplikace zaslané do iPhone obchodu. Kontrola průměrně vyžaduje tři týdny, než je aplikace k dispozici uživatelům. Na druhou stranu máte jistotu, že aplikaci Apple testoval a můžete více věřit, že vám na telefonu neprovede nic zákeřného.

Kromě Android Marketu můžete na Android instalovat i aplikace z jiných zdrojů, což vám umožní snadno provozovat firemní, uzavřené aplikace, které nechcete distribuovat dalším uživatelům přes Android Market. Pro srovnání na iPhone lze instalovat aplikace jedině z App Store, což znesnadňuje použití vlastních aplikací v tom smyslu, že je musíte distribuovat veřejně, nebo si pořídit drahou App Store enterprise licenci. Na BB lze instalovat cokoliv z libovolného zdroje podobně jako na Androidu.

Není ale instalace aplikací na Android z neověřených zdrojů nebezpečná? Není. Android běží na Linuxu a plně využívá a rozšiřuje jeho bezpečnostní model. Každá aplikaci je přiděleno unikátní UID (identifikace uživatele – běží jakoby pod jiným uživatelem), což jedné aplikaci efektivně zabraňuje přístupu k datům a kódu druhé aplikace. Navíc každá aplikace běží v samostatném sandboxu JVM (Java Virtual Machine) a s operačním systémem komunikuje pomocí přesně definovaných a přísně kontrolovaných rozhraní, k jejichž použití si musí před instalací vyžádat uživatelův souhlas.

Před nahráním na telefon s Androidem musí být aplikace podepsána certifikátem. Hlavním smyslem je ověřitelné spojení výrobce a aplikace samotné, aby se nestalo, že aplikaci nepřepíšete její novou verzí, kterou dodal někdo jiný než verzi původní a která by mohla obsahovat nebezpečné změny.

Pokud chcete vyvíjet pro Android, stačí vám SDK (software development kit – balík aplikací potřebných pro programování) a počítač. Nepotřebujete se nikde registrovat ani složitě získávat certifikáty. Navíc je vše zdarma. Teprve až se rozhodnete pro publikování aplikace v Android Marketu, musíte se za 25 dolarů registrovat a nechat si vygenerovat certifikát, kterým musíte před publikováním podepisovat své aplikace. Certifikát nemusí být ale ověřený žádnou certifikační autoritou. K programování v iPhone OS potřebujete minimálně vývojářskou registraci na iTunes, která stojí 99 dolarů a trvá zpravidla tři týdny. Bez této registrace si nenahrajete aplikaci ani do vlastního telefonu. Registrace pro vývoj na BB stojí 25 dolarů. Bez ní sice můžete pro BB vyvíjet, ale máte k dispozici pouze JavaME podmnožinu BB API. Pro přístup k proprietárnímu BB API je certifikát spojený s vývojářským účtem u RIM vyžadován.

Aktualizace

Systémové aktualizace přicházejí na řadu, pokud se v systému objeví zneužitelná bezpečnostní díra. Android disponuje automatickým systémem aktualizací, které se po odsouhlasení uživatelem automaticky nainstalují. Podobný systém je použit i pro nahrání nové verze operačního systému do telefonu. Tyto aktualizace přicházejí na telefon „OTA“ („over-the-air“ – vzduchem) od mobilního operátora a nejsou zpoplatněny. V závislosti na operátorovi nebývají také zpoplatněny pouze bezpečnostní updaty. Samozřejmostí je při tom bezpečnost zajištěná tím, že aktualizace a bezpečnostní updaty jsou také podepisované.

Pokud se objeví aktualizace aplikace nainstalované na telefon přes Android Market, je uživatel upozorněn a může si aktualizaci stáhnout. Takto je zaručeno, že máte na telefonu vždy nejnovější verzi systému i aplikací.

Pokud používáte na telefonu vlastní vyvinuté aplikace (aplikace instalované mimo Android Market), nemůžete se na automatický aktualizační systém spolehnout a musíte ho do aplikace naprogramovat sami, což je velice jednoduché. Pokud aplikace komunikuje s firemním serverem, můžete do serverového API umístit příznak existence nové verze a aktualizace se potom sama stáhne a nainstaluje, nebo si aplikace v určeném časovém intervalu sama sleduje existenci nové verze.

Systém oprávnění

Některé aplikace potřebují ke své činnosti přistupovat k citlivým datům uloženým v telefonu (například informace o kontaktech) nebo používat hardware či pokročilé služby telefonu (například použití pozice z GPS či pozice z mobilní sítě). Tento přístup je kontrolován systémovými oprávněními přidělenými aplikaci. Na Androidu musíte během instalace aplikace odsouhlasit, že jí přidělujete práva, která ke své činnosti potřebuje. Jakmile odsouhlasíte, aplikace se nainstaluje a už nejste znovu dotazováni.

iPhone se vás dopředu při instalaci neptá, ale před každým prvním přístupem ke chráněným datům nebo hardwaru vás požádá o explicitní souhlas. Při instalaci aplikace na BB, která používá ke své činnosti pokročilé funkce systému, můžete aplikaci explicitně přidělit oprávnění, která má používat automaticky, jinak se bude při jejich potřebě ptát. Navíc použití příliš citlivých funkcí (např. prodloužení doby do zamknutí zařízení při jeho nepoužívání) je defaultně zakázáno a je zde problém v tom, že sama aplikace si neříká, jaká oprávnění potřebuje. V takovém případě musíte tedy hledat, které oprávnění je to správné a způsobuje chyby v chování aplikace.

Shrnutí

Bezpečnostní model Androidu je natolik silný, že dělá Androda dobrým kompromisem mezi aplikacemi z potenciálně nebezpečných zdrojů a příliš restriktivní politikou, která vám značně omezuje možnosti jeho nasazení.

Největší síla Androida spočívá v použití zkombinovaném s Google Apps. Získáte tak velice levnou a bezpečnou infrastrukturu poskytující vám přístup k emailu, kalendáři, kontaktům, dokumentům z libovolného místa, kam dosahuje mobilní internetové připojení. Vše plně synchronizované na pozadí bez jediného uživatelského zásahu. Pokud byste uvažovali o začlenění Androida do již existujícího firemního prostředí (MS Exchange, Lotus Notes, …), můžete narazit na integrační problémy a očekávat výdaje na licence pro používání synchronizačního softwaru.

Android také v současnosti nedosahuje enterprise úrovně zabezpečení telefonů BlackBerry. Na druhou stranu jeho pořízení a začlenění do firemní sítě je mnohem levnější. Android je natolik otevřený, že vám nic nebrání v tom, abyste si potřebnou část z celkově drahých bezpečnostních řešení nemohli naprogramovat sami.

Přejeme hodně úspěchů!

[aktualizace] – v článku byly opraveny dvě drobné nepřesnosti, na které nás upozornili čtenáři (viz diskuze níže). Moc děkujeme čtenářům Petr22 a boldrik za konstruktivní a pravdivé připomínky!

archiv
O Autorovi - archiv

více o autorovi

Mohlo by vás zajímat

Komentáře (13)