Na co si dát pozor u požadovaných oprávnění při instalaci aplikací?

ochrana_soukromi_ico

Když instalujete do telefonu nebo tabletu novou aplikaci, musíte schválit požadovaná oprávnění. Většina uživatelů leckdy poměrně dlouhý seznam ani nečte a bezmyšlenkovitě ho odsouhlasí, jinak by vytoužený program nenainstalovali. To je ale velká chyba! Udělením práv můžete aplikacím poskytnout přístup k tak soukromým údajům, které byste nesvěřili ani svému nejlepšímu kamarádovi. Nabídnete otevřené dveře do svého života neznámým vývojářům, publikujícím své aplikace často pod smyšlenými identitami?

Na co si dát pozor u požadovaných oprávnění při instalaci aplikací? Na co si dát pozor u požadovaných oprávnění při instalaci aplikací?

Ber, nebo nech být!

Operační systém Android nabízí sám o sobě jen primitivní možnost udělení práv aplikaci – uživatel si může vybrat pouze ze dvou možností:

  • Poskytne aplikaci veškerá oprávnění, která žádá – pak může pokračovat v instalaci.
  • Požadovaná oprávnění kompletně odmítne – poté ale bude instalace ukončena.

Žádná “zlatá střední cesta” v podobě výběru oprávnění, která udělíte, a jež naopak zamítnete, v Androidu neexistuje. Samozřejmě je otázkou, kolik uživatelů by si skutečně “pohrálo s nastavením” a jak vysoké procento by nadále bezmyšlenkovitě “odklepávalo” přidělení všech práv.

Často řeší nedostatky “holého” Androidu alternativní ROMky a nejinak je tomu i v tomto případě. Například CyanogenMod nabízí “ochranu soukromí”, sestávající v možnosti konfigurace některých práv jednotlivým aplikacím.

Ochrana soukromí v ROMce CyanogenMod Ochrana soukromí v ROMce CyanogenMod

Ochrana soukromí v ROMce CyanogenMod Ochrana soukromí v ROMce CyanogenMod

Ochrana soukromí v ROMce CyanogenMod Ochrana soukromí v ROMce CyanogenMod

Velmi zajímavý je také program XPrivacy, poskytující podobnou funkcionalitu – dává možnost ovlivnit, která z požadovaných oprávnění aplikace dostane, a která zamítnete, případně kdy podvrhnete nastavené hodnoty. Nevýhodou této aplikace ovšem je, že ke svému fungování vyžaduje práva roota. Podrobnou recenzi tohoto nástroje jsme přinesli před rokem ve článku XPrivacy: omezte aplikacím jejich práva! S Xprivacy například můžete aplikaci, která se snaží zjistit polohu zařízení, vnutit “falešnou představu”, že se nalézáte uprostřed Paříže.

Ochranu soukromí nabídne aplikace XPrivacy Ochranu soukromí nabídne aplikace XPrivacy

Ochranu soukromí nabídne aplikace XPrivacy Ochranu soukromí nabídne aplikace XPrivacy

Ochranu soukromí nabídne aplikace XPrivacy Ochranu soukromí nabídne aplikace XPrivacy

Nevýhodou neoficiálního omezování přístupových práv jsou možné pády aplikací. Pokud vývojáři neošetřili stav, kdy jejich program nedostane požadovaná data, může být výsledkem situace, kdy program “zamrzne” či dokonce zcela “spadne”.

Situace, kdy systém nedovoluje selektivní výběr oprávnění, rozhodně není důvodem k tomu, abyste jen z důvodu dokončení instalace souhlasili se vším, co vývojáři žádají. Naopak byste měli být dvojnásobně ostražití a dávat pozor na to, jaká práva aplikace vyžaduje.

Kde zjistíte požadovaná oprávnění?

V tomto směru panuje maličká nejednotnost v tom, kdy a kde jste coby uživatel seznamován s tím, jaká práva aplikace vyžaduje. Projděme si tedy postupně všechny možné varianty.

Instalace z mobilní aplikace Obchod Play

