Karta SIM kojarzy się przede wszystkim z identyfikacją abonenta i dostępem do sieci komórkowej. Okazuje się jednak, iż w określonych urządzeniach może stanowić zagrożenie. Badacze z University of Birmingham oraz firmy Fuzzware wykazali, iż odpowiednio przygotowana karta jest w stanie wykorzystać standardową funkcję komunikacji z modemem do wykonywania poleceń AT dostarczonych przez atakującego.
Problem dotyczy przede wszystkim modułów komunikacyjnych stosowanych w urządzeniach IoT i przemysłowych. W badaniach przetestowano 26 telefonów i modułów komórkowych, a obsługę podatnej funkcji znaleziono w dziewięciu urządzeniach. Co szczególnie istotne, badaczom udało się wykorzystać tę technikę do wykonania własnego kodu na komercyjnej ładowarce samochodów elektrycznych.
SIM może wydawać polecenia modemowi
Sednem problemu jest mechanizm RUN AT, należący do tzw. proactive commands dostępnych dla kart SIM. Standardy komunikacji komórkowej pozwalają karcie nie tylko na przechowywnie danych i uczestniczenie w procesie uwierzytelniania, ale również na inicjowanie określonych działań po stronie urządzenia końcowego.
RUN AT jest szczególnie interesujący z punktu widzenia bezpieczeństwa, ponieważ daje karcie SIM możliwość przekazania modemowi polecenia w języku AT. Jest to zestandaryzowany, choć mocno rozszerzany przez producentów, mechanizm sterowania modemami. AT commands mogą służyć między innymi do konfiguracji połączeń, obsługi sieci czy zarządzania funkcjami urządzenia.
Problem zaczyna się wtedy, gdy producent dopuszcza, aby polecenia pochodzące z karty SIM trafiały do warstwy systemowej bez wystarczającej kontroli. W takim przypadku SIM przestaje być wyłącznie elementem uwierzytelniającym i staje się potencjalnym wejściem do znacznie większej powierzchni ataku. Badacze podkreślają, iż sama funkcja nie jest błędem w standardzie – jest jego oficjalnie zdefiniowanym elementem. Ryzyko wynika przede wszystkim z tego, jak producenci zaimplementowali ją w swoich modemach.
Największy problem dotyczy urządzeń IoT
W przypadku telefonów potencjalne skutki są ograniczone przez dodatkowe warstwy zabezpieczeń systemu operacyjnego. Zupełnie inaczej wygląda to w przypadku przemysłowych modułów LTE i 5G.
Takie komponenty znajdują się między innymi w ładowarkach samochodów elektrycznych, routerach przemysłowych, systemach telemetrycznych samochodów, terminalach płatniczych i innych urządzeniach M2M. Często pracują praktycznie bez nadzoru, przez lata pozostają podłączone do sieci i nie oferują użytkownikowi wielu możliwości kontroli nad wewnętrznym modemem.
Badacze przetestowali osiem modułów komórkowych i sześć z nich zaakceptowało polecenie RUN AT. Pięć z tych sześciu urządzeń było opartych na rozwiązaniach firmy Quectel. Wszystkie dziewięć urządzeń, które wykazały podatne zachowanie, korzystało z procesorów komunikacyjnych Qualcomm, choć nie oznacza to, iż problem dotyczy wszystkich urządzeń z układami tego producenta. Wśród przebadanych telefonów tylko trzy obsługiwały tę funkcję: OPPO Find X5, OPPO Reno 14 F 5G oraz ASUS Zenfone 9.
Od polecenia AT do wykonania kodu
Najbardziej interesujący scenariusz badacze zademonstrowali na ładowarce samochodów elektrycznych.
Wykorzystany został moduł Quectel EC25AFXDGA, którego oprogramowanie zawierało komponent atfwd_daemon. Jego zadaniem było przekazywanie określonych poleceń AT do odpowiednich funkcji systemowych.
Problem polegał na tym, iż dane kontrolowane przez kartę SIM trafiały ostatecznie do wywołania powłoki systemowej w sposób umożliwiający command injection. Mechanizm ochronny próbował blokować znaki wykorzystywane do wykonywania poleceń powłoki, ale zastosowana lista blokad nie była wystarczająca. Badacze znaleźli sposób na ominięcie tego ograniczenia i w kilku etapach doprowadzili do wykonania własnego kodu na urządzeniu.
Co ważne, nie był to atak wymagający połączenia z interfejsem administracyjnym ładowarki. Punktem wyjścia była karta SIM znajdująca się w module komórkowym.
Nie trzeba znać numeru telefonu ofiary
Istotnym elementem całego scenariusza jest sposób dostarczenia złośliwej karty. Atakujący musi w pewnym momencie uzyskać możliwość umieszczenia przygotowanej SIM w urządzeniu. Może to oznaczać fizyczną wymianę karty, zastosowanie specjalnego interposera pomiędzy kartą a czytnikiem albo wykorzystanie innych sposobów przejęcia kontroli nad kartą lub procesem jej dostarczania.
Oznacza to, iż nie jest to klasyczny atak zdalny, w którym wystarczy znać numer telefonu lub adres IP urządzenia. W przypadku wielu urządzeń IoT bariera fizycznego dostępu może być jednak znacznie niższa niż w przypadku telefonów. Ładowarka znajdująca się na parkingu, router przemysłowy w odległym oddziale czy system komputerowy pojazdu mogą pozostawać bez bezpośredniego nadzoru przez wiele miesięcy.
Smartfon można zmusić do przejścia na 2G
Badacze pokazali również, iż RUN AT może prowadzić do bardzo nietypowych konsekwencji na telefonach.
Na urządzeniu OPPO Reno 14 F 5G udało się wykorzystać tę funkcję do wymuszenia przełączenia telefonu na sieć 2G. Szczególnie niebezpieczne jest to, iż użytkownik nie był w stanie łatwo cofnąć tej zmiany z poziomu ustawień systemowych.
2G nie zapewnia współczesnych mechanizmów wzajemnego uwierzytelniania charakterystycznych dla nowszych generacji sieci komórkowych. Wymuszenie takiego trybu może więc stworzyć warunki sprzyjające dalszym atakom, w tym wykorzystaniu fałszywej stacji bazowej.
Badacze wykazali również możliwość wykorzystania kolejnych poleceń do wyłączenia telefonu lub jego modemu. Narzędzie CATana, stworzone przez zespół badawczy do analizy tej powierzchni ataku, znalazło na wspomnianym urządzeniu 198 poleceń AT dostępnych z poziomu SIM.
Źródło: www.usenix.org/system/files/woot26-lisowski.pdfObniżenie standardu 2G w OPPO Reno 14 F 5G. Lewy obrazek pokazuje, iż wybrano wszystkie typy sieci, środkowy iż telefon wykrywa wiele sieci 4G, a prawy, iż po obniżeniu standardu telefon widzi tylko sieci 2G. Po ataku telefon przełącza się również z sieci 4G na sieć 2G.
Możliwa jest również kradzież danych
RUN AT nie jest jedynym elementem układanki. Badacze pokazali także scenariusz wykorzystujący moduł Quectel EG25-G, w którym możliwy był dostęp do dowolnych plików znajdujących się na urządzeniu.
W tym przypadku wykorzystano podatność w usłudze TFTP działającej z uprawnieniami root. Brak odpowiedniej kontroli nad dowiązaniami symbolicznymi pozwalał na odczytywanie plików spoza zamierzonego katalogu. Następnie dane mogły zostać przesłane przy użyciu funkcji SMTP, dostępnej w samym module.
Ten scenariusz wymaga spełnienia dodatkowego warunku – odpowiednio przygotowany plik musi wcześniej znaleźć się w systemie urządzenia. Pokazuje jednak, jak niebezpieczne może być połączenie kilku pozornie niezależnych funkcji i podatności w module komunikacyjnym.
Dlaczego architektura modemów IoT jest problemem?
Wiele modułów komórkowych nie jest jedynie prostym układem odpowiedzialnym za komunikację radiową.
Wewnątrz znajduje się również procesor aplikacyjny, często oparty na architekturze ARM i uruchamiający własne środowisko systemowe. Moduł może więc posiadać własny system operacyjny, procesy, usługi, system plików oraz dodatkowe interfejsy.
To właśnie tutaj pojawia się największy problem. o ile warstwa basebandu pozwala karcie SIM przekazywać polecenia AT, a następnie posyła je dalej, do bardziej uprzywilejowanych komponentów, karta otrzymuje nieoczekiwany dostęp do kolejnej warstwy systemu.
W praktyce oznacza to, iż bezpieczeństwo całego urządzenia zależy nie tylko od aplikacji działającej na głównym procesorze, ale również od firmware’u modemu, implementacji SIM Toolkit i sposobu filtrowania poleceń przechodzących pomiędzy tymi warstwami.
Problem nie jest nowy
Badania nie pojawiły się znikąd. Zespół z University of Birmingham już wcześniej analizował możliwości wykorzystania złośliwych kart SIM jako punktu wejścia do urządzeń.
W ramach wcześniejszych prac badacze pokazali, iż standardowe mechanizmy proactive commands mogą tworzyć dodatkową powierzchnię ataku. W badaniach opublikowanych w ramach USENIX Security 2024 zwracali również uwagę na obecność kodu obsługującego RUN AT w firmware’ach basebandów, choćby gdy urządzenia nie deklarowały oficjalnego wsparcia dla tej funkcji.
Najnowsze eksperymenty pokazują więc coś więcej niż teoretyczne zagrożenie. Tym razem badaczom udało się znaleźć urządzenia, które rzeczywiście przyjmowały polecenia RUN AT, i wykorzystać tę możliwość do przeprowadzenia praktycznych ataków.
Jak organizacje mogą ograniczyć ryzyko?
W przypadku urządzeń IoT najważniejsze znaczenie ma ustalenie, jakie funkcje są faktycznie aktywne w używanych modułach komórkowych. Administratorzy odpowiedzialni za floty urządzeń powinni sprawdzić u producenta modułu, czy firmware obsługuje RUN AT oraz czy funkcję można wyłączyć.
Szczególne znaczenie ma to w przypadku urządzeń rozmieszczonych w miejscach publicznych lub pozbawionych stałego nadzoru. o ile fizyczna wymiana karty SIM jest możliwa, powinna być traktowana jako istotny element modelu zagrożeń.
Warto również monitorować firmware modułów i wymagać od dostawców informacji dotyczących aktualizacji bezpieczeństwa. Problem jest szczególnie istotny w przypadku komponentów takich jak Quectel EC25, EG25 czy RM52xN, które – według badaczy – mogą być szeroko wykorzystywane w samochodach, ładowarkach, routerach przemysłowych i innych urządzeniach IoT.
Co z podatnością?
Badacze zgłosili swoje ustalenia Qualcommowi, Quectelowi, Google, OPPO i Semtechowi w marcu 2026 roku, a w maju poinformowali również GSMA.
Interfejs SIM AT został powiązany z identyfikatorem CVE-2026-57550 po stronie Qualcomm oraz CVD-2026-0122 po stronie GSMA. Według dostępnych informacji nie ma w tej chwili dowodów na wykorzystanie tej techniki w rzeczywistych atakach.
Qualcomm przygotował wzmocnioną konfigurację, która ma domyślnie wyłączać problematyczny interfejs. Quectel potwierdził natomiast, iż podatność związana z command injection została usunięta w nowszym firmware, choć producent nie opublikował jeszcze pełnej listy wersji podatnych i naprawionych.
Podsumowanie
Badania pokazują, iż karta SIM może być czymś znacznie więcej niż tylko kluczem umożliwiającym dostęp do sieci operatora. W określonych konfiguracjach może stać się punktem wejścia do modemu, a następnie do całego urządzenia.
Największe ryzyko dotyczy w tej chwili infrastruktury IoT, w której moduły komórkowe działają jako niewidoczna warstwa komunikacyjna. Ładowarka pokładowa czy router mogą posiadać własny procesor, system operacyjny i zestaw usług, a jednocześnie pozostawać praktycznie poza standardowym monitoringiem bezpieczeństwa.
Najbardziej niepokojące jest to, iż RUN AT nie jest egzotycznym mechanizmem ani błędem wynikającym z przypadkowego kodu. To funkcja przewidziana przez standardy komunikacji komórkowej. Problem pojawia się wtedy, gdy urządzenie pozwala jej sięgnąć zbyt głęboko w system.
Dla producentów IoT jest to kolejny argument za zasadą least privilege również na poziomie firmware’u modemu. o ile funkcja nie jest potrzebna, powinna zostać wyłączona. jeżeli musi pozostać aktywna, jej możliwości powinny być ograniczone do minimum.

