Preorder drugiego tomu książki sekuraka: Wprowadzenie do bezpieczeństwa IT. -15% z kodem: sekurak-book

Mogli otwierać i śledzić auta Subaru w Japonii, Kanadzie i USA – wystarczyły numery tablic rejestracyjnych

24 stycznia 2025, 01:21 | W biegu | 0 komentarzy

O niektórych osiągnięciach Sama Curry’ego pisaliśmy niejednokrotnie. Tym razem Curry wspólnie z Shubham Shah zaprezentowali, jak mogli przejąć zdalną kontrolę nad dowolnym samochodem marki Subaru, wyposażonym w system STARLINK, na terenie Japonii, Kanady i Stanów Zjednoczonych. 

TLDR:

  • Subaru opracowało system STARLINK, który integruje elementy informacyjno-rozrywkowe w samochodzie z funkcjami bezpieczeństwa oraz zdalnej kontroli.
  • Badacze bezpieczeństwa odnaleźli system do zdalnego zarządzania samochodami, który wykorzystuje system STARLINK. Portal był wykorzystywany przez pracowników Subaru. Okazało się, że posiadał krytyczną podatność pozwalającą obejść etap uwierzytelniania (i to dwuskładnikowego!).
  • Efektem uzyskania dostępu do systemu była możliwość zdalnej kontroli samochodów (zdalne odblokowanie auta) czy też ich namierzenia. W systemie dostępna była roczna historia lokalizacji samochodu.

STARLINK to nazwa systemu, który pozwala zarządzać multimediami (np. uruchamiać aplikacje multimedialne, podłączyć smartfona). Integruje on także mechanizmy bezpieczeństwa, jak wykrywanie kolizji, czy zdalną kontrolę. Ta ostatnia obejmuje możliwość uruchomienia/zatrzymania silnika, zablokowanie i odblokowanie samochodu oraz uzyskanie jego bieżącej lokalizacji. 

W wyczerpującym poście, Sam pokazuje, jak trywialne niedopatrzenie w serwisie STARLINK® Admin Portal – https://portal.prod.subarucs.com/login.html, pozwoliło każdemu na dostęp do funkcji zdalnej kontroli. 

Przede wszystkim, panel zarządzania (ten dla pracowników) wymagał podania loginu i hasła w celu uwierzytelnienia.

Rysunek 1. Strona logowania panelu administracyjnego systemu STARLINK (źródło: samcurry.net)

Tutaj pojawił się pierwszy problem – możliwe było przejęcie dowolnego konta przez funkcję resetu hasła.

Listing 1. Fragment kodu JS, obsługującego reset hasła (źródło: samcurry.net)

To, co można zaobserwować na pierwszy rzut oka, to fakt, że do resetu hasła nie jest wymagany żaden token potwierdzający tożsamość. 

Badacze metodami OSINT-owymi określili format stosowanych adresów email wewnątrz organizacji. Dodatkowy rekonesans wskazał też endpoint, który mógł być wykorzystany do weryfikacji obecności adresu w bazie danych.

Rysunek 2. Zapytanie pozwalające na określenie, czy konto powiązane z konkretnym adresem email istnieje w serwisie  (źródło: samcurry.net)

Badaczom udało się potwierdzić, że jeden ze znalezionych adresów jest rzeczywiście wykorzystywany przez pracownika, w celu uzyskania dostępu do panelu zarządzania. Po zalogowaniu jednak wymagane było uzupełnienie drugiego składnika uwierzytelniania.

Rysunek 3. 2FA w postaci challenge-response  (źródło: samcurry.net)

Jednak jego implementacja również okazała się… co najmniej niekompletna. Wykorzystując funkcjonalność Burpa (albo innych mechanizmów match/replace), udało się po prostu wykomentować pop-up bez uszczerbku dla funkcjonalności portalu. 

Rysunek 4. Zaproponowana metoda obejścia 2FA (źródło: samcurry.net)

Curry wykorzystał dane samochodu swojej mamy w celu sprawdzenia jego lokalizacji. Przed oczami badacza ukazał się niemal roczny spis koordynatów GPS oraz dokumentacja przebiegu.

Rysunek 5. Fragment loga zawierającego informacje o lokalizacji pojazdu – tak, mama Curry’ego zgodziła się na udostępnienie lokalizacji (źródło: samcurry.net)

Ale to nie wszystko. Wśród innych endpointów był też taki, który pozwalał na wyszukiwanie pojazdu po nazwisku i kodzie pocztowym, adresie email lub po numerze VIN. Ten ostatni można było uzyskać przy pomocy numeru rejestracyjnego. 

Rysunek 6. Wyszukiwanie informacji takich jak adres, numer telefonu i informacje billingowe (źródło: samcurry.net)

Dysponując tymi informacjami, atakujący mógł przejąć kontrolę nad cudzym samochodem. Pracownicy Subaru po wyszukaniu samochodu w bazie, mogą również edytować konta w aplikacji użytkownika powiązane z samochodem. Przejęcie jest więc możliwe poprzez autoryzację innego konta klienckiego, do użytku auta. 

Rysunek 7.  Email potwierdzający otrzymanie dostępu przez aplikację MySubaru do samochodu (źródło: samcurry.net)

Prawowity właściciel nie otrzymał żadnego powiadomienia o dodanym nowym użytkowniku. Samowi udało się także odblokować auto koleżanki, bez jej wiedzy, przy pomocy aplikacji. 

Błąd został zgłoszony do Subaru i naprawiony w niespełna jeden dzień, co jest bardzo dobrym wynikiem. Z drugiej strony tak poważna podatność po prostu powinna zostać usunięta szybko. Niemniej brawa dla Subaru za reakcję. 

Autorzy badania wskazują na fakt, że branża motoryzacyjna dość luźno podchodzi do kwestii autoryzacji dostępu do informacji o samochodach klientów przez pracowników. 

~callsign.chaos && evilcat

Spodobał Ci się wpis? Podziel się nim ze znajomymi:



Komentarze

Odpowiedz