Poté, co otevřete aplikaci, doporučujeme neklepat hned na tlačítko Instalovat, ale nejprve “odrolovat” dolů, kde se nalézá odkaz Podrobnosti oprávnění. Zde se dočtete vše, co program žádá ke své instalaci a následnému fungování.

Podrobný seznam oprávnění je na konci stránky Podrobný seznam oprávnění je na konci stránky

Podrobný seznam oprávnění je na konci stránky Podrobný seznam oprávnění je na konci stránky

Všimněte si následujícího snímku obrazovky, pocházejícího z aplikace Nejjasnější svítilna zdarma. Jedná se o jednoduchý prográmek, rozsvěcující přisvětlovací LED fotoaparátu, díky čemuž může telefon fungovat jako baterka. Než se dostaneme dál, zamyslete se: k čemu potřebuje taková aplikace ke svému běhu informace o identitě telefonu, nebo přístup k paměťové kartě?

Seznam oprávnění se zobrazí také po stisku tlačítka Instalovat, po kterém následuje zobrazení stručného seznamu požadovaných práv, který je nutné Přijmout, aby došlo k zahájení instalace. Klepnutím na šipky vedle jednotlivých kategorií zobrazíte další podrobnosti. Co myslíte: potřebuje svítilna údaje o vaší poloze?

Seznam oprávnění se zobrazí také po stisku tlačítka Instalovat Seznam oprávnění se zobrazí také po stisku tlačítka Instalovat

Klepnutím na šipky vedle jednotlivých kategorií zobrazíte další podrobnosti Klepnutím na šipky vedle jednotlivých kategorií zobrazíte další podrobnosti

Instalace z webové aplikace Obchod Play

Také ve webové verzi Obchodu Play budete muset posunout stránku, abyste se dostali k odkazu Oprávnění: Zobrazit podrobnosti.

Oprávnění: Zobrazit podrobnosti Oprávnění: Zobrazit podrobnosti

V plovoucím okně si pak můžete prostudovat a zamyslet se nad přehledem všech práv, které aplikace vyžaduje.

Přehled všech požadovaných práv Přehled všech požadovaných práv

Práva jsou také zobrazována po klepnutí na tlačítko Instalovat – i zde je nutné potvrdit, že souhlasíte se vším, co vývojář programu chce, pokud míníte instalaci dokončit.

Požadovaná oprávnění je nutné potvrdit před instalací Požadovaná oprávnění je nutné potvrdit před instalací

Instalace z alternativních zdrojů

V případě, že jste si stáhli instalační APK balíček z jiného zdroje, zobrazí se přehled požadovaných oprávnění krátce po jeho spuštění. V instalaci lze pokračovat jedině tehdy, pokud s oprávněními souhlasíte a klepnete na tlačítko Instalovat.

Přehled požadovaných oprávnění aplikace instalované z APK balíčku Přehled požadovaných oprávnění aplikace instalované z APK balíčku

Přehled požadovaných oprávnění aplikace instalované z APK balíčku Přehled požadovaných oprávnění aplikace instalované z APK balíčku

Důrazně upozorňujeme především na aplikace, u kterých správce oprávnění varuje oranžovým nápisem “může vás to něco stát”! Takový program může (často i bez vašeho vědomí) vytáčet telefonní čísla a odesílat SMS, včetně volání a psaní na čísla se zvýšeným tarifem.

Velkou pozornost věnujte oranžovému varování Velkou pozornost věnujte oranžovému varování

Ne náhodou jsme ve výše uvedených případech použili pro ukázku aplikaci Nejjasnější Svítilna Zdarma (v originále Brightest Flashlight Free) od vývojářského studia GoldenShores Technologies, LLC. Tento program totiž dokazuje, že byste při hledání spolehlivé aplikace neměli spoléhat na vodítka, jako jsou počet stažení či známka v Obchodě Play. Nejjasnější Svítilna má totiž více než padesát milionů instalací a průměrnou známku 4,7 z 5,0 možných, což ji řadí mezi nejlepší aplikace vůbec.

