Hakowanie samolotów smartfonem, czyli czy leci z nami pilot

dodał 11 kwietnia 2013 o 09:33 w kategorii Błędy, Włamania  z tagami:
Hakowanie samolotów smartfonem, czyli czy leci z nami pilot

Wyobraźcie sobie, że haker z ziemi przejmuje kontrolę nad lecącym samolotem i zaczyna sterować jego lotem za pomocą swojego smartfona. Takie rzeczy tylko w filmach z Seagalem? Pewien badacz przekonuje, że taki scenariusz jest całkiem realny.

Hugo Teso, hiszpański specjalista ds. bezpieczeństwa IT, jest również pilotem komercyjnych samolotów. Kilka lat temu postanowił połączyć swoje dwie pasje i zajął się bezpieczeństwem systemów używanych w lotnictwie. Wczoraj, na konferencji HITB 2013 w Amsterdamie, zaprezentował część swoich odkryć, wzbudzając duże zainteresowanie widowni. Trudno było oczekiwać innej reakcji – wizja możliwości zdalnego uzyskania kontroli nad samolotem pasażerskim przemawia do wyobraźni.

Systemy ADB-S (używany głównie do określania pozycji samolotu) oraz ACARS (stanowiący kanał komunikacji między samolotem a linią lotniczą i producentem maszyny) były już wcześniej przedmiotem badań pod kątem bezpieczeństwa. Hugo w swoich badaniach poszedł krok dalej – w stronę systemów sterujących lotem, znajdujących się na pokładzie samolotów. Część wyposażenia, niezbędnego do testów, kupił na Ebayu, fragmenty oprogramowania pobrał z sieci i skonstruował laboratorium, w którym mógł – w bezpieczny dla pasażerów sposób – przetestować różne rodzaje  ataków. Po trzech latach pokazał, że byłby w stanie przejąć kontrolę nad systemami nawigacyjnymi samolotu.

Sprzęt dostępny na Ebayu (źródło: Hugo Teso)

Sprzęt dostępny na Ebayu (źródło: Hugo Teso)

Proces uzyskiwania kontroli nad samolotem zaczyna się od ustalenia, jakie jednostki znajdują się w zasięgu sprzętu atakującego. Do tego celu służy dostępny publicznie system ADB-S, który umożliwia lokalizację samolotów w przestrzeni powietrznej (korzysta z niego strona www.flightradar24.com). Po zidentyfikowaniu interesującego samolotu, system ACARS wykorzystywany jest do ustalenia, z jakim modelem i oprogramowaniem mamy do czynienia. Następnie błędy w przetwarzaniu wiadomości ACARS (które nie są w żaden sposób zabezpieczone przed sfałszowaniem) używane są do uzyskania kontroli nad pokładowymi systemami sterowania lotem.

Najbardziej pracochłonnym zajęciem, wymagającym analizy wstecznej kodu, było odnalezienie błędów w systemach pokładowych. Hugo odkrył je u większości dużych dostawców – firm takich jak Honeywell, Thales czy Rockwell Collins. Wykorzystując wykryte luki uzyskał możliwość wgrania do systemów pokładowych samolotów swojego własnego oprogramowania (nazwanego SIMON), zaprojektowanego specjalnie na tę okazję (ADB-S umożliwia transfer danych z prędkością 1Mb/s, zatem może zostać użyty do przesyłu nawet sporych plików). SIMON, po przejęciu kontroli nad systemami pokładowymi, jest całkowicie niezauważalny dla pilota – dopóki Hugo nie uruchomi aplikacji na Androida, którą nazwał PlaneSploit i za pomocą której komunikuje się z SIMONem. Posiada ona takie funkcje jak:

  • Leć tam: wskazywanie lokalizacji na mapie, do których powinien udać się kontrolowany samolot.
  • Zdefiniuj obszar: filtry umożliwiające ustalenie wykonania określonych czynności w momencie, gdy samolot znajdzie się w danym miejscu lub na danej wysokości.
  • Odwiedź ziemię: rozbicie samolotu.
  • Pa pa: usuń swój kod z systemu.
  • Czas na punk: Mruganie światełkami i włączanie sygnałów alarmowych.

Ekran aplikacji (źródło: Instagram)

Ekran aplikacji (źródło: Instagram)

Funkcjonalność aplikacji ograniczona jest jedynie funkcjonalnością systemów pokładowych. Po przejęciu kontroli można sterować systemami nawigacyjnymi, zarządzającymi paliwem, wyświetlaczami samolotu, maskami tlenowymi, silnikami – w przypadku samolotu znajdującego się w powietrzu każda z tych możliwości jest niepokojąca. Zanim jednak zaczniecie panikować – jedna wiadomość pocieszająca. Atakujący może przejąć kontrolę nad sterowaniem samolotu, ale najistotniejsze parametry lotu jak kierunek, wysokość, kąt natarcia czy prędkość może kontrolować jedynie wtedy, gdy działa autopilot. Pilot ma zatem możliwość przejęcia kontroli i uratowania pasażerów przed nieprzewidzianym lądowaniem (o ile nie rozproszą go migające światełka i wypadające maski tlenowe).

Dostawcy rozwiązań, w których badacz odkrył błędy, zostali poinformowani i podjęli współpracę w celu wyeliminowania nieprawidłowości. Szczegóły błędów nie zostały ujawnione, by uniknąć potencjalnie katastrofalnych konsekwencji. Również aplikacji PlaneSploit nie znajdziecie w sklepie Google Play. Jeśli jednak interesuje Was kombinacja bezpieczeństwa IT oraz systemów lotniczych to polecamy dalszą lekturę: