Kąt Andersona
NVIDIA Potwierdza Podatność na Atak Przez Wadę Napięciową w Systemie Autopilot Tesla

Nowy raport badawczy z Niemiec ujawnia, że NVIDIA potwierdziła podatność sprzętową, która pozwala na uzyskanie uprzywilejowanej kontroli nad wykonywaniem kodu w systemie autopilotu Tesli. Atak polega na “klasycznej” metodzie destabilizowania sprzętu poprzez wprowadzanie skoków napięciowych, co w tym przypadku umożliwia odblokowanie bootloadera, który jest zwykle wyłączony dla konsumentów i przeznaczony dla warunków laboratoryjnych.
Atak jest również ważny dla systemu infotainment Mercedes-Benz, choć z oczywiście mniejszymi potencjalnymi konsekwencjami.
Raport pt., zatytułowany Zapomniana Groźba Wad Napięciowych: Studium Przypadku Nvidia Tegra X2 SoCs, pochodzi z Technische Universitat Berlin, kontynuując niektóre z wcześniejszych prac tych samych badaczy, ujawniających podobny exploit w AMD Secure Encrypted Virtualization, opublikowany 12 sierpnia.
Raport stwierdza:
Podjęliśmy odpowiedzialne ujawnienie naszych wyników Nvidia, w tym naszego eksperymentalnego zestawu i parametrów. Nvidia odtworzyła nasze eksperymenty i potwierdziła, że wstrzyknięcie błędu wpływa na testowany układ Tegra Parker SoC i wcześniejsze układy. Według nich, wszystkie nowsze układy Tegra SoCs zawierają środki zaradcze w celu złagodzenia tego typu ataków. Ponadto, zaproponowali środki zaradcze w celu zmniejszenia skuteczności wstrzyknięcia błędu napięciowego w podatnych układach…
Raport stwierdza, że rodzaj ataku przedstawiony w ich badaniach mógłby pozwolić na modyfikację oprogramowania systemu w celu manipulowania kluczowymi systemami kontroli, w tym sposobem, w jaki pojazd autonomiczny reaguje na przeszkody ludzkie.
Stwierdzają, że nawet manipulowanie systemami wyświetlania kokpitu niesie ze sobą prawdziaste niebezpieczeństwo, umożliwiając wyświetlanie błędnych informacji o bieżącej prędkości jazdy i innych informacji niezbędnych do bezpiecznej eksploatacji pojazdu.
Wstrzyknięcie Błędu Napięciowego
Wstrzyknięcie błędu napięciowego (FI), znane również jako wada napięciowa, po prostu przeciąża lub niedoładowuje zasilanie systemu na moment. Jest to bardzo stara forma ataku; badacze zauważają, że karty inteligentne zostały zahartowane przeciwko temu podejściu już dwie dekady temu i sugerują, że producenci chipów skutecznie zapomnieli o tym konkretnym wektorze ataku.
Jednakże, przyznają, że ochrona układu SoC stała się bardziej skomplikowana w ostatnich latach ze względu na złożone drzewa zasilania i wyższe stopy zużycia energii, które mogą nasilić potencjalne zakłócenia spowodowane przez zaburzenia zasilania.
Ataki tego rodzaju były możliwe przeciwko starszemu układowi NVIDIA Tegra X1 w przeszłości. Jednakże, nowszy układ Tegra X2 (‘Parker’) jest obecny w bardziej krytycznych systemach, w tym w systemie półautonomicznej jazdy Autopilot Tesli, a także w systemach używanych przez Mercedes-Benz i Hyundai.
Nowy raport demonstruje atak wstrzyknięcia błędu napięciowego na układzie Tegra X2, który pozwolił badaczom na wyodrębnienie zawartości z wewnętrznej pamięci tylko do odczytu (iROM) systemu. Oprócz naruszenia własności intelektualnej producentów, pozwala to na całkowite wyłączenie zaufanego wykonywania kodu.
Możliwa Stała Kompromitacja
Ponadto, wtargnięcie nie jest kruche ani koniecznie zniszczone po ponownym uruchomieniu: badacze opracowali “implant sprzętowy”, który może trwale wyłączyć korzeń zaufania (RoT).

