Jak poprawić bezpieczeństwo twojego starego... routera - dlaczego warto aktualizować sprzęt sieciowy

Ofiarą tego pokazu będzie popularny producent routerów - TP-Link, a konkretnie model TL-WR840N, który nadal gości w wielu Polskich domach/firmach.

Testowany przez nas egzemplarz nie miał nigdy aktualizowanego firmware’u - dlatego warto wspomnieć, iż jest duże prawdopodobieństwo, że większość z tych podatności została już naprawiona przez producenta. Artykuł ma na celu pokazanie, dlaczego warto, tak samo jak telefon/komputer aktualizować swój router. A teraz przyjrzyjmy się dwóm podatnościom, które pokażą nam, w jaki sposób potencjalny hacker może przejąć kontrole nad twoim sprzętem sieciowym.

CVE-2022-42202

Zanim zaczniemy warto wspomnieć o tym czym jest XSS.

W takim razie co to te xssy?

XSS (Cross-Site Scripting) to rodzaj ataku komputerowego, który występuje, gdy niezaufane dane są wstrzykiwane do aplikacji internetowej i są one wykonywane przez przeglądarkę użytkownika. Atak XSS polega na wstrzyknięciu złośliwego skryptu (najczęściej napisanego w języku JavaScript) do kodu strony internetowej, który następnie jest uruchamiany w przeglądarce innych użytkowników odwiedzających tę stronę.

Atakujący może wykorzystać różne metody, aby wstrzyknąć skrypt XSS na stronę, np. poprzez formularze, parametry URL, pole komentarzy lub wiadomości. Gdy skrypt zostanie wykonany w przeglądarce ofiary, atakujący może uzyskać dostęp do jej sesji, poufnych danych, zmodyfikować zawartość strony lub przekierować użytkownika na złośliwą stronę.

W takim razie o co z tym routerem chodzi?

Opisana przez nas podatność XSS wymaga dostępu do panelu webowego routera. Poniżej przedstawiamy kroki, które mogą być wykorzystane przez potencjalnych atakujących w celu wykorzystania tej luki w zabezpieczeniach:

  1. Wchodzimy do zakładki “Sieci bezprzewodowej” w panelu administracyjnym routera. Dostęp do panelu może być uzyskany przez osoby posiadające uprawnienia administracyjne lub znające hasło dostępu.
  2. Następnie, w menu wybieramy opcję “Filtrowanie MAC”. Ta funkcja umożliwia zarządzanie listą adresów MAC, które mają dostęp do sieci bezprzewodowej.
  3. W tej fazie atakujący dodaje adres MAC, którym chce się podszyć, oraz specjalnie spreparowany “payload” - szkodliwy skrypt lub kod, który zostanie wykonany w kontekście przeglądarki użytkownika, korzystającego z bezprzewodowej sieci. Payload może zawierać szkodliwe instrukcje, takie jak kradzież sesji, przechwytywanie poufnych danych, lub manipulację zawartością strony.
  4. Po wprowadzeniu danych, potencjalny atakujący zapisuje nową regułę filtrowania w routerze wraz z payloadem. W momencie przeładowania strony fragment HTML, który dodaliśmy do opisu reguły jest aktywowany co widać poniżej.
  5. Bardzo niepokojącym w tym wszystkim jest fakt, że każde ponowne załadowanie strony panelu administracyjnego lub próba dostępu do filtrowania MAC powoduje wykonanie payloadu. To oznacza, że atakujący może wielokrotnie wykorzystywać tę lukę, co sprawia że więcej użytkowników może paść ofiarą ataku.

CVE-2023-36355

Opisany przez użytkownika AlinaZxy błąd został sklasyfikowany jako “buffer write out-of-bounds” (przekroczenie granicy bufora). Oznacza to, że w implementacji funkcji /userRpm/WanDynamicIpV6CfgRpm tego routera istnieje podatność na manipulację wartością parametru ipStart przez co atakujący może wykorzystać tę lukę, aby spowodować błąd zapisu poza granice bufora, prowadząc do wycieku poufnych informacji z pamięci oraz potencjalnego unieruchomienia usługi.

Buffer overflow?

Buffer overflow jest rodzajem błędu, który występuje w momencie gdy program zapisuje więcej danych do bufora pamięci niż on sam może pomieścić. Bufor to fragment pamięci wydzielony do przechowywania danych tymczasowych, takich jak tekst, liczby itp. W przypadku przekroczenia pojemności bufora nadmiarowe dane wpływają na inne obszary pamięci lub nadpisują sąsiednie dane i kod oprogramowania.

I co z tym buforem?

Błąd ten dotyczy konkretnie modelu TP-Link TL-WR940N V4 z oprogramowaniem w wersji V4. Dla tego urządzenia udostępniono funkcję filtrowania MAC, która pozwala administratorowi zarządzać listą adresów MAC, które mają dostęp do sieci bezprzewodowej. Niestety, luka w tej funkcji umożliwia potencjalnym atakującym wysłanie żądania HTTP ze spreparowaną wartością parametru ipStart, co prowadzi do niebezpiecznego zapisu poza granice bufora.

