37C3 - prezentacja: Uzyskanie dostępu do wrażliwych danych Autopilota za pomocą manipulacji napięciem zasilania

daniel

Señor Meme Officer
dasz jakieś podsumowanie?
W sumie sam atak dla mnie jest najciekawszy. O autopilocie nie dowiedziałem się nic nowego.

Proces ładowania systemu zaczyna się od sprawdzenia hasha w chipie z hashem bootloadera.
1704269054769.png

1704269088166.png

Można odciąć zasilanie chipowi, żeby zakłócić sekwencję porównywania hasha certyfikatu z hashem zaszytym w "fuses inside the chip".
Wgrywają swój certyfikat, podpisują nim swoje zmodyfikowane oprogramowanie i zakłócają proces porównywania hashy.
1704269129385.png


1704269266124.png


Moment zakłócenia wybadali eksperymentalnie monitorując komunikaty z systemu.

1704269368563.png

1704269484903.png

Samochód nagrywa w pętli i wysyła tylko ciekawe dane do bazy.
Dane są interesujące gdy nastąpi jakiś wyzwalacz.

1704268219068.png


Rodzaje triggerów to np.
- automatic emergency braking
- img-vid - zapisywanie strumieni z kamer i wysyłanie do chmury (od razu jeśli wypadek, czeka na wifi jeśli to nic pilnego)
- ping - zbieranie metadanych
Dane są zapisane w JSONie. Swoją drogą te query wyglądają jak z MongoDB. Czy to jakiś ogólny standard w bazach danych?

1704268272068.png


Połączenie z bazą jest weryfikowane z obu stron. Klient weryfikuje serwer i serwer weryfikuje klienta. Jest komponent, który zbiera telemetrię z samochodu i komponent, który zbiera dane do ML i aktualizuje wagi.

1704268545773.png


Ponieważ mają roota, więc mogli wyciągnąć klucz, który umożliwia dostęp do API i udało im się połączyć jako autopilot, ale nie badali tego jeszcze dokładnie.

1704268893013.png
 
Last edited:
Top