Byla vydána nová verze zabezpečené mobilní platformy GrapheneOS 2024011300, která je odvozená od kódové základny Android (AOSP, Android Open Source Project) s rozšířenými a upravenými funkcemi pro zvýšení bezpečnosti a ochranu soukromí. Tento projekt se dříve vyvíjel pod názvem AndroidHardening a ještě předtím se odtrhnul od projektu CopperheadOS po konfliktu jeho zakladatelů. V GrapheneOS je oficiálně podporována většina aktuálních zařízení Google Pixel (Pixel 4/5/6/7/8, Pixel Fold, Pixel Tablet). Vývoj projektu je šířen pod licencí MIT.
GrapheneOS zahrnuje mnoho experimentálních technologií zaměřených na posílení izolace aplikací, podrobné řízení přístupu, blokaci běžných zranitelností a ztížení práce exploitů. Například platforma používá vlastní implementaci malloc a upravenou variantu libc s ochranou před poškozením paměti, stejně jako přísnější oddělení adresního prostoru procesů. Místo JIT se v Android Runtime používá pouze proaktivní (AOT, ahead-of-time) kompilace. V jádru Linuxu byly zahrnuty různé dodatečné ochranné mechanismy, například do slub byly přidány kanárkové značky pro zablokování přetečení bufferů. Pro posílení izolace aplikací jsou používané SELinux a seccomp-bpf.
Je možné poskytnout přístup k síťovým operacím, senzorům, adresáři a periferním zařízením (USB, fotoaparát) pouze vybraným aplikacím. Čtení ze schránky je povoleno pouze aplikacím, ve kterých je aktuálně aktivní vstupní fokus. Výchozím nastavením je zakázáno získávat informace o IMEI, MAC adrese, sériovém čísle SIM karty a dalších hardwarových identifikátorech. Byla přijata dodatečná opatření pro izolaci procesů souvisejících s Wi-Fi a Bluetooth a zamezení únikům v důsledku bezdrátové aktivity. Mnoho mechanismů z projektového vývoje bylo přeneseno do hlavní kódové základny Android.
V GrapheneOS se používá kryptografická verifikace načítaných komponentů a pokročilé šifrování dat na úrovni souborových systémů ext4 a f2fs (data jsou šifrována pomocí AES-256-XTS a názvy souborů AES-256-CTS s využitím HKDF-SHA512 pro generování samostatného klíče pro každý soubor), nikoli na úrovni blokového zařízení. Data v systémových oddílech a v každém uživatelském profilu jsou šifrována různými klíči. Využívají se dostupné hardwarové možnosti pro urychlení šifrovacích operací. Na zamykací obrazovce je zobrazeno tlačítko pro ukončení relace, po jehož stisknutí jsou klíče pro dešifrování vymazány a úložiště je převedeno do neaktivovaného stavu. Existuje možnost nastavení zákazu instalace dodatečných aplikací pro vybrané uživatelské profily. Pro ochranu před prolomením hesel je zavedena systém zpoždění, závislý na počtu neúspěšných pokusů (od 30 sekund do 1 dne).
Součástí GrapheneOS mnohem zásadněji nejsou aplikace a služby Google, ani alternativní implementace služeb Google, jako je microG. Zároveň je však možnost instalace služeb Google Play v samostatném izolovaném prostředí, které nemá žádné speciální privilegium. Projekt také vyvíjí několik vlastních aplikací zaměřených na ochranu informací a soukromí. Například nabízí prohlížeč Vanadium založený na Chromiu a modifikovanou verzi enginu WebView, zabezpečeného prohlížeče PDF, firewall, aplikaci Auditor pro verifikaci zařízení a odhalování vniknutí, aplikaci pro práci s kamerou zaměřenou na zajištění soukromí a systém pro vytváření šifrovaných záloh Seedvault.
Mezi změnami v nové verzi:
- Byla kompletně přepracována implementace mechanismu automatického restartu, která byla převedena na použití časovače v procesu init, nikoli v procesu system_server, což zvýšilo bezpečnost a vyloučilo restart ještě nikdy nezámknutého zařízení. Čas automatického restartu byl zkrácen z 72 na 18 hodin. Hlavní myšlenkou automatického restartu je resetovat aktivované (dešifrované) oddíly s uživatelskými daty do počátečního nešifrovaného stavu po určitém čase neaktivity.
Data profilu uživatele po restartování zařízení jsou zašifrována a dešifrována pouze po zadání přihlašovacího hesla uživatelem. Pokud uživatel neodemkne aktivovanou relaci déle než 18 hodin, zařízení se automaticky restartuje (časový limit lze změnit v nastavení Nastavení > Bezpečnost > Automatické restartování), aby se zabránilo analýze klíčů, které zůstávají v paměti, v případě, že zařízení se dostane do jiných rukou.
Jako demonstraci nutnosti aplikace funkce automatického restartování vývojáři GrapheneOS zmínili nedávno objevené zranitelnosti ve smartphonech Google Pixel a Samsung Galaxy, které umožňují firmám specializujícím se na forenzní analýzu špehovat uživatele a extrahovat data, když je zařízení v aktivovaném stavu (když je relace aktivní a data dešifrována).
- Přidán prohlížeč protokolů (Nastavení > Systém > Zobrazit protokoly), který umožňuje zhodnotit vznikající problémy a usnadnit přípravu zpráv o chybách.
- Přepracováno uživatelské rozhraní pro odesílání zpráv o havarování.
- Do adevtool byla přidána podpora Pixel Camera Service, což umožňuje používat noční režim v aplikacích na smartphonech Pixel 6 a novějších.
- Podpora zařízení, která nejsou kompatibilní s Androidem 14, byla zastavena v adevtool.
- Přidán výstup notifikací o aktivaci detektoru poškození paměti v malloc.
- Podpora sysrq byla vypnuta v jádře Linux.
- Jádro Linux bylo aktualizováno na poslední aktualizaci GKI (Generic Kernel Image) 5.10.206 pro zařízení Pixel 6, Pixel 6 Pro, Pixel 6a, Pixel 7, Pixel 7 Pro, Pixel 7a, Pixel Tablet, Pixel Fold, a také na verzi 5.15.145 pro zařízení Pixel 8 a Pixel 8 Pro. Dále byly připraveny sestavení s jádrem 6.1.69.
- Prohlížeč Vanadium byl aktualizován na kódovou základnu Chromium 120.0.6099.210.0.
Zdroj: opennet.ru
