11:08
22/7/2013

Znany czytelnikom Niebezpiecznika z testowania sieci GSM pod kątem podatności na ataki teleinformatyczne Karsten Nohl tym razem wziął na tapetę karty SIM. Wynik? Pół miliarda telefonów na świecie może być “zhackowanych” zdalnie, jednym, “niewidzialnym” SMS-em…

Karta SIM

Aby lepiej zrozumieć na czym polega atak Nohla, warto przybliżyć nieco zasadę działania i budowę karty SIM, która de facto jest minikomputerem; osobnym środowiskiem z własnym systemem operacyjnym, zasilanym z baterii telefonu.

Całe środowisko określa się mianem Java Card — na na kartę (a dokładnie “smartcard“) pisze się oprogramowanie (tzw. aplety) właśnie na platformie Java Card. Aplety są przenośne pomiędzy różnymi kartami (jest na nich to samo środowisko — JCVM), chociaż cechy fizyczne karty (dostępna pamięć, wykorzystywane algorytmy szyfrowania) mogą uniemożliwić działanie apletu na niektórych kartach. Co ważne, aplety uruchamiane na karcie są sandboksowane.

Java Card

Java Card

Kiedy operatorzy chcą zaktualizować któryś z apletów na naszej karcie SIM, robią to wysyłając do nas specjalnego, binarnego i co ważniejsze — niewidzialnego — SMS-a. SMS jest wysyłany zgodnie z protokołem OTA (over-the-air) i jest kryptograficznie podpisywany przez operatora.

Na czym polega atak na kartę SIM?

Nohl zauważył, że wysyłając zgodnie z OTA komendy (SMS-y) do karty SIM, niektóre z nich będą odpowiadały błędem, ponieważ otrzymana komenda nie była podpisana poprawnym kluczem operatora. Co ciekawe, karta generując komunikat z błędem podpisywała go z kolei swoim unikatowym kluczem — to pozwoliło Nohlowi złamać klucz karty (w ok. minutę) przy wykorzystaniu tzw. tablic tęczowych. Problem, który odkrył Nohl wynika z zastosowania przez niektóre z kart SIM przestarzałego i podatnego na ataki szyfrowania 56-bitowym DES-em (tak, tym z lat 70-tych, złamanym w 1998 roku).

Co można zrobić z kartą SIM?

Mając klucz karty SIM można:

  • kontrolować aplikacje operatora zainstalowane na karcie (np. wgrywać złośliwe aplety)
  • wykonywać akcje w imieniu “zhackowanej” karty (np. wysyłać SMS-y na płatne numery, obciążając rachunek niczego nieświadomego właściciela telefonu, lub przekierowywać jego rozmowy na inny numer, czyli po prostu je podsłuchiwać)
  • śledzić lokalizację właściciela karty

Ale to nie koniec. Nohl znalazł jeszcze jedną dziurę, dzięki której mógł ominąć sandboksing (restrykcję polegającą na separacji poszczególnych apletów zainstalowanych na karcie) — dzięki czemu “zrootował” kartę SIM. To otwiera możliwość do:

  • odczytywania nieswoich plików przez złośliwy aplet (np. dostęp do danych apletów płatniczych Visy czy PayPala, które mogą być wykorzystywane przez niektórych operatorów do tzw. mobilnych płatności)
  • wydobyć tzw. master-key karty, który pozwala na jej sklonowanie (pobranie wszystkich informacji z karty, które umożliwią wykonanie jej wiernego duplikatu — IMSI, Ki)

Ochrona przed atakami

…nie jest łatwa z poziomu zwykłego użytkownika. Należy liczyć na to, że ci z operatorów, którzy korzystają z kart ze słabymi algorytmami kryptograficznymi zaktualizują je do nowszych standardów. Operatorzy mogą też filtrować przesyłane przez ich sieć SMS-y protokołu OTA. Producenci kart SIM (np. Gemalto) są świadomi zagrożeń. Przynajmniej niektórzy — według Nohla przynajmniej 2 firmy pracują już nad poprawką.

O szczegółach ataku Nohl chce opowiedzieć na nadchodzącej pod koniec lipca konferencji BlackHat.

PS. Na koniec warto nadmienić, że na pobnej zasadzie co karty SIM działają “chipy” na kartach kredytowych oraz np. tych, które otrzymujemy wyrabiając kwalifikowany podpis elektroniczny. Problem z sandboksingiem też może ich dotyczyć…

