Figyelem! Az alábbi cikk szigorúan tájékoztató jellegű, és az érthetőség kedvéért sok technikai részlet lényegesen leegyszerűsítve szerepel benne! Mielőtt feltennéd az idevágó kérdésedet, olvasd el figyelmesen a cikket! A szifon.com nem vállal felelősséget az itt leírtak meg nem értéséből vagy hibás értelmezéséből fakadó problémák esetén!
Először talán tisztázzuk a fogalmakat, melyik mit is jelent, és miért lehet érdekes, majd aztán részletesen mindkettőről, előnyökkel, hátrányokkal.
NCK/NSCK: az NCK a Network Code Key-ből származó rövidítés, az ilyen kódokkal lehet szolgáltatófüggetlenné tenni egy adott mobilkészüléket. Az NCK-t általában az adott készülék egyedi azonosítójából (IMEI) és a hálózat kódjából (MCC+MNC) szokták generálni.
Gevey SIM: egy olyan eszköz, amit a SIM kártya és a készülék SIM-olvasója közé helyezünk, és ami a GSM/UMTS-kapcsolat azonosítási folyamatába is beavatkozva el tudja hitetni a készülékkel, hogy olyan kártyát használunk, amit az elfogad. Hasonlít a korábbi TurboSIM és RebelSIM típusú megoldásokhoz, de másként működik: más hibát használ ki.
Mire lenne jó az NCK?
Az NCK segítségével ugyanúgy lehetne függetlenné tenni a készüléket, ahogyan azt a hivatalos függetlenítés teszi: bármi frissítéskor, végérvényesen független maradna bármely, ezzel a módszerrel függetlenített készülék. Maga az Apple is az NCK segítségével teszi függetlenné az eredetileg szolgáltatófüggő készülékeket. Az iPhone esetén az NCK 15 számjegy hosszúságú, viszont a generálásában az IMEI és az MCC+MNC kódokon kívül szerepet játszik még a készülékben található egyedi NORID és CHIPID is.
A hivatalos függetlenítési eljárás során bemégy a szolgáltatóhoz, és kéred tőlük a függetlenítést, amelynek meghatározott díja van, ami függ a hátralévő hűség után fizetendő esetleges kötbér mértékétől is. Ha nincs már tarifa- vagy részletfizetési hűség a készüléken, akkor ennek egyszeri díja általában 10.000 Ft az előfizetéses, és 20.000 Ft a feltöltőkártyás készülékek esetén (T-mobile díjak). Ezt az összeget kifizeted, és a szolgáltató felveszi a készülék IMEI száma alapján a kérést, amit továbbít az Apple felé. A folyamatnak lehet pár napos átfutása, így lehetséges, hogy hazaküldenek, hogy majd dugd rá az iTunes-ra az új SIM kártyával, és majd az kiírja, hogy függetlenítve.
A folyamat további része valóban ennyi: rá kell dugnod az iTunes-ra, ami ellenőrzi a készüléket. Amint érzékelte, hogy az Apple szervere lehetővé teszi a függetlenítést, úgy a folyamat leegyszerűsítve a következő: lekéri az NCK-t, amit a baseband elfogad, és a seczone-ban kikapcsolja a hálózati korlátozást. (Bizonyos esetekben egy restore is szükséges lehet.)
NCK kódot nem lehet csak úgy generálni, hiszen ismerni kell hozzá a pontos algoritmust, amivel az adott kód számsora elkészül, de az úgynevezett brute-force módszeren már régóta dolgoznak többen is. A brute-force lényege, hogy egyszerűen végigpróbálja az összes lehetőséget. Ez viszont a használt NCK kulcshosszától függően igen időigényes, tehát minél hosszabb a kulcs, annál tovább tart megtalálni a helyes számsort. Geohot már évekkel ezelőtt -még az eredeti iPhone megjelenése után valamivel-, közzétett egy NCKBF nevezetű programot, ami épp ezt teszi. Az alkalmazás másodpercenként nagyjából 100.000 kulcsot tud kipróbálni, de az iPhone-ban használt 15 számjegyes kulcs esetén nagy szerencse mellett ez még így is évekig tartana, mire találna egyezést. Ha pedig nincs szerencsénk, és pont csak a legutolsó kulcs lenne jó, a teljes keresés ideje hozzávetőleg 317 év lenne egyetlen készülék esetén. Ez viszont életképtelen.
 |
