Krytyczna luka w OpenWrt DHCPv6 umożliwia zdalne wykonanie kodu jako root - Security Bez Tabu

Krytyczna luka w OpenWrt DHCPv6 umożliwia zdalne wykonanie kodu jako root

Cybersecurity news

Wprowadzenie do problemu / definicja

OpenWrt opublikował poprawki usuwające krytyczną podatność w komponencie odhcpd, który odpowiada między innymi za obsługę DHCPv6. Błąd może w sprzyjających warunkach pozwolić nieuwierzytelnionemu atakującemu na zdalne wykonanie kodu z uprawnieniami roota, co czyni go szczególnie groźnym dla routerów, urządzeń brzegowych i systemów embedded korzystających z tego oprogramowania.

Problem dotyczy przepełnienia bufora na stosie w ścieżce przetwarzania żądań DHCPv6. Ponieważ podatna usługa działa z najwyższymi uprawnieniami systemowymi, skuteczne wykorzystanie luki może prowadzić do pełnego przejęcia urządzenia i dalszej kompromitacji sieci.

W skrócie

  • Najpoważniejsza luka została oznaczona jako CVE-2026-53921.
  • Podatność otrzymała ocenę 9.8 w skali CVSS 3.1.
  • Atak może zostać przeprowadzony zdalnie i bez uwierzytelnienia poprzez spreparowany pakiet DHCPv6 REQUEST kierowany do portu UDP 547.
  • Podatny komponent odhcpd działa z uprawnieniami root.
  • OpenWrt zaleca pilną aktualizację do wersji 24.10.8 lub 25.12.5, zależnie od używanej gałęzi.

Kontekst / historia

Podatność została ujawniona wraz z publikacją wydania bezpieczeństwa OpenWrt 24.10.8, które zawiera również poprawki dla innych elementów warstwy sieciowej i interfejsów administracyjnych. Według dostępnych informacji problem dotyczy wcześniejszych wersji odhcpd zawierających funkcje odpowiedzialne za budowę i obsługę struktur IA w DHCPv6.

W momencie publikacji poprawek nie pojawiły się publicznie potwierdzone informacje o aktywnej eksploatacji na dużą skalę, jednak dostępność materiałów proof of concept istotnie zwiększa ryzyko szybkiego opracowania praktycznych exploitów. To ważny sygnał dla administratorów, że czas reakcji ma w tym przypadku duże znaczenie.

Szerszy kontekst bezpieczeństwa OpenWrt jest również istotny, ponieważ równolegle usunięto inne błędy zdalnie osiągalne, w tym problemy związane z out-of-bounds write, use-after-free, ujawnieniem pamięci, denial of service, stack over-read czy spoofingiem. Trwające prace nad poprawkami dla wybranych komponentów LuCI pokazują, że obecny cykl aktualizacji należy traktować jako element większego procesu wzmacniania bezpieczeństwa całego ekosystemu.

Analiza techniczna

Sednem problemu są co najmniej dwie niezależne ścieżki przepełnienia bufora w logice obsługi DHCPv6. W obu przypadkach odpowiednio spreparowane opcje IA powodują, że w stałym buforze o rozmiarze 512 bajtów pozostaje zbyt mało miejsca, a aplikacja kontynuuje dopisywanie danych odpowiedzi bez wystarczającej walidacji granic pamięci.

To klasyczny stack-based buffer overflow, który w środowiskach embedded ma szczególnie poważne znaczenie. Wiele urządzeń tej klasy nie korzysta z pełnego zestawu nowoczesnych mechanizmów ochronnych, takich jak stack canaries czy ASLR, co może ułatwiać praktyczne wykorzystanie podatności.

Atak nie wymaga uwierzytelnienia w panelu administracyjnym. Wystarczy możliwość dotarcia do usługi DHCPv6 nasłuchującej na porcie UDP 547. Publicznie opisane scenariusze obejmują zarówno wariant wieloetapowy, w którym atakujący najpierw buduje odpowiednie powiązania IA_NA, jak i ścieżkę możliwą do osiągnięcia za pomocą pojedynczego odpowiednio przygotowanego pakietu REQUEST.

Najbardziej niepokojący jest fakt, że odhcpd działa jako root. Oznacza to, że skuteczny atak może doprowadzić nie tylko do awarii usługi, ale również do pełnego przejęcia routera, zmiany konfiguracji DNS, manipulacji ruchem, trwałego osadzenia złośliwego kodu lub wykorzystania urządzenia jako punktu wyjścia do dalszego ataku na sieć wewnętrzną.

