Jak fungují měsíční aktualizace bezpečnostních oprav pro Android

click fraud protection

Přemýšleli jste někdy, jak fungují měsíční aktualizace bezpečnostních oprav pro Android? Už se nedivte, protože pro vás máme jen základní nátěr, abyste pochopili celý proces.

Společnost Google vydává měsíční bezpečnostní bulletiny od srpna 2015. Tyto bulletiny zabezpečení obsahují seznam odhalených chyb zabezpečení, které byly opraveny a které ovlivňují platformu Android, jádro Linuxu a další součásti dodavatelů s uzavřeným zdrojovým kódem. Každou zranitelnost v bulletinech buď objevil Google nebo společnosti. Každá uvedená zranitelnost má číslo CVE (Common Vulnerabilities and Exposures) a související odkazy, typ zranitelnosti, posouzení závažnosti a ovlivněnou verzi AOSP (pokud použitelný). Ale navzdory zdánlivě zjednodušujícímu procesu za tím, jak bezpečnostní záplaty Androidu fungují, ve skutečnosti něco takového existuje komplikované procházení zákulisí, které umožňuje, aby se váš telefon dostával měsíčně nebo (doufejme) téměř měsíčně náplasti.

Co vlastně tvoří bezpečnostní záplatu?

Možná jste si všimli, že každý měsíc existuje dva úrovně bezpečnostních záplat. Formát těchto patchů je buď YYYY-MM-01 nebo YYYY-MM-05. Zatímco RRRR a MM zjevně představují rok a měsíc, „01“ a „05“ ve skutečnosti neznamenají den v měsíci, ve kterém byla tato úroveň bezpečnostní opravy vydána. Místo toho jsou 01 a 05 ve skutečnosti dvě různé úrovně oprav zabezpečení vydané ve stejný den každý měsíc – úroveň opravy s 01 na konci obsahuje opravy rámce Android, ale ne záplaty dodavatele nebo upstream záplaty jádra Linuxu. Záplaty dodavatele, jak jsme definovali výše, se týkají oprav komponent s uzavřeným zdrojem, jako jsou ovladače pro Wi-Fi a Bluetooth. Úroveň bezpečnostních záplat označovaná -05 obsahuje tyto záplaty dodavatele i záplaty v jádře Linuxu. Podívejte se na níže uvedenou tabulku, která vám může pomoci v pochopení.

Úroveň měsíční opravy zabezpečení

2019-04-01

2019-04-05

Obsahuje dubnové rámcové záplaty

Ano

Ano

Obsahuje opravy April Vendor + Kernel

Ne

Ano

Obsahuje March Framework Patch

Ano

Ano

Obsahuje March Vendor + Kernel Patches

Ano

Ano

Někteří výrobci OEM se samozřejmě mohou rozhodnout zahrnout své vlastní opravy a aktualizace také do aktualizací zabezpečení. Většina výrobců OEM má svůj vlastní pohled na Android, takže dává smysl pouze to, že můžete mít například zranitelnost na telefonu Samsung, která neexistuje na Huawei. Mnoho z těchto výrobců OEM také vydává své vlastní bulletiny zabezpečení.

  • Google Pixel
  • Huawei
  • LG
  • Motorola
  • HMD Global
  • Samsung

Časová osa opravy zabezpečení od Googlu do vašeho telefonu

Opravy zabezpečení mají časovou osu zhruba 30 dní, i když ne každý OEM může využít celou délku této časové osy. Pojďme se podívat na Oprava zabezpečení z května 2019 například a můžeme rozebrat celou časovou osu za vytvořením tohoto patche. Firmy jako Nezbytný podaří získat jejich bezpečnostní aktualizace ten samý den jako Google Pixel, tak jak to dělají? Krátká a jednoduchá odpověď je, že jsou Android partner. Bezpečnostní bulletin z května 2019 vyšlo 6. května, přičemž jak Google Pixels, tak Essential Phone dostávají téměř okamžité aktualizace.

Co to znamená být partnerem pro Android

Partnerem Androidu nemůže být jen tak každá společnost, i když je pravda, že jím je v podstatě každý velký OEM Android. Android Partners jsou společnosti, kterým je udělena licence k používání značky Android v marketingových materiálech. Mohou také dodávat služby Google Mobile Services (GMS – označuje téměř všechny služby Google), pokud splňují požadavky uvedené v Compatibility Definition Document (CDD) a projít testem Compatibility Test Suite (CTS), Vendor Test Suite (VTS), Google Test Suite (GTS) a několika dalšími testy. Existují výrazné rozdíly v procesu oprav zabezpečení pro společnosti, které nejsou Android Partner.

  • Opravy rámce Android jsou jim k dispozici po začlenění do AOSP 1–2 dny před vydáním bulletinu zabezpečení.
  • Upstream záplaty linuxového jádra lze vybrat, jakmile budou k dispozici.
  • Opravy od dodavatelů SoC pro komponenty s uzavřeným zdrojovým kódem jsou k dispozici v závislosti na dohodách s dodavatelem SoC. Všimněte si, že pokud dodavatel poskytl OEM přístup ke zdrojovému kódu komponent (komponent) s uzavřeným zdrojovým kódem, pak OEM může problém (problémy) opravit sám. Pokud OEM nemá přístup ke zdrojovému kódu, musí počkat, až prodejce vydá opravu.

Pokud jste Android Partner, máte to hned mnohem jednodušší. Partneři systému Android jsou informováni o všech problémech s rámcem Android a problémech s jádrem Linuxu nejméně 30 dní před zveřejněním bulletinu. Google poskytuje záplaty pro všechny problémy, které mohou OEM sloučit a otestovat, ačkoli záplaty komponent závisí na dodavateli. Opravy pro problémy s rámcem Android zveřejněné například v bulletinu zabezpečení z května 2019 byly partnerům systému Android poskytnuty minimálně již 20. března 2019*. To je hodně času navíc.