Schemat ‘crowbar circuit’ opracowany przez niemieckich badaczy – trwała modyfikacja sprzętowa zdolna do manipulowania korzeniem zaufania w Tegra X2. Źródło: https://arxiv.org/pdf/2108.06131.pdf
Aby zmapować eksploit, badacze starali się odblokować ukrytą dokumentację dotyczącą X2 – ukryte pliki nagłówkowe zawarte w pakiecie L4T. Mapy są opisane, choć nie explicite, w dokumentacji online dla Jetson TX2 Boot Flow.
Jednakże, chociaż byli w stanie uzyskać niezbędne informacje z wyodrębnionych plików nagłówkowych, badacze zauważają, że otrzymali również znaczącą pomoc, przeszukując GitHub w poszukiwaniu niejasnych kodów związanych z NVIDIA:
Przed zrealizowaniem, że plik nagłówkowy jest oferowany przez Nvidia, wyszukaliśmy go na GitHub. Poza znalezieniem repozytorium, które zawiera kod Nvidia, wyszukiwarka ujawniła również repozytorium o nazwie ”switch-bootroms”. To repozytorium zawiera przecieki kodu źródłowego BR dla układów Tegra z numerami modelowymi T210 i T214, gdzie T210 jest oryginalnym modelem Tegra X1 (kryptonim ”Erista”), a T214 to zaktualizowana wersja, również nazywana Tegra X1+ (kryptonim ”Mariko”). X1+ zawiera szybsze częstotliwości zegara i, osądzając po komentarzach i kodzie w repozytorium, jest zahartowany przeciwko FI. Podczas naszych dochodzeń, dostęp do tego kodu znacznie zwiększył nasze zrozumienie X2.’
(Przypisy przekonwertowane na linki przez mnie)
Wszystkie złącza i kody kryptograficzne zostały odkryte nową metodą, a późniejsze etapy systemu bootloadera zostały pomyślnie odszyfrowane. Najbardziej godny uwagi osiągnięcie eksploitu jest prawdopodobnie możliwość uczynienia go trwałym po ponownym uruchomieniu za pomocą dedykowanego sprzętu, techniki po raz pierwszy rozwiniętej przez Team Xecuter dla implantu Nintendo Switch na układach X1.
Środki Zaradcze
Raport sugeruje szereg metod wzmacniania, które mogłyby uczynić przyszłe wersje układów SoC odporne na ataki wstrzyknięcia błędu napięciowego. W dyskusji z NVIDIA, firma zaproponowała, że w przypadku istniejących układów SoC, zmiany na poziomie płyty głównej, w tym użycie żywic odporne na rozkład cieplny i rozpuszczalniki, mogłyby być pomocne. Jeśli obwód nie może być łatwo rozmontowany, jest znacznie trudniej go skompromitować.
Raport sugeruje również, że dedykowana płyta drukowana (PCB) dla układu SoC jest jednym ze sposobów wykluczenia potrzeby kondensatorów połączonych, które są częścią opisanego ataku.
Dla przyszłych projektów układów SoC, użycie obwodu wykrywania wstrzyknięcia błędu napięciowego, który został niedawno opatentowany przez NVIDIA, mogłoby umożliwić wyświetlanie alertów w przypadku podejrzanych lub malwersatywnych zaburzeń napięciowych.
Rozwiązanie problemu za pomocą oprogramowania jest bardziej skomplikowane, ponieważ charakterystyki błędów są trudne do zrozumienia i przeciwdziałania na poziomie oprogramowania.
Raport zauważa, zdumiewając się, że większość oczywistych środków ostrożności została opracowana w czasie, aby chronić starszy układ X1, ale są one nieobecne w X2.
Raport kończy się słowami:
‘Producenci i projektanci nie powinni zapominać o pozornie prostych atakach sprzętowych, które istnieją już ponad dwie dekady.’













