26.10.2012 | 22:17

Adam Haertle

Włamał się do odtwarzacza. Pilotem. Przez nazwę sieci WiFi.

Urządzenia z wbudowanym systemem są pełne niespodzianek. Okazuje się, że analiza oprogramowania może doprowadzić do uzyskania uprawnień roota na odtwarzaczu multimedialnym za pomocą pilota. I to przez manipulację nazwą sieci WiFi.

W serwisie poświęconym analizie wbudowanego oprogramowania w różnych urządzeniach opisano ciekawą i niezwykle oryginalną historię włamania do odtwarzacza NeoTV firmy Netgear. NeoTV potrafi bezprzewodowo przesyłać sygnał wideo, pochodzący z takich serwisów jak Youtube, Hulu czy Netflix.

Analiza urządzenia rozpoczęła się od jego otwarcia i odnalezienia portu szeregowego, który niestety nie udostępniał powłoki z uprawnieniami administracyjnymi. Kolejnym krokiem było zatem pobranie aktualizacji oprogramowania urządzenia i jego analiza. Narzędzie binwalk pokazało, że w pliku obrazu oprogramowania  znajdują się dwa obrazy systemu plików SquashFS, dość często stosowanego w tego typu urządzeniach.

Pierwszy obraz po jego wyodrębnieniu i zamontowaniu okazał się zawierać między innymi plik binarny /usr/local/bin/ntv300ui, odpowiedzialny za obsługę interfejsu urządzenia, w tym także komend pilota. Analiza pliku binarnego za pomocą dizasemblera pokazała, że programiści, tworzący kod, chętnie korzystali z funkcji system() oraz popen(). Użyli ich między innymi w kodzie odpowiedzialnym za łączenie się urządzenia z domową siecią bezprzewodową. Jaki był tego skutek? Oto, co działo się, kiedy użytkownik podał za pomocą pilota nazwę docelowej sieci `reboot`.


Nazwa sieci (źródło: devttys0.com)

Zaczynamy od pieczołowitego wystukania na pilocie odpowiedniej nazwy sieci.


Próba połączenia (źródło: devttys0.com)

Urządzenie próbuje się z nią połączyć.


Reboot (źródło: devttys0.com)

Co kończy się nieuniknionym restartem. Czyż to nie piękne?

Próba połączenia do sieci o nazwie „;bin/sh/ # pozwoliła badaczom na uzyskanie ograniczonej powłoki na porcie szeregowym. To ich jednak nie zadowoliło, ponieważ interfejs był mało funkcjonalny a prezentowane ekrany wymieszane z wynikami procedur diagnostycznych. Interfejs ten pozwolił jednak na znalezienie ciekawego skryptu /root/rc.user, którego fragment sprawdzał, czy istnieje plik /mnt/ubi_boot/mfg_test/enable i w przypadku pozytywnego wyniku testu uruchamiał usługę telnet.

Co prawda plik „enable” nie istniał, ale nic nie stało na przeszkodzie, by można go było utworzyć poprzez sztuczkę z nazwą sieci bezprzewodowej. Długość pola nazwy sieci  ograniczała wydawane komendy do 32 znaków, ale badacze ominęli to ograniczenie, tworząc krok po kroku odpowiedni skrypt a następnie go wykonując. Restart urządzenia dał im to, czego szukali – powłokę roota, bez hasła, czekającą na porcie 21. Voilà!


Powłoka roota (źródło: devttys0.com)

Do słynnych już włamań takich jak emacsem przez sendmail oraz Skypem do banku dodajemy dzisiaj pilotem przez SSID do dekodera. Nie wiemy też jak Wy, ale my zaraz zmienimy nazwę naszej sieci bezprzewodowej na „rm -rf /.

Powrót

Komentarze

  • 2012.10.27 10:08 mietek

    LOL. Znowu jakiś niedouczony pehapowiec wyprodukował co umiał.

    Odpowiedz
    • 2012.10.28 11:03 renq

      Jaki sens ma twój komentarz, poza próbą wywołania bezsensownego flamewara?

      Odpowiedz
  • 2012.10.27 13:17 żulem

    albo jakiś pajtonowiec…

    Odpowiedz
  • 2012.10.27 13:42 seo blog

    Nic dziwnego, przecież nikt nie będzie inwestował kasy na mega zabezpieczenie odtwarzacza. Nawet jak komuś się uda coś zdziałać, to co mu po tym?

    Odpowiedz
  • 2012.10.27 13:57 Grzechooo

    Nazwa sieci powinna raczej brzmieć `rm -rf /` :D

    Odpowiedz
  • 2012.10.28 09:26 rokita

    No właśnie, jakoś nie widzę korzyści z takiego włamania dla włamującego…

    Odpowiedz
  • 2012.10.28 09:51 Adam

    Dla pytających o korzyści z włamania – na przykład aktualizacje oprogramowania nie zawierają części modułów wykorzystywanych do streamingu Netflixa. Jeśli kogoś interesuje, jak urządzenie realizuje tą funkcjonalność, to musi się do niego włamać, by poczytać wykorzystywany kod.

    Odpowiedz
  • 2012.10.30 02:44 raj

    A na mój odtwarzacz można normalnie zrobić telnet, a hasło na roota jest napisane w instrukcji :)

    Odpowiedz
  • 2013.05.10 19:41 drukarnia

    Emacsem przez sendmail :)

    Odpowiedz

Zostaw odpowiedź do renq

Jeśli chcesz zwrócić uwagę na literówkę lub inny błąd techniczny, zapraszamy do formularza kontaktowego. Reagujemy równie szybko.

Włamał się do odtwarzacza. Pilotem. Przez nazwę sieci WiFi.

Komentarze