Podatność systemów łączności

W styczniu 2025 roku grupa badaczy bezpieczeństwa Cellular Security z Florida Institute for Cybersecurity Research ujawniła aż 119 (sic!) luk w zabezpieczeniach systemów łączności w sieciach LTE i 5G, z czego 93 otrzymały identyfikatory CVE.

Zanim przybliżmy czym są te podatności, na początek parę słów wyjaśnienia czym jest identyfikator CVE, czyli skrót od Common Vulnerabilities and Exposures. Ponad 25 lat temu eksperci i badacze cyberbezpieczeństwa przyjęli umowny sposób oznaczania luk w oprogramowaniu (oraz w sprzęcie). Identyfikator CVE przyjmuje postać CVE-ROK-NUMER, gdzie ROK odnosi się do konkretnego roku odkrycia podatności, a NUMER oznacza numer podatności w danym roku. Lista identyfikatorów podatności dostępna jest na stronach organizacji [1]. Przykładowo, jedna z wykrytych przez tę grupę podatności nosi identyfikator CVE-2024-24454. Ten sposób standaryzacji ma na celu usprawnienie współpracy globalnej, bowiem badacze oraz zarządzający bezpieczeństwem w firmach odnoszą się do tego samego identyfikatora podatności. Przydział numerów CVE zarządzany jest na zlecenie dwóch amerykańskich agencji rządowych zajmujących się bezpieczeństwem narodowym i cyberbezpieczeństwem
[2]. Identyfikatory CVE mogą być też przydzielane przez zaufane organizacje określane jako CNA (CNA – CVE Numbering Authorities). W Polsce organizacją przydzielającą numery CVE jest CERT Polska [3] zaś pierwsza zgłoszona podatność otrzymała numer CVE-2023-0956 i dotyczyła luki w konfiguracji typu path traversal w oprogramowaniu SCADA w module WebInterface. Szczegóły ataku path traversal zostały świetnie opisane na stronie portalu Sekurak [4].

Z identyfikatorami CVE nieodłącznie związane są też inne akronimy, które mogą pojawić się w opisach jak np.:

  • CVSS (Common Vulnerability Scoring System) to wartość liczbowa określająca jak poważna jest to
    podatność,
  • CWE – Common Weakness Enumeration to kod opracowanej przez społeczność listy kodu podatności. Dla przykładu pierwszy polski CVE zawiera kod CWE-25 (path traversal),
  • KEV – (Known Exploited Vulnerabilities) to tzw. lista znanych podatności, które są aktywnie wykorzystywane do ataków hackerskich.

Szczegóły luk w bezpieczeństwie w sieci LTE i 5G grupa badawcza opublikowała w artykule „RANsacked: A Domain-Informed Approach for Fuzzing LTE and 5G RAN-Core Interfaces” [5]. Ta gra słów na wstępie tytułu wskazuje, że dotyczy to głównie sieci dostępowej RAN (Radio Access Network) zaś „sacked” oznacza „ograbić” lub „splądrować”. Badacze do wykrycia podatności wykorzystali technikę fuzzingu, która to jest metodą testowania oprogramowania polegającą na przesyłaniu automatycznie sztucznie wygenerowanych losowych danych i sprawdzeniu, jaki to wywołuje efekt. Czy wystąpią niepożądane zdarzenia, np. zawieszenie się programu/modułu/ komponentu, niezamierzone wykorzystanie pamięci przez program (tzw. memory leak) itd. Warto dodać, że polski badacz bezpieczeństwa (mieszkający w USA) Michał „lcamtuf” Zalewski w 2013 roku opublikował oprogramowanie AFL, które korzysta min. z wyspecjalizowanych generatorów opartych o algorytmy genetyczne do tworzenia ciągów testowych. Rozwiązanie AFL przyczyniło się do odkrycia wielu (liczonych w dziesiątkach) podatności jak np. przeglądarka Firefox, filtr pakietów w NetBSD, programie zdalnego dostępu Putty itd., które oczywiście otrzymały swoje identyfikatory CVE (CVE-2014-9427, CVE-2014-8637, CVE-2015-0208 itd.). Oczywiście, zachęcamy do zapoznawania się z opisami tych podatności.

Badacze opracowali własne rozwiązanie ASNFuzzGen, które służyło do testowania „wewnętrznej” komunikacji w sieciach LTE/5G
Zdjęcie: Adobe Stock, Best_Seller

Tak więc badacze podatności LTE /5G wykorzystali fuzzing do testowania i oceny bezpieczeństwa systemów, gdzie min. wykorzystali rozwiązanie AFL do tworzenia nowych mutacji ciągów testowych. Przetestowano dobrze znane w branży implementacji LTE takie jak: Open5GS, Magma, OpenAirInterface, Athonet, SD-Core, NextEPC srsRAN oraz trzy implementacje 5G: Open5GS, Magma i OpenAirInterface. Te rozwiązania wykorzystuje się głównie w prywatnych lub przemysłowych sieciach LTE/5G.