MuscleNerd
To those patiently ignoring all the chatter from “promises” we never made comes a jewel: NCK unlock code is just 40 bits!
2011.03.10. 12:42 |
 |
MuscleNerd
(if turns out to be true, it’s unexpected surprise for those w/vuln BB’s. All the data is there for 40-bit brute force)
2011.03.10. 12:45 |
Időközben kiderült azonban, hogy a MuscleNerd-ék által talált exploit ugyan függetlenítéshez önmagában nem használható, viszont lehetőség van vele kiolvasni olyan adatokat, ami segítségével már csak 40 bit adatot, tehát 5 számjegyet kell feltörni a kódhoz. Ez lényegesen lerövidíti az időt, és elméletben elegendő lehet hozzávetőleg 168 óra, ami alatt a számítógép folyamatosan dolgozik, és a készülék is folyamatosan be van dugva.
Ezzel kapcsolatban folyamatosan dolgozik MuscleNerd, de az eredményekhez idő kell. Nem lehet tudni, mikor lesz ebből valóság.
Gevey SIM: verjük át a rendszert? Hát…
A Gevey SIM más, mint a korábban használt TurboSIM vagy RebelSIM megoldások. Azok ugyanis azt a hibát használták ki, hogy a rendszer csak kétszer ellenőrzi a SIM egyedi azonosítóját, az IMSI-t a betöltés során. Így lehetséges volt egy hamisított IMSI-t (International Mobile Subscriber Identity) használni, miközben a rendszer betöltött, és utána a GSM/UMTS-kapcsolat felépítésénél már a valós IMSI került felhasználásra. Ennek az eredménye az volt, hogy a baseband azt hitte, hogy olyan SIM van benne, amit elfogad, noha valójában bármi más kártyát beletehettünk. Ezt a hibát az Apple már nagyon régen, még a 2.2.1 megjelenésével befoltozta, így ezek a megoldások sem működtek többet.
A GSM/UMTS hálózatokban a lehallgathatóság megelőzése érdekében egy másik azonosító is részt vesz a kapcsolat felépítésében. A kapcsolat felépítése során, még az IMSI felhasználása előtt a TMSI (Temporary Mobile Subscriber Identity) kerül feldolgozásra, ami egy 4 bájt hosszú egyedi azonosító, és a hálózat osztja ki.
A bázisállomás egy 16 bájt hosszú “nonce“-t küld a készüléknek, ami azt aláírja a SIM-en található egyedi, 128bit DES kulcsával, majd visszaküldi. A hálózat ezután ellenőrzi ezt a karaktersorozatot a saját adatbázisával, ami alapján meg tudja állapítani, hogy az adott számot engedi-e csatlakozni a hálózatra, és létrejön a kapcsolat.
Látható tehát, hogy maga az IMSI valójában nem is szükséges, hiszen ameddig az előbb említett kulcs érvényes, lesz térerő. Pontosan ez történik egyes SIM-hackek esetén, amikor hamis IMSI kerül elküldésre az érvényes kulccsal. Az IMSI ilyenkor átirányításra kerül a neki megfelelő hálózatra, és így az a kérés elvész, de az aláírt “nonce” miatt a telefon mégis lehetővé teszi a csatlakozást, anélkül, hogy ellenőrizné az IMSI-t.
Ezzel a technikával viszont a mobilinternet működéséhez a “data roaming” be kell legyen kapcsolva, mert a baseband abban a hitben fog viselkedni, mintha roamingolna, noha maga a hálózat felismeri, hogy a telefon egyébként a SIM honos hálózatában van. Emellett időnként szükséges a SIM-et egy olyan készülékbe is behelyezni, ami alapból elfogadja, máskülönben sikertelen lesz a kapcsolódás.

