Aplikační sandbox

Platforma OS Android využívá výhod linuxového zabezpečení uživatelů, hlavně identifikaci a izolaci nástrojů aplikací. Každá aplikace je spouštěna jako oddělený proces s unikátním uživatelským ID (též UID), které je přiřazováno OS Android. Tímto způsobem nepracuje žádný jiný operační systém (ani tradiční linuxová konfigurace u které mají procesy v rámci jednoho uživatele stále stejná práva), na kterém také běží více aplikací se stejným uživatelským oprávněním. O tuto funkci se na úrovni jádra stará Aplikační Sandbox. Jádro zajišťuje bezpečnost mezi aplikacemi a systémem na procesní úrovni, kdy jsou aplikacím při- řazována ID, pomocí nichž mají aplikace povolení přístupu k určitým operacím. Běžně se aplikace nemohou vzájemně ovlivňovat a mají omezený přístup do operačního systému. Pokud se aplikace A pokouší o neoprávněný přístup k aplikaci B, například čtení jejích dat nebo vytáčení čísla bez povolení, je jí to operačním systémem zakázáno.

Ačkoliv je Aplikační Sandbox uložen v jádře, rozšiřuje se i do nativního kódu a do aplikací operačního systému. Všechen software vystavěný nad Linuxovým jádrem, včetně knihoven operačního systému, aplikačního frameworku, aplikační runtime a všech aplikací, je spouštěn pomocí Aplikačního Sandboxu. Problémem jiných platforem je, že jsou vývojáři nuceni pracovat se speciálním vývojářským frameworkem nebo specifickým jazykem za účelem zvýšení bezpečnosti. Díky Sandboxu je totiž nativní kód stejně bezpečný, jako kód interpretovaný, a proto nemá OS Android žádná omezení toho, jak má být aplikace napsána.Pokud v některých operačních systémech nastane porušení integrity paměti, jedná se o zásadní ohrožení bezpečnosti. V OS Android se tak neděje díky tomu, že všechny aplikace jsou na úrovni operačního systému kontrolovány Aplikačním Sandboxem. Chyba porušení integrity dovolí pouze spuštění libovolného kódu v rámci dané aplikace, která má povolena práva od OS Android.

Aplikační Sandbox stejně jako všechny ostatní bezpečnostní prvky OS Android není neprolomitelný. Aby však bylo možné obejít Aplikační Sandbox, je třeba narušit bezpečnost Linuxového jádra.