Warto również podkreślić, że aktualizacja OpenWrt nie ogranicza się wyłącznie do CVE-2026-53921. Poprawki objęły także inne błędy w usługach sieciowych, co oznacza, że samo częściowe załatanie środowiska bez aktualizacji dodatkowych pakietów może nie wystarczyć do realnego ograniczenia powierzchni ataku.

Konsekwencje / ryzyko

Najważniejszym skutkiem potencjalnej eksploatacji jest zdalne wykonanie kodu bez uwierzytelnienia z uprawnieniami root na urządzeniu brzegowym. W praktyce oznacza to możliwość pełnego przejęcia routera i uzyskania uprzywilejowanej kontroli nad ruchem sieciowym użytkowników.

Po kompromitacji atakujący może przechwytywać lub przekierowywać połączenia, modyfikować ustawienia DNS, wdrożyć backdoora, zmienić reguły routingu, a także wykorzystać urządzenie do pivotingu w głąb infrastruktury. Taki scenariusz jest szczególnie groźny w sieciach operatorskich, kampusowych, osiedlowych, SMB oraz wszędzie tam, gdzie granice zaufania nie są wystarczająco restrykcyjne.

Dodatkowym czynnikiem ryzyka jest istnienie publicznych proof of concept oraz równoległe wykrycie innych podatności w ekosystemie OpenWrt. W rezultacie nieaktualne instalacje mogą być podatne na łańcuchowanie błędów, co zwiększa niezawodność ataku i utrudnia skuteczną obronę.

Rekomendacje

Priorytetem powinno być natychmiastowe przejście na wersję 24.10.8 w gałęzi 24.10 lub 25.12.5 w gałęzi 25.12. Aktualizacja powinna objąć zarówno obraz firmware, jak i wszystkie pakiety instalowane osobno po wdrożeniu systemu.

  • Zweryfikować, czy DHCPv6 jest rzeczywiście wymagane na wszystkich interfejsach.
  • Wyłączyć lub ograniczyć ekspozycję usługi tam, gdzie nie jest niezbędna.
  • Filtrować ruch do UDP 547 z niezaufanych stref sieciowych.
  • Przeprowadzić segmentację sieci ograniczającą możliwość generowania pakietów DHCPv6 przez nieautoryzowanych użytkowników.
  • Wykonać kopię konfiguracji przed aktualizacją i sprawdzić zależności pakietów.

Administratorzy powinni również przeprowadzić audyt zainstalowanych komponentów LuCI i usunąć moduły opcjonalne, które nie są używane. Szczególną uwagę warto poświęcić funkcjom administracyjnym, integracjom VPN, mechanizmom DDNS oraz wszelkim modułom umożliwiającym wykonywanie poleceń systemowych.

Z perspektywy monitoringu wskazane jest śledzenie logów pod kątem nietypowych żądań DHCPv6, restartów usług sieciowych, nieautoryzowanych zmian konfiguracji oraz podejrzanych procesów działających z uprawnieniami root. Dobrym uzupełnieniem jest porównywanie bieżących ustawień DNS, reguł firewalla i tras z wcześniej zapisanym stanem referencyjnym.

Podsumowanie

Krytyczna luka w OpenWrt DHCPv6 pokazuje, jak niebezpieczne mogą być błędy walidacji pamięci w usługach sieciowych działających z najwyższymi uprawnieniami. Połączenie zdalnej osiągalności, braku wymogu uwierzytelnienia, dostępnych materiałów proof of concept oraz roli routera jako kluczowego elementu infrastruktury sprawia, że CVE-2026-53921 należy traktować jako podatność o bardzo wysokim priorytecie.

Organizacje i użytkownicy korzystający z OpenWrt powinni niezwłocznie wdrożyć poprawki, ograniczyć ekspozycję DHCPv6 oraz sprawdzić stan dodatkowych pakietów i komponentów LuCI. W praktyce bezpieczeństwo routera pozostaje jednym z fundamentów bezpieczeństwa całej sieci.

Źródła

  • The Hacker News – Critical OpenWrt DHCPv6 Flaw Could Let Unauthenticated Attackers Run Code as Root — https://thehackernews.com/2026/07/critical-openwrt-dhcpv6-flaw-could-let.html
  • OpenWrt – Release v24.10.8 — https://github.com/openwrt/openwrt/releases/tag/v24.10.8
  • OpenWrt odhcpd – Security Advisory GHSA-gjp7-vw3v-82rj — https://github.com/openwrt/odhcpd/security/advisories/GHSA-gjp7-vw3v-82rj
  • OpenWrt LuCI – Pull Request #8878 — https://github.com/openwrt/luci/pull/8878
  • CISA Known Exploited Vulnerabilities Catalog — https://www.cisa.gov/known-exploited-vulnerabilities-catalog