Pokud vám to náhodou uniklo, minulý týden byly za velké publicity zveřejněny informace o čtyřech bezpečnostních chybách, které podle tvrzení do té doby neznámé bezpečnostní firmy CTS-Research měly obsahovat procesory AMD Ryzen a Epyc, či v jednom případě čipová sada Promontory (X370/X399, B350, A320).
Případ měl zvláštní okolnosti, protože chování bezpečnostní firmy trochu budilo dojem, že se pokouší způsobit co největší škody. Chyby byly například před AMD do poslední chvíle drženy v tajnosti, ač už o nich byly zpraveny další osoby a dokonce média, místo aby byla poskytnuta obvyklá např. 90denní lhůta. To znemožnilo, aby byly opravy připraveny (a uživatelé ochránění) včas ještě před odhalením slabých míst.
AMD nyní vydalo první podrobné vyjádření k těmto chybám od té doby, co minulý týden potvrdilo, že informace analyzuje a hledá řešení. Pro uživatele to naštěstí vypadá poměrně příznivě, opravy by podle firmy měly být dostupné v řádu týdnů. To je v kontrastu s tvrzením oněch bezpečnostních výzkumníků argumentujících tím, že vývoj oprav by trval přinejmenším mnoho měsíců a uváděli to jako důvod, proč nebyla poskytnuta ona lhůta dle zvyklostí tzv. „responsible disclosure“.
Chyby jsou ve firmwaru
AMD uvádí, že žádná ze zranitelností se netýká přímo architektury procesorů Ryzen, ale že jde o chyby ve firmwaru bezpečnostního a řídícího koprocesoru AMD Secure Processor (PSP) v případě chyb označených Masterkey, Ryzenfall a Fallout na jedné straně a čipsetu na straně druhé v případě chyby Chimera. První tři chyby mají být opravené aktualizací firmwaru pro Secure Processor, která má vyjít „během nadcházejících týdnů“. Firmware pro PSP je však součástí BIOSu (UEFI) základní desky, takže patch bude nutné instalovat touto cestou a jeho dostupnost pro daný počítač či desku bude záviset na výrobci, což může jeho příchod na svět zdržet.
The security issues identified by the third-party researchers are not related to the AMD “Zen” CPU architecture or the Google Project Zero exploits made public Jan. 3, 2018. Instead, these issues are associated with the firmware managing the embedded security control processor in some of our products (AMD Secure Processor) and the chipset used in some socket AM4 and socket TR4 desktop platforms supporting AMD processors.
Situace s chybou Chimera, která se týká čipové sady na platformě AM4 a TR4 (nikoliv už Epyců), je poněkud odlišná. AMD uvádí, že na vyvinutí opravy spolupracuje s „dodavatelem“, což by měla být firma ASMedia. Podstata těchto oprav není jasná, nicméně také budou distribuovány formou aktualizace BIOSu, jelikož firmware pro čipset se při bootu nahrává z něj. Zde nějaký předběžný časový horizont sdělen nebyl a je asi pravděpodobné, že věc může kvůli interakci s další firmou trvat déle.
Zranitelnost Chimera postihuje i řadu desek pro procesory Intel
Co je možná dobré podotknout: Chimera není jen chybou čipsetu Promontory, ale týká se i samostatných řadičů USB 3.1 od ASMedia, jako jsou čipy ASM1042, ASM1142, ASM2142 a ASM3142. Ty se nacházely už na deskách pro platformu LGA 1150 a najdete je na velkém množství desek pro Skylake, Kaby Lake i na platformách X99/X299. I tyto čipy mají stejný problém, jak nakonec zástupci CTS-Labs přiznali v tomto rozhovoru s Ianem Cutressem z Anandtechu a Davidem Kanterem z RealWorldTech. Všechny tyto desky budou tudíž potřebovat stejnou opravu, jakou dostane platforma AM4 (a TR4).
Čím zranitelnosti hrozí
AMD uvádí, že chyba Chimera dovoluje útočníkovi po instalaci upraveného ovladače přístup do fyzické paměti, přičemž útočník nahrává do čipové sady škodlivý kód, jenž je těžké odhalit. Nicméně ten nepřežije restart, takže odstranění onoho ovladače odstraní i nákazu. V tomto případě také není jasně sděleno, zda je problém také jen ve firmwaru a nejde o hardwarovou chybu v návrhu. AMD ale potvrdilo, že riziko zneužití je jen tehdy, pokud již útočník získal administrátorský přístup k systému. Toto platí i pro všechny ostatní chyby. Znamená to, že je možné je zneužít až po kompletním ovládnutí systému, takže mohou v některých případech zhoršit situaci, když už hacker dosáhl svého, ale nemohou napadení spustit. Zdá se mimochodem také, že alespoň některé díry nejsou přístupné z virtualizovaného systému, jen z hypervizorského pod ním, což poskytuje určitou ochranu na serveru.
Chyby Ryzenfall a Fallout spočívají v zápisu do registrů komunikujících se Secure Processorem (opět jen s administrátorským přístupem) a zranitelnosti dovolují touto cestou deaktivovat některé bezpečnostní funkce. Je také možné dostat nějaký škodlivý kód do oblasti SMM, kde je těžké ho odhalit, nicméně opět nejde o persistentní nákazu (vydrží jen do vypnutí či restartu, jelikož se nachází v RAM).
Chyba Masterkey má stejný dopad, dovoluje útočníkovi deaktivovat bezpečnostní funkce a kontroly PSP. Útok probíhá nahráním upraveného firmwaru do desky, což znamená, že jako jediná z těchto chyb je taková nákaza perzistentní i po restartu, dokud není zase nahrán legitimní BIOS (UEFI). Nutnost nahrání firmwaru také znamená, že v některých případech by napadení mohla deska zabránit, pokud při aktualizaci akceptuje jen kryptograficky ověřený obraz BIOSu.
Výkon prý postižen nebude
AMD uvádí, že další informace o probíhající analýze chyb budou sděleny později, stejně jako bližší podrobnosti o plánu vydávání oprav. V popisu chyb je mimochodem také uvedeno, že tyto zranitelnosti nesouvisí s problémy Meltdown a Spectre (což zřejmě někdo pokládal za nutné vyjasnit). Zmíněno je ovšem také to, že u žádné z děr nemá oprava nijak postihnout výkon. Bloombergu jinak AMD také sdělilo, že neví o známkách, dle nichž by chyby byly již někde zneužívány. Na druhou stranu ale údajně zaznamenalo neobvyklé obchody s akciemi a informovalo o nich příslušné úřady. Právě manipulace s akciemi se přitom jeví jako nejlepší vysvětlení, proč se v CTS-Labs při hlášení chyb neřídili oněmi zásadami zodpovědného zveřejnění a také závažnost problému dramatizovali.
Jelikož oprava bude na úrovni firmwaru, zůstane po těchto chybách určitého riziko dané tím, že útočník bude schopen existenci děr vrátit nahráním starého zranitelného firmwaru. To je nicméně nezanedbatelná překážka, jelikož kromě nutnosti mít administrátorský přístup je nutné připravit upravený škodlivý BIOS specifický pro desku počítače a tedy touto cestou snad nelze jednoduše zkoušet masové „drive-by“ útoky. Podobná situace je i s opravami děr v Intel ME, kde je stejné riziko, že díru někdo obnoví nepozorovaným přeflashováním UEFI. Intel kvůli tomu zdá se plánuje vyvinout systém, který by downgradování firmwaru znemožnil. Je vidět, že smysl takové opatření má, i když těžko říct, zda na tom něco nezmění nedávná smůla, kdy aktualizace proti chybě Spectre způsobovala chyby a firma sama doporučila BIOS downgradovat.