Uživatelé zjevně hodnotí pouze funkcionalitu, ale nedívají se, k čemu dali autorům souhlas. Uživatelé zjevně hodnotí pouze funkcionalitu, ale nedívají se, k čemu dali autorům souhlas.

Uživatelé zjevně hodnotí pouze funkcionalitu – tedy že program rozsvěcí a zhasíná LED telefonu, ale nedívají se, k čemu dali autorům souhlas. Aplikace přitom vydělávala peníze nejen cestou zobrazení reklamních proužků, ale také sběrem osobních dat. Získaná data, obsahující informace o poloze a identifikační údaje zařízení, pak byla odesílána autorovi, který je za úplatu předával třetím stranám. Toto narušení soukromí řešila Federal Trade Commission (FTC) – nezávislá agentura vlády Spojených států, jejímž posláním je ochrana spotřebitele, eliminace a prevence nekalosoutěžních obchodních praktik – přičemž výsledek je z pohledu uživatele tristní: zákaz prodeje nasbíraných dat. Více o této kauze se dočtete ve článku Trest za prodávání dat uživatelů Nejjasnější Svítilny? Jen „klepnutí přes prsty“! Jak se můžete sami přesvědčit, Nejjasnější svítilna je v Obchodě Play nadále a stále požaduje očividně nadstandardní práva.

Kontrolujte, prověřujte, přemýšlejte!

Právě situace, kdy není možné omezovat programům jednotlivé požadavky na přístup k datům a funkcím, by měla být důvodem, proč byste měli číst a věnovat náležitou pozornost všemu, co po vás aplikace při své instalaci žádá. Rozhodně byste neměli bezmyšlenkovitě “odklepnout” požadavek jen proto, že je to nutné pro pokračování instalace. Bez ohledu na to, zda budeme stávající stav považovat za dobrý nebo špatný, je proto velmi důležité, abyste pochopili systém oprávnění a uměli posoudit, zda jsou požadavky relevantní k tomu, co aplikace nabízí a umí. Vyzbrojeni patřičnými znalostmi pak budete moci učinit lépe informovaná rozhodnutí k tomu, zda instalaci umožníte, či nikoli.

Skupiny oprávnění

