AMD má chybu v aktuálním mikrokódu pro CPU Piledriver, hrozí při virtualizaci

4. 3. 2016

Sdílet

 Autor: Redakce

Naposled jsme tu řešili nějakou chybu v procesoru u Skylake, kde se projevovala nestabilitou a zamrznutím PC v Prime95. Errata v čipech mají ovšem obě firmy a u moderních procesorů se jim prakticky nelze vyhnout. Nyní se objevil „bug“ v CPU pro změnu u AMD, a to v architektuře Piledriver. Respektive zřejmě v jejich mikrokódu, pravděpodobně jde o chybu, která byla zavlečena až aktualizací v poslední zveřejněné verzi.

Problém byl objeven u procesorů FX s architekturou Piledriver založených na čipu Vishera (a potažmo odvozených Opteronech 3300/4300/6300) s mikrokódem 0x06000832, který by měl být nejčerstvější verzí. Chyba je alespoň částečně i bezpečnostního rázu. Zatím byla popsána jen v situaci, kdy na procesoru běží v hypervizoru Xen nebo qemu-kvm pod Linuxem virtualizovaný systém. Pokud je v něm spuštěn určitý speciální škodlivý kód, může se CPU dostat do nestabilního stavu, který ovlivní i hostující operační systém, neboť v něm může dojít k náhodným skokům v kódu a spuštění nepředvídatelných adres v paměti.

Teoreticky se tak může stát, že s určitým štěstím se neprivilegovanému útočníkovi z virtuálního stroje může podařit spustit kód nacházející se v jeho paměti, ale v kontextu a s právy hostujícího jádra. Šlo by tedy o únik z hypervizoru a o eskalaci práv, ovšem počítač se také stane nestabilním.


Postižené by měly být modely FX-43x0, 63x0 a 83x0, založené na čipu Vishera

AMD již o problému ví a jeho vývojáři prý nyní testují opravu, která mikrokód verze 0x6000832 nahradí. Do té doby ovšem, používáte-li operační systém Linux a tyto hypervizory, je doporučeno přestat postižený mikrokód používat. To znamená zakázat dočasně operačnímu systému do CPU při spuštění nahrávat aktualizaci mikrokódu. Samotný BIOS základní desky takto čerstvou verzi s velkou pravděpodobností mít nebude, minimálně starší desky platformy AM3+ výrobci moc často neaktualizují. S vypnutou aktualizací z OS byste tedy měli být v bezpečí, než se v jeho repozitářích objeví balíček s opravenou verzí mikrokódu.

Jelikož se chyba objevila u specifické verze mikrokódu, těžko říci, zda jí budou postižena také APU Trinity a Richland s architekturou Piledriver. Hlášení o chybách se o nich nezmiňují. Tyto procesory mají odlišené verze mikrokódu s vyšším číslováním (například A10-6800K v desce Gigabyte s posledním BIOSem z března 2013 a Windows 10 hlásí v HWinfo64 verzi 0x6001119). I v jejich případě by se vzhledem k stáří ale do CPU chyba měla dostat jen přes aktualizaci z operačního systému. A pokud už OS měl aktuální verzi, pak by měl od AMD také dostat novou opravenou, kdyby chyba postihovala i APU.

Opteron 6300
Opteron 6300

 

Nejde o první „softwarovou“ chybu, nalezenou u Piledriverů. Pro změnu v APU Richland/Trinity (a také v Kabini) byl odhalen bezpečnostní problém v SMU, jehož zneužitím lze pozměnit firmware této řídící jednotky integrované v procesoru. AMD má tuto díru opravenou v nových verzích kódu AGESA, výrobci desek ale v řadě případů pro své desky nikdy nevydali aktualizace BIOSu (respektive UEFI), které by opravu začlenily.

 

bitcoin_skoleni

Aktualizováno (7. 3. 2016):
The Register má k chybě další podrobnosti. Postižen má být také mikrokód s číslem verze 0x6000836, každopádně se ale má chyba týkat jen těchto dvou aktuálních verzí, ne starších. AMD by mělo mít údajně novou opravenou verzi hotovou dnes, takže výrobci desek a dodavatelé operačních systémů by ji také měli začít začleňovat a distribuovat.

Zdroj: SecList.org