A Gevey SIM hasonló megoldást használ, de mégsem. A korábbi SIM-hackek esetén egy előre beprogramozott hamis IMSI volt szükséges, de a Gevey esetén az eszköz képes végigfuttatni egy IMSI-listát, amíg az elfogadott MCC+MNC-t meg nem találja. Emellett képes az ICCID-t is hamisítani, hiszen az iOS-ről ismert, hogy visszaellenőrzi ezeket.
Ettől még nem kap a készülék térerőt, hiszen még nem kapott TMSI-t. Így a következő teendő felhívni a 112-t, majd mikor létrejött a kapcsolat, megszakítani a hívást, majd Airplane mód be/ki. Ezzel a készülék megkapja a TMSI-t, és bejelentkezik a hálózatra.
Hogy mit jelent ez azok számára, akik függetlenítenének?
- Csak akkor működik, ha:
a.) a hálózat a GSM szabványnak megfelelően kezeli a 112-es segélykérő számra irányuló hívásokat;
b.) a hálózat tolerálja a TSMI spoofing-ot, és nem ellenőrzi a SIM-et újra bejövő hívás esetén.
- A korábbiakkal eltérően ez nem egy csak-tedd-be-és-felejtsd-el típusú eszköz. Minden egyes újraindítás, vagy hosszabb idejű térerővesztés, netán másik PLMN-be való érkezés (például külföldi hálózat) esetén pontosan ugyanúgy kell eljárni, mert a TMSI lejár, és újat kell igényelni a hálózattól. (Elméletileg lehetséges erre egy daemon-t írni, ami ezt automatikusan megcsinálja, de az csak jobban nyakatekertté tenné az egészet.)
- Ami nem is kérdés: teljességgel etikátlan, és mindenképp illegális egy olyan technikát használni, ami a hivatalos segélykérő számot használja fel erre a célra!
 |
MuscleNerd
That “dial 112 then hang up” in gevey (http://is.gd/FGNeJi) is illegal in USA, and probably other countries. Buyer beware.
2011.03.27. 11:48 |
- Jelenleg az összes létező firmware vagy baseband mellett használható, de feltehetőleg nagyon hamar javítani fogják egy baseband-frissítéssel. Az egyetlen biztos mód a végleges függetlenítésre a hivatalos, NCK alapú.
- Maga az eszköz nem okozhat problémát a készülékedben, ugyanakkor a segélyhíváskor a hálózat naplózhatja a készülék IMEI számát. Ezt az azonosítást nem lehet kikerülni.
- Ha a szolgáltató rájön, hogy ilyen eszközt használsz, annak az előfizetésed felfüggesztésén túl akár törvényi következményei is lehetnek, hiszen az eszköz beavatkozik a GSM-csatlakozásba, ami bizonyos megítélés alapján akár veszélyeztetheti is a hálózat működését, és így illegális.
Összegzésként
A Gevey SIM egy túlárazott (US$50), megbízhatatlan, a segélykérő szám indokolatlan használata miatt etikátlan és törvényileg igencsak aggályos módja a függetlenítésnek, emellett nem is működik minden hálózat esetén, és akinél működik, annál sem tart örökké. A magyar hálózatok esetén egyébként is kérdéses a működése, hiszen a fraud mértéke eleve magas, így a szolgáltatók mindent megtesznek, hogy ezt visszaszorítsák. Mi nem támogatjuk az ilyen eszközök használatát, így a beszerzésével kapcsolatos információkat sem tesszük közzé – de kis keresgéléssel könnyen megtalálható bárki számára.
Ha függetleníteni szeretnél, két lehetőséged van. Vagy elmégy, és kéred a készülék eredeti szolgáltatójától hivatalosan, legálisan: ez a javasolt módszer, hiszen ilyenkor az adott készülék mindig független marad (AT&T-s készülék hivatalos függetlenítésére nincs mód!).
Vagy a másik lehetőség, hogy vársz, míg a Dev Team kiad valami új függetlenítést. A Dev Team által kiadott bármi függetlenítés teljes egészében a készüléken történik, így a hálózat működésébe nem avatkozik bele semmi olyan módon, mint a Gevey SIM. Ebben az esetben azonban nincsen várható kiadási időpont, így ezt hiába kérdezi bárki.
(Ennél a cikknél minden más, OFF-topic hozzászólást törölni fogunk!)