Aktualizacja 5 sierpnia 2013
Operatorzy poprawili błąd korzystając z tego samego ataku :-)

Przeczytaj także:

39 komentarzy

Dodaj komentarz
  1. Macie namiary na jakieś narzędzia do wysyłania SMS’ów OTA ?

  2. DES i klucz “prywatny”? Ktoś tu nie myli pojęć?

    • szyfrowane 3DES, ale podpisane MK RSA 1024

  3. Kiedyś dało sie używać Kannela (WAP gateway) do wysyłania binarnych SMS

    • Binarne smsy wyślesz np. zwykłą Java ME aplikacją. Napisanie jej zajmie ci 15 min.

  4. Czyli teraz zabezpieczenie transakcji w bankowości elektronicznej pod postacią SMS’a z kodem są praktycznie nic nie warte… :> Na szczęście są inne metody potwierdzania transakcji – bardziej fizyczne jak np. otrzymywana od banku lista jednorazowych tokenów autoryzujących – choć ze względu na większą wygodę SMSów niewiele(niestety) osób z tego korzysta.

    • Z tą wygoda to dyskusyjne… np. nigdy nie zdarzyło mi się, żeby mi w kartce z kodami jednorazowymi bateria padła.

    • Papierowa lista tokenów wyciera się w portfelu, zgadywanki czy brakująca trzecia cyfra to 3, 8 lub 0, a czwarta dowolną z przedziału 1..10 przypomina program z Zygmuntem Chajzerem online.

    • Fajnie tylko musisz najpierw znać numer telefonu ofiary oraz liczyć ,że ta karta SIM jest podatna. Po za tym wciąż, ten sms nie przejmiesz w taki sposób ,że odbiorca nie otrzyma wiadomości. Zawsze ją dostanie, a jeśli taką otrzyma, to chyba będzie to podejrzane w sytuacji gdy nie wykonywał w tym momencie żadnej operacji.
      A te super bezpieczne kartki? Tak samo podatne bo wystarczy ,że zgubisz ją samą lub portfel i dostęp nie do jednego a kilkunastu kodów ma niepożądana osoba. Więc sobie daruj z tymi zarzutami.

    • Przeciez to byla zawsze metoda dla frajerow. Tylko token i nic wiecej, ale wiadomo: tokena nie ma w “biedronkowych” bankach dla studentow, wiec toekn jest fe, a komora jest cacy. Szkoda tylko, ze powaznie nikt nie uzywa komorek do generowania kodow, a tokeny wlasnie. BTW: kolejna psuedodziura NSA.

    • PROTIP: Papierowa lista haseł jednorazowych nie wyciera się, jeśli ją złożyć na pół wydrukiem do wewnątrz i tak trzymać w portfelu.

      Gorsze są “zdrapki”, bo nie da się ich łatwo i wygodnie zabezpieczyć przed wycieraniem.

      Co do ryzyka związanego ze zgubieniem kartki – jest żadne, o ile się nie zapisze na niej loginu (i hasła, jeśli jest wymagane). Taka sama sytuacja jak przy zgubieniu tokena.

    • do TrashO2, tokeny to właśnie jest porażka. CreditAgricole (dawny LucasBank), proponuje token klientom na absurdalnych zasadach. Tylko 1 operacja potwierdzona kodem tokena, na następną operację trzeba czekać minutę. Nawet żeby zalogować się do banku i sprawdzić stan konta potrzeba kod z tokena. To ja już wolę ten kiepski Multibank gdzie mam jeszcze parę darmowy list z jednorazowymi hasłami.

    • a co komu przeszkadza cała zdrapana karta kodów w portfelu?
      ;)

  5. To nie jest takie proste :)
    Jeden ze składników uwierzytelniania jest zaszyty na karcie i żeby go zdobyć, albo trzeba “pingować” tak długo, że bateria na pewno by padła :) wish u luck.

  6. Da się wykorzystać kartę SIM w pełni kontrolowaną przez atakującego do wstrzyknięcia złośliwego kodu do Ramu smartfona? Tak by na przykład pobrać bardziej skomplikowany złośliwy program z Internetu, włączyć i w ten sposób mieć pełną kontrolę na smartfonem i wszelkimi danymi na nim?

  7. Na wp.pl już jest nawet artykuł http://tech.wp.pl/kat,1009781,title,Grozna-luka-w-kartach-SIM-750-milionow-telefonow-zagrozonych,wid,15831932,wiadomosc.html Straszą w nim “Digital Encryption Standard” i innymi mądrymi słowami.

  8. Zgłaszam zagrożenie bezpieczeństwa!
    Zagrożony jest język ojczysty! Czemu piszecie “70-tych”? Toż to źle!
    http://pl.wikipedia.org/wiki/Pomoc:Powszechne_b%C5%82%C4%99dy_j%C4%99zykowe

  9. Wziął na tapet, jeśli już.
    http://pl.wikipedia.org/wiki/Tapet

  10. Czytaliście autobiografię Kevina Mitnick’a? Pamiętacie to, jak bawił się swoim telefonem? Od razu mi się to skojarzyło, gdy przeczytałem o klonowaniu karty SIM :)

  11. Czy wiadomo teraz jak kopiować karty sim w tani sposób?

  12. Odróżniacie w artykule klucz operatora i klucz karty – a to ten sam klucz, bo szyfrowanie DES jest symetryczne.

  13. ja tam dostrzegam pozytywne strony ponownej mozliwosci latwego klonowania kart SIM

  14. … a to oznacza, że również w pozostałych 5 250 mln telefonów operatorzy (w tym część ich pracowników, agentów wywiadów itd.) mogą nadal bez żadnych ograniczeń szpiegować użytkowników.

  15. Coś mi się majaczy, że kiedyś (~10 lat temu) klonowanie kart (w Polsce) było czymś w miarę normalnym. Dopiero potem pojawiły się jakieś inne karty, których nie dało się kopiować (wręcz się przy tym uszkadzały). Rozumiem, że sprawa dotyczy tylko starych numerów, których właściciele nigdy nie wymieniali karty?

  16. To, że DES nie jest bezpieczny to wiadomo od kiedy RSA ogłosiło konkurs na jego złamanie. Nie bez powodu też standard DES został zamieniony na AES.

    Mam pytanie z innej beczki za to, ale związane z tematem. Jak sprawdzić czy moja karta SIM opiera się na “starożytnym” szyfrowaniu DES? Czy w ogóle się da?

  17. Istnieje jakaś opcja zblokowania w ogóle takich smsów?
    Przerobiony firmware do telefonu?

  18. Powiedzcie, jak mocno głupim trzeba byc człowiekiem by mieć
    nowoczesny telefon w kieszeni? Przecież – do łączenia się z bankiem
    mam Internet w domu – ustalone w tym celu IP (bank>dom),
    podpis elektroniczny z czytnika linii pap. (Italia) szyfrowane …
    Do słuchania muzyki mam w samochodzie fajnego sony i 12 głośników.
    Do oglądania telewizji mam fajnego Panasonica 50″ w Full HD i
    dekoder SKY w którym jest 75 kanałów HD 1920×1080. Do trzymania
    notatek mam notes i długopis :-) Maile odczytuję z domu a do
    telefonowania mam Nokię 3410 (tak, tak… 3410!!) i nadal bateria
    działa 5-6dni – zasięg jest i gra gitara! Numery PIN i rachunków
    trzymać w komórce? A nie lepiej spisać na kartę mazakiem i od razu
    rzucić jakiemuś żebrakowi na ulicy do garnka? Świat
    zdebilniał!

    • Choćby po to, aby jako reporter móc na bieżąco wrzucać informacje na serwis dla którego tworzę. To że maile odczytujesz w domu to też Twoja sprawa – niektórzy pracują i odbiór maili ma u nich równy priorytet jak rozmowy telefoniczne.
      Z ustalonym do banku IP – życzę szczęścia. Ani Orange, ani Netia nie dają stałego – a to większość rynku telekomunikacyjnego w PL.
      Innymi słowy chciałeś zabłysnąć swoją 3410 – a tu nie wyszło. Nie każdy posiadacz PDA/smartphone jest pryszczatym gimnazjalistą puszczającym rap z teledysku na głośniku, podczas jazdy autobusem. Są wciąż ludzie którzy używają te urządzenia zgodnie z przeznaczeniem – czyli jako pomoc przy pracy.

  19. A ja mam pytanie trochę z innej beczki: czy taki “niewidzialny” SMS “słychać” w nieekranowanych głośnikach, tak samo jak słychać nadchodzenie połączenia lub zwykłej wiadomości SMS?

  20. Jezdem leprzy, mam 3210… ;]

  21. @kitor
    Chyba można, tylko trzeba zapłacić ( ale jak jest teraz nie sprawdzałem ), kiedyś można było na firmę, oczywiście nie dotyczy to mobilnego netu… ;]

  22. Kiedy Apple wypuszczał iPhone’a na rynek. [*] Steve Jobs, mówił o tym, że to Apple kontroluje to co jest na telefonie itp. Czy jeśli korzystam z iPhone’a (nawet starszego typu jak 3G, który już nie jest wspierany) i mam listę kontaktów, maile, smsy itd. w telefonie, a nie na karcie SIM, to mam bać się tego typu ataków? Czy jest możliwe podsłuchanie mojej rozmowy telefonicznej w wyniku tego ataku? Jeśli nie – to dlaczego Apple jako pierwszy i IMHO. jedyny parę lat temu zostawił operatorom sieci komórkowych tylko jedno zadanie – dajcie nam zasięg… A firma produkująca telefon niech zatroszczy się o resztę? … O Sandboxie i innych bajerach w iOS już nie wspomnę… Hm. Byćmoże “hidden SMS” potrafi przejąć także kontrolę nad systemem? Hm. Co w przypadku, kiedy komórka podłączy się do BTS’a stworzonego tylko po to, by przejmować prywatne dane? Jest coś, co potrafi wykryć tego typu atak?

  23. ale w sumie fajnie by było gdybym mógł wciągnąć kartę sim do pamieci smyrofona i mieć dual sim przy 1 miejscu na kartę

  24. […] AIMSICD jest jeszcze w fazie tworzenia, ale już teraz wiadomo, że aplikacja będzie pozwalała na wykrywanie pewnych charakterystycznych dla ataków MitM w sieciach GSM cech. Dodatkowo przy jej pomocy będzie można wykrywać i blokować próby instalacji “ukrytych” aplikacji i ataków na kartę SIM “ukrytym” SMS-em (por. Karty SIM podatne na ataki “niewidzialnym SMS-em”) […]

  25. “Nohl znalazł jeszcze jedną dziurę, dzięki której mógł ominąć sandboksing” – Java

  26. […] badacze Jakob Lell oraz Henryk Plotz i znany czytelnikom Niebezpiecznika Karsten Nohl, ostrzegają, że wszystko co podpinamy do portu USB powinno być traktowane jako z założenia […]

  27. […] “minikomputerem” jakim jest karta SIM, a ta też ma swoje (znane) problemy (por. Karty SIM podatne na ataki — pół miliarda telefonów można przejąć niewidzialnym SMS-em). Karty SIM uruchamiają TAR-y (czyli aplikacje SIM; ang. Toolkit Application Reference). Aby się […]

  28. Hmm. Czytam to wszystko i wiem że niemożliwych rzeczy nie ma zwłaszcza w naszym kraju. I rozumiem że jeśli ktoś za pomocą kodów ussd uruchamia na moim koncie abonenckim usługi a nadmienię że za pomocą mojej karty sim będącej w urzadzeniu którego nigdy nie byłem w posiadaniu to znaczy że ktoś korzysta z klonu mojej karty? A tylko nie wiem jak jest mozliwe aby te karty jednocześnie logowały się do sieci? Czy za pomocą smsów binarnych można włączyć na androidzie poprzez klon karty np tryb videonagrywania w procesach telefonu? Druga sprawa idę do operatora z kartami sim luzem a tam się dowiaduję że one aktualnie są w urządzeniu takim i takim o takim numerze imei. No to tyle na to co przeczytałem powyżej. A wszystko sterowane najprawdopodobniej nie tylko smsami binarnymi ale również zwykłymi w tresci których zawsze podanych parę liczb. Nie jestem ani informatykiem ani programistą a z autopsji piszę. Czy mając klon karty sim ktoś może zrobić wszystko z telefonem w który jest ona włożona??? Wszystko wszystko???

Twój komentarz

Zamieszczając komentarz akceptujesz regulamin dodawania komentarzy. Przez moderację nie przejdą: wycieczki osobiste, komentarze nie na temat, wulgaryzmy.