Jeśli atakujący skutecznie wykorzysta tę podatność, może to prowadzić do poważnych konsekwencji. W pierwszym scenariuszu atak może spowodować odmowę usługi (DoS) i unieruchomienie działania routera, co wpłynie na dostępność sieci dla użytkowników. W drugim scenariuszu błąd ten może umożliwić zdalne wykonanie kodu (RCE), co pozwoliłoby na zdalne przejęcie kontroli nad routerem i siecią. To z kolei może prowadzić do przechwycenia poufnych danych użytkowników, przechwycenia sesji, a nawet wykorzystania urządzenia jako punktu wyjścia dla innych ataków.

Techniczny opis oraz PoC znajduje się na githubie pod tym adresem.

Jak żyć?

We wszystkich opisanych błędach, rozwiązaniem może być aktualizacja oprogramowania routera. Bądź co bądź firmy wystawiają poprawki zabezpieczeń, które powinny rozwiązywać takie problemy. Jednak tak jak w naszym przypadku, taka aktualizacja może nigdy nie nadejść, gdyż model jest za stary i oficjalnie nie jest już wspierany przez producenta. Na szczęście jest jeszcze ratunek dla wiekowego sprzętu. Nie musimy żyć z błędami ani nie musimy szukać nowego sprzętu, jest jeszcze trzecia opcja - OpenWRT.

OpenWRT: Nieograniczone Możliwości dla Twojego Routera

Oprogramowanie OpenWRT to powszechnie używany system operacyjny na licencji open-source stworzony dla routerów i urządzeń sieciowych. Zastępuje fabryczne oprogramowanie na wielu popularnych modelach routerów, oferując szereg korzyści, które uczyniły je wyborem wielu entuzjastów sieci komputerowych i profesjonalistów. Poniżej przedstawiamy niektóre z najważniejszych plusów oprogramowania OpenWRT:

  • Wszechstronność i konfigurowalność: OpenWRT to system operacyjny, który można dostosować do niemal każdego zastosowania. Dzięki temu użytkownicy mogą dostosować swoje routery do swoich indywidualnych potrzeb. Zaawansowani użytkownicy mogą skonfigurować zaawansowane opcje sieciowe i zaadoptować oprogramowanie do niestandardowych zastosowań. To sprawia, że OpenWRT jest idealnym narzędziem zarówno dla hobbystów, jak i dla profesjonalistów.
  • Oprogramowanie OpenWRT jest aktywnie rozwijane i utrzymywane przez społeczność open-source. Oznacza to, że użytkownicy mogą cieszyć się regularnymi aktualizacjami, które wprowadzają nowe funkcje i poprawiają zabezpieczenia. Dzięki społecznościowej naturze projektu, błędy i luki w zabezpieczeniach są szybko wykrywane i naprawiane, co pozwala utrzymać nasze sieci w bezpieczeństwie.
  • Wsparcie dla starszych urządzeń: Wiele fabrycznych oprogramowań producentów routerów przestaje otrzymywać wsparcie po pewnym czasie. Dla starszych modeli oznacza to brak aktualizacji i brak nowych funkcji. OpenWRT daje drugie życie tym starszym urządzeniom, ponieważ wiele starszych modeli routerów otrzymuje wsparcie i regularne aktualizacje, dzięki czemu nadal można z nich korzystać w pełni funkcjonalnie.
  • Mocne narzędzia diagnostyczne i monitorowania: OpenWRT oferuje rozbudowane narzędzia diagnostyczne i monitorujące, które pozwalają użytkownikom dokładnie analizować ruch sieciowy, sprawdzać wydajność i identyfikować problemy. Dzięki temu można śledzić, które urządzenia korzystają z sieci, jakie są wykorzystywane pasma, a także zarządzać ruchem na poziomie portów.
  • Rozbudowana społeczność i wsparcie: OpenWRT cieszy się dużą społecznością użytkowników i deweloperów, którzy dzielą się swoim doświadczeniem, wiedzą i kodem. Istnieją fora dyskusyjne, mailing listy oraz serwisy społecznościowe, gdzie można uzyskać pomoc i wsparcie w rozwiązywaniu problemów oraz dzielić się pomysłami na rozwój oprogramowania.

Podsumowując, oprogramowanie OpenWRT stanowi wszechstronne, elastyczne i zaawansowane narzędzie dla zarządzania sieciami domowymi i małymi przedsiębiorstwami. Jego zalety obejmują możliwość dostosowania do indywidualnych potrzeb, regularne aktualizacje i wsparcie, a także potężne narzędzia diagnostyczne. Dla tych, którzy cenią sobie kontrolę nad swoją siecią oraz chcą czerpać korzyści z licencji open-source, OpenWRT jest doskonałym wyborem. Tablice wspieranych modeli znajdziesz na stronie