27

Każdy smartfon ma dwa systemy operacyjne. Tak, Twój też

Dwa systemy operacyjne, to dwa razy większe możliwości i dwukrotnie więcej czynności wykonywanych przez nasz sprzęt. To również dwukrotnie większe ryzyko wystąpienia luki oraz podwójna szansa na wyciek danych lub przejęcie kontroli nad naszym urządzeniem… Każdy czytelnik Antyweba wie, co siedzi w jego smartfonie. Ja mam Androida, ktoś inny błyszczy swoim złotym iPhonem z iOS, […]

Dwa systemy operacyjne, to dwa razy większe możliwości i dwukrotnie więcej czynności wykonywanych przez nasz sprzęt. To również dwukrotnie większe ryzyko wystąpienia luki oraz podwójna szansa na wyciek danych lub przejęcie kontroli nad naszym urządzeniem…

Każdy czytelnik Antyweba wie, co siedzi w jego smartfonie. Ja mam Androida, ktoś inny błyszczy swoim złotym iPhonem z iOS, a jeszcze ktoś chwali sobie Windows Phone’a na Lumii. To dość oczywiste. Mówiąc o systemach mobilnych na świecie, mamy na myśli właśnie te marki, które prężnie się rozwijają, zapewniają użytkownikom coraz to nowe możliwości i wyższy komfort pracy oraz zabawy.

Ale chyba każdy z nas zdaje sobie sprawę, że za tym, co widzimy stoi szereg ukrytych, złożonych funkcji oraz linii kodu, które kontrolują różne aspekty działania urządzenia. Właśnie tutaj ukryty jest drugi system operacyjny, tak bardzo odmienny od tego, z którym mamy do czynienia na co dzień. Odpowiada on za wszelkie procesy komunikacyjne zachodzące w naszym urządzeniu, a więc łączność 3G lub LTE. Co więcej, ów system działa w czasie rzeczywistym, zawsze gdy nasz smartfon/tablet jest włączony i steruje mocą obliczeniową procesora pasma (baseband processor). Przykładowo w układzie Qualcomma oznaczonym jako MSM6280 znajdziemy posiadające własne jądro oraz bazujące na procesorze ARMv5 oprogramowanie AMSS, które wykonuje równolegle 69 zadań – począwszy od zarządzania USB, a na odbiorniku GPS skończywszy.

Drugi, a jednak ważniejszy

Drugi system operacyjny w naszych smartfonach nie jest otwarty, nie posiada interfejsu graficznego ani nawet żadnej dokumentacji. Powstaje gdzieś w strukturach koncernu przygotowującego podzespoły (albo jakiegoś podwykonawcy). W związku z tym trudno mówić tutaj o jakichkolwiek testach podatności na ataki czy jakichkolwiek innych procesach mających na celu pieczołowite jego zabezpieczenie. Szczególnie, biorąc pod uwagę fakt, że nikt nie interesuje się tą częścią urządzenia. Ma działać i tyle.

Jednak to nie zaniedbania czy błędy pracowników składają się na podatność wewnętrznego systemu w naszych smartfonach na ataki. Otóż standardy, według których działają dzisiejsze procesory pasma i częstotliwości powstały w latach ’80 XX wieku, a podstawy ich oprogramowania pisano w latach ’90, kiedy to jeszcze nie znano współczesnych metod zabezpieczania. Filozofia ich działania polega na tym, że przyjmują wszelkie dane, które są przesyłane przez nadajnik (stację BTS operatora) i bezgranicznie im ufają, przekazując dalej. Jest to szczególnie istotne, z uwagi na to, że procesor pasma jest nadrzędny w stosunku do procesora wykonującego obliczenia dla podstawowego systemu operacyjnego. A więc ten ostatni jest od niego uzależniony.

Przykład konsekwencji tego sposobu działania widać na wideo powyżej.  Ralf-Philipp Weinmann z Uniwersytetu w Luksemburgu zaprezentował jak w prosty sposób wstrzyknąć do procesora zarządzającego pasmem błędne instrukcje, które mogą nie tylko uszkodzić urządzenie, ale również zdalnie wykonać określone fragmenty kodu. Do tego celu wystarczą zaledwie 73 bajty kodu i to wszystko bezprzewodowo, bez świadomości użytkownika i bez konieczności instalacji jakiegokolwiek dodatkowego oprogramowania.

Nowoczesne smartfony, a komendy z 1981 roku

Problem polega na tym, że nadajniki, które mogą emitować tego typu fale i przesyłać dane do procesorów pasma są dość tanie i dostępne już w serwisach aukcyjnych. Co najgorsze, do ataku można wykorzystać chociażby komendy Hayesa, które pierwotnie opracowano w roku 1981 do kontroli modemów sieciowych. Dziś są one również obsługiwane przez oprogramowanie dla procesora pasma.

Konsekwencje wykorzystania luk w oprogramowaniu procesora pasma mogą być opłakane. Odpowiedni nadajnik umieszczony w centrum ruchliwej ulicy może uszkodzić telefony okolicznych przechodniów, aktywować w nich mikrofony, kamery lub po prostu wstrzykiwać złośliwy kod mający na celu osiągnięcie konkretnych korzyści.

Teoretycznie możliwe jest tutaj stosowanie pewnych zabezpieczeń opartych na certyfikatach odpowiadających za autoryzację, ale i tutaj czają się luki pozwalające na obejście tego typu praktyk.

Czyja to wina?

Kto jest odpowiedzialny za taki stan rzeczy? Dlaczego oprogramowanie dla procesorów pasma nie jest aktualizowane i działa na przestarzałych zasadach? Wszystko sprowadza się tutaj do regulacji patentowych, które sprawiają, że producentom znacznie łatwiej jest skorzystać z gotowych rozwiązań dostarczonych wraz z podzespołami (za co odpowiada m.in. Infineon ze zdjęcia), aniżeli rozwijać własne. Co więcej, przeprogramowanie procesora radiowego wiąże się z koniecznością uzyskania stosownych zezwoleń, co wymaga czasu, nakładu pracy oraz środków. Mamy operatorów sieci komórkowych, organizacje zarządzające standardami, producentów oraz ich podwykonawców… Kto jest zatem tutaj odpowiedzialny? Trudno wskazać jednego winowajcę, zważywszy na złożoność całego systemu.

Infineon-Baseband-Chip-X618

Zresztą spójrzmy na listę standardów opisujących GSM. Należałoby do niej doliczyć jeszcze UMTS, HSDPA, a na rogiem czai się 4G. Wszystko to zapieczętowano certyfikatami, których historia sięga wielu lat wstecz. Poruszenie jednego wywoła efektu kuli śnieżnej i może wiązać się z koniecznością wprowadzenia zmian w całych systemach. To natomiast wymaga efektywnej współpracy wielu organów, co przy obecnych rozmiarach rynku oraz ich liczbie jest bardzo trudne. Nie zapominajmy też kosztach. Który z podmiotów miałby je wziąć na siebie?

Mamy zatem w kieszeniach super-smartfony pracujące pod kontrolą super-systemów z setkami super-aplikacji bazujące na bardzo kruchych fundamentach. bez względu na to, czy mówimy o nowym modelu Samsunga, iPhone’a, HTC czy Nokii, mówimy o gigancie na glinianych nogach. Co jednak najgorsze, trudno wskazać konkretny sposób rozwiązania problemu, co zapewne skończy się tak, że w końcu ktoś to wykorzysta.

 

Źródła: [1], [2], [3], [4], [5], [6], [7]