Měli jsme tu tento týden bezpečnostní (i když asi nepříliš závažný) problém procesorů Intel nazvaný CrossTalk. V zájmu spravedlnosti byla ovšem zranitelnost odhalená také v procesorech AMD, respektive jeho APU s integrovanou grafikou.
AMD ve středu oznámilo nález chyby nazvané SMM Callout Privilege Escalation (CVE-2020-12890), která se nachází v kódu AGESA několika procesorů APU (s integrovanou grafikou). Podle AMD postihuje vydaných mezi lety 2016. To by asi mohlo znamenat 28nm Stoney Ridge, možná Bristol Ridge a APU Ryzeny 2000 a 3000, ale ne 7nm Ryzeny 4000 Renoir. Ty vyšly letos.
Bug (v UEFI) platformy AMD
Neupřesněná chyba v AGESA má útočníkovi umožnit spustit libovolný kód v tzv. režimu SMM (System Management Mode – viz Wikipedia). To je docela problém, protože tento režim zpracovávání kódu by měl být dostupný pouze pro role jako je obsluha hardwaru (řízení spotřeby, emulace starších zařízení). Uživatelský kód ani operační systém nemají možnost kód v SMM spouštět ale ani k němu nijak přistupovat, SMM běží ve zcela odděleném nepřístupném adresním prostoru. Smyslem bylo, aby se na CPU dala „po povrchem“ provozovat obsluha různé funkce hardwaru transparentně pro operační systém běžící na PC.
Kód běžící v SMM je z pohledu uživatele zcela neviditelný a nevidí ho ani třeba antiviry, jde o úroveň vykonávání kódu ještě o stupeň nižší (Ring -2) než by byl třeba hypervizor (Ring -1) ve vztahu k hostovanému operačnímu systému. Kompromitování SMM a možnost spustit v něm vlastní kód je tedy velmi lákavý cíl pro hackery, protože jim dovoluje vytvořit neviditelný rootkit nebo spyware.
Jak přesně může útočník kód do SMM injektovat, AMD neuvádí, ale sděluje, že musí nejprve mít lokální přístup v operačnímu systému s adminsitrátorskými právy, případně fyzický přístup k počítači. Není asi možné útok provést vzdáleně nebo třeba jen z kontext webového prohlížeče/stránky.
Zranitelnost bude třeba opravit aktualizací BIOSu
Pravděpodobně asi nejde o hardwarovou chybu procesoru, ale o softwarovou chybu v modulu AGESA, což je kód sloužící jako jádro BIOSů (UEFI) pro procesory AMD. AMD už údajně výrobcům desek a počítačů dodalo aktualizace tohoto kódu AGESA s opravou díry pro většinu dotčených procesorů, přičemž zbylé mají být hotové do konce nynějšího měsíce.
Tuto opravu AGESA ale ještě budou muset výrobci zabalit do svých BIOSů a teprve jejich prostřednictvím bude možné počítače opravit. Bude to tedy vyžadovat naflashování nového BIOSu do desky. Používáte-li tedy nějaké APU z let 2016 až 2019, vyhlížejte u svého výrobce desky či notebooku update BIOSu s touto opravou (případně si o ní zkuste zažádat, pokud ji výrobce ne a ne vydat).
Jelikož inkriminovaný kód je jen částí UEFI a neměl by ovlivňovat přímo zpracovávání programů v jádrech CPU/GPU, neměly by kvůli této opravě vzniknout nějaké propady výkonu.
Galerie: APU procesory AMD Ryzen s integrovaným GPU do roku 2019
Stručný popis chyby od AMD:
SMM Callout Privilege Escalation (CVE-2020-12890)
6/17/20
AMD is aware of new research related to a potential vulnerability in AMD software technology supplied to motherboard manufacturers for use in their Unified Extensible Firmware Interface (UEFI) infrastructure and plans to complete delivery of updated versions designed to mitigate the issue by the end of June 2020.
The targeted attack described in the research requires privileged physical or administrative access to a system based on select AMD notebook or embedded processors. If this level of access is acquired, an attacker could potentially manipulate the AMD Generic Encapsulated Software Architecture (AGESA) to execute arbitrary code undetected by the operating system.
AMD believes this only impacts certain client and embedded APU processors launched between 2016 and 2019. AMD has delivered the majority of the updated versions of AGESA to our motherboard partners and plans to deliver the remaining versions by the end of June 2020. AMD recommends following the security best practice of keeping devices up-to-date with the latest patches. End users with questions about whether their system is running on these latest versions should contact their motherboard or original equipment/system manufacturer.
We thank Danny Odler for his ongoing security research.