*Poznámka: Google může, a často to dělá, aktualizovat opravy pro nejnovější bezpečnostní bulletin až do vydání pro veřejnost. K těmto aktualizacím může dojít, pokud byly nalezeny nové zranitelnosti a chyby, pokud se Google rozhodne odstranit určité opravy z měsíčního bulletinu kvůli porušení kritických komponent, pokud Google aktualizuje opravu, aby vyřešila chybu vytvořenou předchozí verzí opravy, a další důvodů.

Proč musím čekat tak dlouho, než obdržím bezpečnostní opravu na svém telefonu?

I když je pravda, že partneři systému Android (čti: všichni hlavní výrobci OEM) obdrželi bezpečnostní záplaty v dostatečném předstihu Mnoho z nich si bolestně uvědomuje, že pravděpodobně nedostanou bezpečnostní aktualizaci ještě několik měsíců po jejím vydání uvolnění. To je obecně způsobeno jedním ze čtyř důvodů.

  • Výrobci OEM možná budou muset provést rozsáhlé technické změny, aby se přizpůsobili opravě zabezpečení, protože může být v konfliktu se stávajícím kódem.
  • Dodavatel je pomalý při poskytování aktualizačního zdrojového kódu pro komponenty s uzavřeným zdrojovým kódem.
  • Certifikace dopravce může chvíli trvat.
  • Společnosti nemusí být ochotny vydat aktualizaci zabezpečení, aniž by současně vydaly nějakou funkci.

I když to všechno jsou pádné důvody pro to, aby firma nevydala bezpečnostní záplatu, koncového uživatele to vždy nezajímá. Je pravda, že koncový uživatel se také vždy nezajímá o bezpečnostní záplaty, i když by měl. Iniciativy jako Project Treble, rozšířený Linux LTS, a Hlavní linie projektu pomáhají eliminovat technické potíže spojené se slučováním těchto bezpečnostních záplat, ale nestačí to k tomu, aby se výrobci OEM neustále snažili vydávat aktualizace. S Generic Kernel Image, neboli GKI, budou mít prodejci SoC a OEM snazší čas se začleňováním upstream linuxových kernel patchů, i když pravděpodobně uvidíme první zařízení s GKI až příští rok.

Ale zajímavou informací, kterou většina neví, jsou hlavní výrobci OEM musí poskytovat „nejméně čtyři aktualizace zabezpečení“ do jednoho roku od uvedení zařízení a celkově 2 roky aktualizací. Google tyto konkrétní podmínky nepotvrdil, ale společnost potvrdila, že „pracovali na zabudování bezpečnostních záplat do [svých] dohod OEM“. Pokud jde o zařízení Android Enterprise Recommended (AER), zařízení musí získat aktualizace zabezpečení do 90 dnů od vydání po dobu 3 let. K získání jsou nutná odolná zařízení AER 5 let bezpečnostních aktualizací. Zařízení Android One by měla dostávat bezpečnostní aktualizace každý měsíc po dobu 3 let.

Co obsahuje bezpečnostní záplata?

Oprava zabezpečení je jen další aktualizací, i když obecně mnohem menší se změnami jednotlivých rámců a systémových modulů, spíše než celosystémovými vylepšeními nebo změnami. Společnost Google poskytuje výrobcům zařízení OEM každý měsíc soubor zip, který obsahuje opravy pro všechny hlavní verze systému Android, které jsou v současnosti stále podporovány, spolu se sadou testů zabezpečení. Tato testovací sada pomáhá výrobcům OEM zachytit mezery v bezpečnostních záplatách, aby jim nic neuniklo a že záplaty byly správně začleněny. Jak měsíc plyne, Google může provést drobné revize, jako je rozhodnutí, že jeden konkrétní patch je volitelný, zejména pokud dojde k problémům s jeho implementací.

A co vlastní ROM?

Pokud váš smartphone nedostává mnoho bezpečnostních aktualizací, nemusí to nutně znamenat, že je lepší přejít na vlastní ROM. I když je pravda, že získáte aktualizace zabezpečení, které byste jinak nezískali, je to jen polovina příběhu. Odemknutí bootloaderu vás vystavuje riziku fyzických útoků na vaše zařízení, i když na straně softwaru je zabezpečení posíleno. To neznamená, že byste neměli používat vlastní ROM, jde jen o to, že existují další obavy, pokud jde o jejich použití, které neplatí, pokud je váš bootloader zamčený. Pokud se více obáváte o softwarovou stránku věci, pak je pro vás stále lepší vlastní ROM, která dostává časté bezpečnostní záplaty.

Ale pamatujete si, že jsme mluvili o rozdílu mezi záplatami YYYY-MM-01 a YYYY-MM-05? Úroveň opravy -05 obsahuje záplaty jádra Linuxu a také záplaty dodavatele - záplaty aplikované na software s uzavřeným zdrojovým kódem. To znamená, že vývojáři vlastních ROM jsou vydáni na milost a nemilost všem OEM, pro které vyvíjejí, a zda OEM vydá aktualizované bloby nebo ne. To je v pořádku pro zařízení, která jsou stále aktualizována výrobcem, ale pro zařízení, která ne, lze aplikované opravy použít pouze na framework Android a jádro Linuxu. To je důvod, proč LineageOS' Důvěryhodné rozhraní ukazuje dvě úrovně oprav zabezpečení - jedna je platforma a druhá je prodejce. I když vlastní ROM pro nepodporovaná zařízení nemohou plně integrovat všechny nejnovější opravy, budou bezpečnější než starší, zastaralé ROM.