Wykryto nowe podatności w firmware laptopów Dell i HP pozwalające osobie atakującej uzyskać dostęp do pamięci urządzenia na uprawnieniach jądra systemowego. Wszystko to za sprawą funkcjonalności o nazwie Direct Memory Access (DMA).

DMA to jedno z podejść do zwiększania wydajności urządzeń peryferyjnych (takich jak karty PCI lub karty sieciowe), które, jak sama nazwa wskazuje, zapewnia bezpośredni szybki dostęp do pamięci systemu. Karta sieciowa lub urządzenie Firewire może potrzebować szybkiego odczytu i zapisu informacji. Przekazywanie tego ruchu do systemu operacyjnego i wracanie z odpowiedzią jest powolne i nieefektywne. Zamiast tego DMA pozwala urządzeniom na bezpośrednią komunikację z pamięcią bez przechodzenia przez system operacyjny.

Mimo, że mechanizm ten jest przydatny, przed przypadek oferuje także cyberprzestępcom szybki dostęp do odczytu i zapisu danych bezpośrednio w systemie ofiary. Może również pozwolić atakującym na ominięcie sprzętowych zabezpieczeń, takich jak: UEFI Secure Boot, Intel Boot Guard, HP Sure Start i Microsoft Virtualization-Based Security. Jeśli próba kompromitacji się powiedzie, atakujący może wykonać kod na poziomie jądra systemu, wstawiać przygotowane implanty czy wykonać szereg dodatkowych czynności, takich jak tworzenie ukrytych powłok systemu lub zmienianie wymagań dotyczących dostępu.


Opis podatności


Zespół odpowiedzialny za wykrycie podatności oraz testy to Eclypsium. Podatność została wykryta i sprawdzona na sprzęcie Dell XPS 13 7390 wypuszczonym na rynek w październiku 2019 roku i otrzymała numer identyfikacyjny CVE-2019-18579. Jest to błąd wysokiego ryzyka polegający na domyślnej konfiguracji BIOS w firmware dostarczanym od producenta. Ustawienie, o które chodzi to: „Enable Thunderbolt pre-boot modules”. Zgodnie z oficjalnym oświadczeniem Della, wykorzystując to ustawienie, lokalny, nieuwierzytelniony atakujący, z fizycznym dostępem do maszyny może modyfikować i czytać pamięć systemu operacyjnego poprzez właśnie funkcjonalność DMA. Wszystko to dzieje się podczas uruchamiania platformy bootującej. Firma Dell wydała już aktualizację BIOS, którą należy pobrać i ręcznie zainstalować. Wyłącza ona wspomniane ustawienie.

Co do samego ataku, zespół Eclypsium potwierdził, że byli w stanie wstrzyknąć kod przez mechanizm DMA, podłączając się bezpośrednio do portu Thunderbolt, zwanego również USB-C. Cały atak jest tzw. atakiem przy zamkniętej obudowie, to znaczy, że atakujący nie potrzebują nawet uruchomić systemu operacyjnego, wystarczy samo fizyczne podłączenie się do urządzenia podczas uruchamiania.

Druga usterka została znaleziona w laptopie HP ProBook 640 G4. Sprzęt ten zawiera dodatkową ochronę przy uruchamianiu o nazwe HP Sure Start Gen4. Jest to wbudowany kontroler zaprojektowany do sprawdzania integralności systemu BIOS, zanim procesor wykona swój pierwszy wiersz kodu, co ma zapobiegać atakom przy „zamkniętej obudowie”.
Zespół tych samych specjalistów odkrył jednak, że atak DMA jest nadal możliwy. Błąd (który nie ma swojego CVE) pozwala atakującym skompromitować interfejs UEFI, który pełni rolę pomostu pomiędzy firware, a systemem operacyjnym. Kompromitacja ta też pozwala na wykonanie nieautoryzowanego kodu, przed rozruchem systemu.

W odpowiedzi, firma HP wydała zaktualizowaną wersję systemu BIOS, która usuwa lukę w firmware.


Czy jest się czego bać?


Firma Eclypsium podkreśliła, że wspomniane laptopy HP oraz Dell prawdopodobnie nie są jedynymi podatnymi na atak.
Procesy przed-uruchomieniowe są źródłem podatności wielu laptopów i serwerów różnych producentów. W przypadku HP, chociaż maszyna nie była podatna na atak w zamkniętej obudowie, zabezpieczenie HP Sure Start w testowanym trybie, nie było niewystarczające do ochrony przed atakiem DMA. Istnieje wiele komponentów, od sprzętu po oprogramowanie układowe i system operacyjny, które muszą ze sobą współgrać na jednym urządzeniu, aby z powodzeniem zapobiec atakom DMA.

Podczas gdy obie wykryte luki wymagają fizycznego dostępu do urządzeń, specjaliści zauważyli, że ogólnie ataki DMA można również przeprowadzać zdalnie przy użyciu złośliwego oprogramowania. Innymi słowy: po zainstalowaniu malware na urządzeniu docelowym osoba atakująca może uzyskać dodatkowe uprawnienia i kontrolować zainfekowanego hosta za pomocą DMA bez konieczności fizycznego dostępu. Infekcja z poziomu systemu operacyjnego do BIOSu odbywa się wtedy poprzez sterownik karty sieciowej czy innych urządzeń peryferyjnych.