Co je to notarizace a jak ovlivňuje spouštění software?

Apple oznámil na WWDC 2018 zpřísnění bezpečnostních pravidel spouštění software vyžadováním tzv. notarizace. Od operačního systému macOS 10.14.5 tak nebude stačit již vyžadovaný digitální podpis a všechny nové nebo aktualizované doplňky jádra a veškerý software od nově registrovaných vývojářů musí být notarizován. V budoucích verzích macOS bude notarizace vyžadována pro veškerý software. Co ale vlastně notarizace je?

Notarizace je proces, který na jedné straně dává uživatelům větší jistotu, že stažený software je bezpečný a na straně druhé vývojářům, že jejich kód neobsahuje žádné problematické části. Nepleťme si ale notarizaci se systémem kontroly aplikací App Review. Notarizační servery jsou automatizované systémy, které hledají v zaslaných binárních souborech potencionálně škodlivý kód a kontrolují, jestli nenastal problém s digitálními podpisy. Výsledky těchto testů jsou dostupné tedy poměrně rychle. Pokud je vše v pořádku, systém vygeneruje stvrzenku, kterou připojí k softwaru. Stejnou stvrzenku vloží do online databáze pro Gatekeeper.

Pokud uživatel instaluje software poprvé, přidělená stvrzenka (buď připojená k softwaru nebo v online databázi) oznámí Gatekeeperu, že Apple notarizoval software. Gatekeeper zobrazí tuto informaci uživateli a ten si může vybrat, jestli bude v procesu spouštění pokračovat.


Notarizovat lze různé distribuční podoby software. Především:

  • aplikace pro macOS
  • doplňky jádra
  • obrazy disku ve formátu UDIF
  • instalační balíčky

Notarizace zároveň zajistí, že nedojde k úniku podpisových klíčů pro vývojářské Developer ID. Notarizační služba totiž ukládá průběh auditu software a pokud dojde k jeho pozměnění, lze vydanou stvrzenku zrušit.

 

Lze tento proces obejít?

V současné verzi macOS 10.14.5 beta 2 existuje možnost zařadit doplňky jádra na whitelist. Pokud máte ve firmě nasazeno UAMDM (User Approved MDM), lze je zařadit na tento whitelist a notarizace nebude vyžadována. Budoucí verze macOS však mohou přistupovat k whitelistování jinak.

 

Použité zdroje

Apple  Developer Documentation
Cannonball

Comments
Logicworks