13 luk w procesorach AMD nie zostało zmyślonych, sposób ich podania zadziwia
Pasmo wizerunkowych sukcesów procesów Ryzen właśnie zostałoprzerwane – i to z najmniej spodziewanej strony. Izraelska firmaCTS Labs przedstawiła łącznie 13 sprzętowych luk w architekturzeRyzenów (a także ich serwerowych odpowiedników, czipów EPYC). Podwzględem zagrożenia jakie stanowią, wyglądają one jeszczegorzej, niż ujawnione na początku tego roku luki w procesorachwykorzystane do ataków Meltdown i Spectre. Słowem-kluczem jesttutaj jednak „wyglądają”. Branża bezpieczeństwa jest bowiemzdumiona sposobem, w jaki luki te ujawniono, dając producentowijeden dzień na reakcję. Same opisy ataków też budzą wątpliwości. Czy to ujawnienie zagrożeń, czy po bezprecedensowy atak na AMD?
14.03.2018 | aktual.: 14.03.2018 14:53
O ile w wypadku luk Meltdown i Spectre mieliśmy do czynienia jużna początku z poważnymi publikacjami naukowymi, niepozostawiającymi cienia wątpliwości do skali zagrożenia, tutajsytuacja wygląda trochę inaczej. Dwudziestostronicowy raportCTS jest raczej lakoniczny, opisuje odkryte luki raczejpobieżnie, a kończy się notatką prawników firmy, z którejdowiadujemy się, że służyć ma jedynie celom informacyjnym iedukacyjnym.
AMD Flaws Overview
Przyglądając się raportowi bliżej, znajdziemy tam opisyłącznie 13 podatności, podzielonych na cztery klasy. Otrzymałyone (oczywiście) barwne nazwy – MasterKey, RyzenFall, Fallout orazChimera. Pozwalać mają na przejęcie kontroli nad atakowanymisystemami, a także wydobycie wrażliwych danych ze sprzętowychenklaw nowych procesorów AMD.
Poniżej przedstawiamy je kolejno, pogrupowane tymi klasami:
MasterKey 1, 2 i 3
Są to ataki wykorzystujące luki pozwalające na instalacjęnieulotnego złośliwego oprogramowania działającego na AMD SecureProcessor, które podobno jest w stanie obejść wszystkie mechanizmybezpieczeństwa procesora, takie jak Secure Encrypted Virtualizationoraz Firmware Trusted Platform Module.
Za sprawą luk MasterkKey możliwe ma być wykradzenie danychlogowania, w tym strzeżonych na poziomie systemu operacyjnego,takimi jak np. Virtualization-Based Security Microsoftu, stosowane wWindows Serverze. Możliwe ma być też fizyczne uszkodzeniekomputera poprzez zniszczenie komórek pamięci flash w procesorze.
Ataki wykorzystujące MasterKey przeprowadzone miały być naprocesorach Ryzen i EPYC, a zagrażać mają też procesorom RyzenPro i Ryzen Mobile.
RyzenFall 1 oraz Fallout 1
Te ataki pozwalać mają na zapis do chronionych obszarówpamięci, w tym Windows Isolated User Mode oraz Isolated Kernel Mode,a na niektórych płytach głównych także do pamięci koprocesorabezpieczeństwa – AMD Secure Processor Fenced DRAM.
Tak samo za ich pomocą możliwe miałoby być wykradzeniewrażliwych danych, także i danych logowania, z obejściemzabezpieczeń takich jak np. Windows Credential Guard. Pozwalać onemają także na stworzenie malware chroniącego się w pamięciWindows Isolated User Mode i dzięki temu odpornego na antywirusy.
Luki te przetestowane miały być na Ryzenach, Ryzenach Pro iEPYC-ach. Nie występują w procesorach Ryzen Mobile.
RyzenFall 2 oraz Fallout 2
Za pomocą wyexploitowanych tymi atakami luk możliwe ma byćwyłączenie ochrony przed zapisem dla Secure Management RAM (SMRAM). Ten sposób możliwe stałoby się tworzenie odpornego na antywirusymalware, pozostającego w chronionej pamięci.
Podobnie jak poprzednio, luki te występować mają w Ryzenach,Ryzenach Pro i procesorach EPYC, nie ma ich za to w Ryzenach Mobile.
RyzenFall 2 oraz Fallout 3
Tutaj mamy do czynienia z możliwością odczytania zawartościchronionych obszarów pamięci, w tym Windows Isolated User Mode,Isolated Kernel Mode, Secure Management RAM oraz AMD Secure ProcessorFenced DRAM – jednak jedynie na wybranych płytach głównych AMD.
Tak samo pozwala to na odczytanie wrażliwych danych, w tymchronionych za pomocą wirtualizacji, tak samo też ataki miały byćsprawdzone na procesorach Ryzen, Ryzen Pro i EPYC, nie działają zato na Ryzen Mobile.
RyzenFall 4
To atak pozwalający na uruchomienie dowolnego kodu na AMD SecureProcessor i obejście zabezpieczeń firmware, takich jak FirmwareTrusted Platform Module.
Działając na tym poziomie napastnik może zarówno wykraśćwrażliwe dane z chronionej wirtualizacją pamięci jak i uszkodzićfizycznie czip. Atak ten działać ma jedynie na procesorach Ryzen iRyzen Pro, układy EPYC i Ryzen Mobile są odporne.
Chimera
Dwie ciekawe furtki, które znalazły się w firmware orazsprzęcie (czipie ASIC), które pozwalają złośliwemuoprogramowaniu na wstrzyknięcie się w procesor 8051 czipsetu AMD.
W ten sposób malware zyskuje dostęp do komunikacji międzyprocesorem a urządzeniami USB, SATA i PCI-e, a w wielu wypadkachtakże komunikacji sieciowej, w tym przez Wi-Fi i Bluetootha.
Chimera działa na Ryzenach i Ryzenach Pro, czipy EPYC i RyzenMobile mają być odporne.
Kto zawinił, kto skorzysta?
Luki wyglądają fatalnie, całkowicie podkopując zaufanie doprocesorów AMD. A jak wygląda ujawnienie tych luk przez izraelskichbadaczy? Szczerze mówiąc – jeszcze gorzej. Złamano wszelkiezasady odpowiedzialnych ujawnień zagrożeń, AMD dostało dosłowniejeden dzień na reakcję, nie zdołało w tym czasie nawetpotwierdzić ujawnionych problemów.
Zresztą bez przesady z tym „ujawnieniem”. O ile w wypadkuMeltdown i Spectre mieliśmy głęboką analizę architektury idziałający kod ataku, tutaj mamy ogólniki i zapewnienia. Cowięcej, wygląda na to, że nawet te zapewnienia są przesadzone.Pierwsi badacze, którzy przyglądają się sprawie, już zauważają,że ich wykorzystanie wymagania administracyjnego dostępu domaszyny, w wielu wypadkach nawet fizycznego dostępu do maszyny.
AMD ogłosiło,że prowadzi własne badania w tej kwestii. Wcześniej nigdy niemiało do czynienia z izraelską firmą i uważa za bardzo osobliwe,że w taki właśnie sposób doszło do ujawnienia tych rzekomychzagrożeń.
Okazało się za to, że wbrew temu, co CTS Labs twierdzi, że kodexploitów jest w posiadaniu tylko ich badaczy oraz samego AMD,został on już przekazany firmie trzeciej. Na szczęście to ludzieo dobrej reputacji: Dan Guido, dyrektor techniczny Trail of Bits,ogłosił,że jego ludzie przeanalizowali odkrycia CTS Labs, dostarczone im wpostaci kompletnego raportu z kodem exploitów. Poinformował też,że wszystkie ataki wymagają dostępu administracyjnego.
Nas jednak zainteresował szczególnie jeden drobny detal.Dlaczego obejście Platform Security Processora na platformie AMDpozwala na obejście zabezpieczeń zwirtualizowanej pamięciWindowsa? Nie przesadzają ci producenci procesorów z możliwościamiswoich wbudowanych komponentów „bezpieczeństwa”?