Badacze opracowali własne rozwiązanie ASNFuzzGen, które służyło do testowania „wewnętrznej” komunikacji w sieciach LTE/5G. Trudność polegała na tym, iż do wektora ataku wykorzystano komunikację pomiędzy RAN a siecią rdzeniową (Core). Badacze argumentują, że atak hackerski polegający na skompromitowaniu i przejęciu stacji bazowej staje się realnym i coraz częstszym zagrożeniem dla bezpieczeństwa sieci komórkowych. Wspominają oni, że według raportu ENISA (Agencji Europejskiej ds. Cyberbezpieczeństwa) aż 18% wszystkich incydentów związanych z bezpieczeństwem sieci komórkowych
dotyczyło ataków na stacje bazowe.

Działanie sieci LTE/5G, w telegraficznym skrócie i dużym uproszczeniu, polega na tym, że urządzenie użytkownika (UE User Equipment – może to być np. smarfon) komunikuje się z siecią za pomocą fal radiowych poprzez dedykowany interfejs radiowy (RAN Radio Access Network). W tym procesie uczestniczą stacje bazowe zwane: eNodeB (wersja dla LTE) lub gNodeB (wersja dla 5G). Następnie stacje bazowe komunikują się z siecią rdzeniową (core), wykorzystując do tego specjalistyczne protokoły takie jak: S1 (S1AP) lub NGAP (Next Generation Application Protocol). W architekturze sieci rdzeniowej (core) w sieciach LTE i 5G (w dużym uproszczeniu) kluczowym komponentem zarządzającym komunikacją z UE są:

  • MME (Mobility Management Entity) dla LTE
  • AMF (Access and Mobility Management Function) dla 5G.

Jednym z zadań tych modułów sieci rdzeniowej (core) jest „zarządzanie” komunikacją z UE na danym obszarze geograficznym oraz sprytne przełączanie połączenia radiowego EU z jednej stacji bazowej na inną (tzw. handover). Warto nadmienić, iż komunikacja pomiędzy EU a MME/AMF (sygnalizacja sterująca) odbywa się za pomocą protokołu NAS (non access stratum) oraz, że ta komunikacja działa w trybie end-to-end, co oznacza, że stacje bazowe (gNodeB/gNodeB) nie interpretują tych danych tylko zajmują się przekazaniem danych do MME/AMF. Dokładnie właśnie te przedstawione komponenty oraz protokoły zostały wykorzystane jako wektor ataku na testowane rozwiązania sieci LTE i 5G.

I tak z 119 odkrytych luk: aż 79 dotyczyło MME, a 36 implementacji w AMF, a 4 dotyczyło innych elementów architektury sieci rdzeniowej (core), z czego aż 25 ataków możliwych było do przeprowadzenia poprzez EU bez potrzeby wcześniejszego uwierzytelniania się do sieci (atak w fazie pre-NAS) czyli bez karty SIM. Urządzenie UE musi tylko wysłać odpowiednio spreparowany pakiet danych na początku połączenia z daną siecią komórkową.

Każda z tych podatności może skutkować trwałym zablokowaniem usług komórkowych dla danego obszaru działania sieci (obszar obsługiwanego przez MME/AMF), a niektóre z nich mogą umożliwiać zdalny dostęp do sieci rdzeniowej (network core) i poszerzać obszar ataku.

Badacze podsumowują, że zgodnie z procedurą odpowiedzialnego ujawnienia podatności, zgłosili się do każdego z twórców testowanego oprogramowania, w ramach zgłoszenia przekazali dokładne dane wejściowe, które powodowały awarie i umożliwiały odtworzenie błędów. Wskazali również fragmenty kodu, które zawierały wykryte podatności o to, aby mieli oni szansę załatać systemy i wdrożyć poprawki przed datą publikacji artykułu.

Szerzej z przedstawionymi podatnościami wraz z rysunkami i diagramami można zapoznać się na dedykowanej stronie grupy badawczej Cellular Security [6].

Na koniec, w myśl inicjatywy „bezpieczny smartfon” i „bezpieczna cyberprzestrzeń”, zachęcam czytelników do regularnego przeglądania komunikatów i ostrzeżeń KNF (Komisji Nadzoru Finansowego), które przygotowują CSIRT KNR (Zespół Reagowania na Incydenty Bezpieczeństwa Komputerowego) [7].

Strona ta jest często aktualizowana i zawiera przegląd wybranych oszustw internetowych (nowe formy oszustw opisywane są co miesiąc !!!) wraz z poradami jak zabezpieczyć się przed kradzieżą środków finansowych użytkowników cyberprzestrzeni. Dla przykładu, przegląd z grudnia 2024 opisuje fałszywe aplikacje podszywające się pod banki działające w Polsce.

Krystian Górski

Źródło:
[1] Strona z listą podatności CVE https://www.cve.org/
[2] Amerykańska Agencja Cyberbezpieczeństwa https://www.cisa.gov/
[3] CERT Polska – polski CNA przydzieląjący numery CVE https://cert.pl/cve,
[4] Opis podatności „path traversal” https://sekurak.pl/czym-jest-podatnosc-path-traversal/
[5] artykuł „RANsacked: A Domain-Informed Approach for Fuzzing LTE and 5G RAN-Core Interfaces” https://nathanielbennett. com/publications/ransacked.pdf
[6] https://cellularsecurity.org/ransacked
[7] Ostrzeżenia CSIRT KNF https://cebrf.knf.gov.pl/komunikaty/artykuly-csirt-knf

Czytaj dalej