Google se snaží postupně zjednodušovat systém zobrazování požadovaných oprávnění, takže v aktuální verzi sdružuje jednotlivé požadavky do skupin, které lze dále “rozklikávat”. Základní členění vypadá následovně:

  • Nákupy v aplikaci – toto oprávnění dovoluje provádět nákupy dalších doplňků, vylepšení, skinů a rozšíření. Nákup probíhá skrze Obchod Play a zpravidla bývá podmíněn zadáním hesla. Typické je toto oprávnění třeba u her, kde za reálné peníze můžete zakoupit různá vylepšení, rychlejší opravy, nástroje, zbraně a podobně. Stejně tak se skrze nákupy v aplikaci řeší pořízení plné (“prémiové”) verze programu, nebo zaplacení předplatného služby.
  • Historie zařízení a aplikací – dovoluje programu prohlížet informace o aktivitě v zařízení, spuštěné aplikace, historii prohlížení webu a záložky prohlížeče.
  • Identita – může načíst účty v zařízení a údaje v profilech. Může tak třeba zjistit vaše skutečné jméno.
  • Kontakty/Kalendář – aplikace s těmito oprávněními může přistupovat ke kontaktům, načítat jejich podrobnosti, a/nebo přistupovat ke kalendáři.
  • SMS – program může číst a odesílat textové a multimediální zprávy. U tohoto oprávnění doporučujeme obzvláštní ostražitost, neboť mohou být odesílány SMS na zpoplatněná čísla, tudíž vás to může něco stát.
  • Telefon – program s tímto oprávněním může přistupovat k seznamu hovorů, ale také vytáčet telefonní čísla a vést hovory. Pochopitelně lze toto právo využít i k volání na čísla se zvýšeným tarifem, proto doporučujeme tomuto požadavku věnovat vysokou pozornost.
  • Fotky/média/soubory – takový program může například testovat možnost zápisu na externí úložiště, upravovat a mazat soubory.
  • Fotoaparát/mikrofon – aplikace může používat fotoaparát a/nebo mikrofon telefonu. Samozřejmě zde může být relevantní důvod – například jedná-li se o program, umožňující pořizování fotek, videí a zvuků – ale stejně tak je zde druhá strana mince, kdy mohou být tato oprávnění zneužita pro zachytávání dění kolem telefonu.
  • Informace o připojení Wi-Fi – umožňuje aplikaci zobrazit informace o sítích Wi-Fi, například o tom, zda je povoleno připojení Wi-Fi, nebo názvy připojených zařízení Wi-Fi.
  • Poloha – aplikace může zjišťovat přibližnou (ze základnových stanic a okolních Wi-Fi) nebo přesnou (z družicového systému GPS) polohu zařízení. To je typické pro řadu reklamních systémů v aplikacích, jejichž autoři si na živobytí vydělávají zobrazováním reklamních proužků. Údaje o poloze jsou přitom pro zadavatele důležité, aby vám mohl poskytnout relevantní reklamu s ohledem na zemi či místo, kde se nacházíte.
  • ID zařízení a informace o hovorech – umožňuje aplikaci zjistit telefonní číslo, ID zařízení, zda zrovna probíhá hovor, a vzdálené číslo, se kterým je zařízení v rámci hovoru ve spojení. Zdánlivě bezdůvodný sběr těchto dat může být potenciálně nebezpečný – jedná se totiž o údaje, na jejichž základě lze jednoznačně identifikovat konkrétní zařízení.
  • Ostatní – do této kategorie bývají zařazeny požadavky na možnost stahovat data z Internetu bez nutného souhlasu uživatele, spuštění při startu systému, nebo třeba zabránění přechodu zařízení do režimu spánku. Patří sem také možnost změny zabezpečených nastavení systému, deaktivace či změna stavového řádku, zobrazování síťových připojení, změna připojení k síti, změna nastavení zvuku nebo ovládání vibrací.

Některá oprávnění znějí možná až zlověstně – například “testování přístupu do chráněného úložiště” zavání vstupem aplikace do oblasti, která je nějakým způsobem chráněna. Ve skutečnosti se ale jedná o oprávnění k přístupu na paměťovou kartu, tedy víceméně standardní požadavek.

Pročetli jste si seznam oprávnění a máte pocit, že některé požadavky nedávají s ohledem na slibované funkce programu smysl? Pak rozhodně doporučujeme:

  • Navštívit oficiální stránku aplikace v Obchodě Play.
  • Pokud je k dispozici, podívat se na oficiální stránky autora/vývojářského studia (odkaz najdete v Obchodě Play v sekci Kontaktovat vývojáře jako Navštívit web vývojáře).
V případě nejistoty hledejte vysvětlení práv na webu vývojáře V případě nejistoty hledejte vysvětlení práv na webu vývojáře

Pečlivější vývojáři často vysvětlují, proč jejich aplikace vyžaduje to které oprávnění. Je pak na vás, zda jim uvěříte, nebo aplikaci raději nenainstalujete.

Na co si dát pozor?

Největší pozornost doporučujeme věnovat upozornění “může vás to něco stát”, uvedenému u některých oprávnění. Protože systém nemá možnost zjistit, za jakých okolností může aplikace využívat placené služby, jako jsou volání a odesílání zpráv, upozorňuje uživatele touto obecnou hláškou. Je například jasné, že aplikace na správu SMS bude požadovat právo používat placené služby, jinak by nemohla odesílat textové zprávy. V takovém případě nezbývá než spoléhat, že tohoto práva využije pouze v případě, kdy uživatel hodlá odeslat zprávu.

Podobně některé aplikace vyžadují přístup k ID zařízení, nebo třeba seznamu hovorů. Nejdůležitější je použít trochu selského rozumu – pokud instalujete aplikaci, která nemá nic společného s telefonováním, ale vyžaduje použití telefonu, pak rozhodně doporučujeme důkladně přemýšlet. Například jedná-li se o jednoduchou hru, která vyžaduje možnost realizovat telefonní hovory, pak je velmi pravděpodobné, že se jedná o nekalý záměr.

Z výše uvedeného začíná být zřejmé, že největší bezpečnostní slabinou operačního systému Android je uživatel, protože:

  • Uživatel si musí pročíst seznam požadovaných oprávnění. Bezpečnostní dírou je tedy uživatel, který požadavky nečte a automaticky je “odklepne”.
  • Uživatel musí zvážit, zda požadovaná oprávnění odpovídají nabízeným funkcím. Zde se neobejde bez patřičné pozornosti a potřebné dávky “selského rozumu”, aby porovnal požadavky a reálnou funkci aplikace. “Opravdu program potřebuje přístup k mikrofonu?” “Musí aplikace ke své činnosti znát mou polohu?” Tyto a podobné otázky byste si měli klást, než budete souhlasit s instalací.
  • Nedostatkem na straně systému je možnost pouze povolit nebo zakázat vše.

To, že aplikace vyžaduje nějaké oprávnění, nutně neznamená, že ho bude využívat. Naopak chybějící nadefinované oprávnění může vést až k pádu aplikace. Situaci před časem vysvětlil programátor Michal Mátl, pracující pro společnost Inmite: “Oprávnění se definují v souboru, který se jmenuje AndroidManifest.xml a je součástí zkompilované aplikace. Ten musí programátor vytvořit a sám doplňovat oprávnění. Když programátor chce třeba použít foťák a nemá k tomu oprávnění, tak systém vrátí chybu.”

Částečným řešením by mohl být bezpečnostní systém “App Ops”, který se možná objeví v Androidu L, kdy uživatel bude moci přidělovat a upírat programům jednotlivá oprávnění (nebo skupiny práv). Nicméně i tady nadále zůstanou v hlavní roli “selský rozum”, ochota věnovat čas podrobnému nastavení a alespoň elementární znalosti uživatele.

Resumé aneb Není dokonalý, ale pomůže

Systém udělování oprávnění na Androidu sice určitě není dokonalý, nicméně svůj základní úkol – seznámit uživatele s tím, co daná aplikace může provádět v jeho telefonu – plní dostatečně. Na rozdíl od konkurenční platformy iOS Google nevstupuje do vztahu mezi uživatelem a vývojářem aplikace, což je na jedné straně dobře, protože aplikaci a její aktualizace lze velmi rychle publikovat v repozitáři, na druhé straně ochrana uživatele a dat je v jeho rukách. Tvůrci škodlivých aplikací tak mohou vcelku dobře spoléhat na neopatrné uživatele, kteří nečtou informační dialogy a bezhlavě je “odklepnou”.

Pokud vás otázka bezpečnosti instalace aplikací na zařízení s Androidem zajímá více, doporučujeme také náš starší článek Nenechte se špehovat svým Androidem! aneb Proč sledovat oprávnění aplikací?

Myslíte si, že stávající systém správy oprávnění aplikací na Androidu je dostatečný? Nebyl by lepší způsob, na který si zvykli majitelé prvních chytrých telefonů, kde například bylo možné odsouhlasit nebo odmítnout každé připojení k Internetu? Myslíte si, že vyšší bezpečnosti pomůže možnost povolit či zakázat jednotlivá oprávnění zvlášť pro každou aplikaci? Jak vy sami postupujete při instalaci aplikací do svého telefonu/tabletu? Studujete seznam požadovaných oprávnění? Podělte se o své zkušenosti, postřehy a názory v diskuzi pod článkem!

Inspirováno článkem Jacka Wallena What to look for in Android permissions ze serveru TechRepublic.

Karel Kilián
O Autorovi - Karel Kilián

S překonanou čtyřicítkou je s náskokem nejstarším členem redakce :-). Před několika lety hypoteticky vymyslel operační systém svých snů, aby následně zjistil, že přesně na… více o autorovi

Mohlo by vás zajímat

Komentáře (17)