Nem törhető fel pillanatok alatt az iPhone

Március 27-én a Forbes tett közzé egy cikket, amelyben egy svéd biztonságtechnikai cég szoftverével akár 2 percbe sem telik feltörni egy iPhone biztonsági kódját (jelkódzár). Ezt másnap az origo is átvette, de a címből már kihagyták, hogy a biztonsági kódról volt szó, és már magát az egész iPhone-t hagyták benne. Az ő írásuknak köszönhetően egyre több helyre jutott el magyarul a kérdés, majd ugyanezzel a témával a Smartmobil konferencián is találkozhattunk a Kürt Zrt. jóvoltából.

Maga a cím mind az eredeti, mind a magyar cikk esetén leginkább csalogató, és kattintásvadász, de egyben sajnos kissé félrevezető is, mert a dolog azért nem pontosan úgy van, ahogyan azt várhatnánk. Emellett a dolog technikai hátteréről, és az érintett eszközökről persze szintén nem esett pontosan szó, így mi most erről írnánk röviden.

Ezzel kapcsolatban egy kérdést is feltettünk Facebookon, amire a túlnyomó többség (bőven 80% felett!) azt válaszolta, hogy igen, bármelyik iPhone-t fel tudják törni az erre szakosodott cégek, és minden adatot le tudnak tölteni róla. Az alábbi kép készítése óta így csak a válaszadók száma nőtt, de az arányuk változatlan:

Most akkor lássuk, mi a tényleges helyzet ezzel kapcsolatban.

Feltörés alatt az iPhone-t használók többsége a jailbreaket érti, a Forbes cikke viszont olyan módszert mutatott be, amiben jailbreak nélkül törik fel a 0000-ra beállított jelkódzárat, és a szoftver a folyamat végén kiírja, hogy a 0000 az aktuális kód, majd ezt beírva a készülék adatai már hozzáférhetőek. Viszont…

Az XRY és más hasonló szoftverek csak a jailbreakhez hasonló módon tudják elvégezni a feladatukat.

A cikkben megtalálható a videót nézve a témában tájékozottabbak számára azonnal ismerős lehet a helyzet, hiszen a folyamat egyik pontjánál ugyanazt láthatjuk az iPhone kijelzőjén, mint jailbreak esetén. Onnantól kezdve meg már nincs benne semmi boszorkányság.

Sajnos a videót időközben eltávolította a cég a YouTube-ról, akik viszont látták, azoknak feltűnhetett, hogy semmi másról nem szól a dolog, mint hogy a készüléket DFU-ba téve egy megfelelően módosított ramdisk segítségével hozzáférést szereznek a készülék teljes fájlrendszeréhez, ahogyan azt maga a jailbreak is teszi. Itt annyi a különbség, hogy a fájlrendszer csak olvasásra kerül, de nem kerül módosításra, mint a jailbreak esetén.

  • Ramdisk: olyan szoftvereszköz, ami a készülék memóriájába (RAM) kerül feltöltésre, ezzel hozzáférést biztosítva a hardver erőforrásaihoz. Leegyszerűsítve talán olyan, mintha külső lemezről töltenénk be egy rendszert, és mindez képes a készüléken található fájlok módosítására. Az iOS eszközök szoftverfrissítése (update) vagy a szoftver teljes újraírása (restore) is ilyen ramdisk segítségével történik. Az Apple által kiadott szoftverfrissítési fájlokban található ramdiskek kódoltak, és aláírásokkal vannak ellátva, így azt a hardver ellenőrizni tudja, mielőtt engedélyezi azok a betöltését és futását.

Az aláírás és a kódolás hiánya miatt a módosított ramdisk működéséhez még egy exploit is kell, anélkül ugyanis a készülék nem fogadná el azt, és nem működne az egész. Ez pedig nem más, a mindenki számára elérhető “limera1n” exploit geohottól. A svéd fejlesztők tehát mindössze az elérhető eszközöket felhasználva készítettek egy könnyen használható felületet az exploit által nyitott kapun keresztül elérhető adatokhoz.

A limera1n exploit nem használható A5 és A5X processzoros eszközök esetén.

Ha tehát iPhone 4S, iPad 2, esetleg iPad 3 van a tulajdonodban, akkor ezekkel az szoftverekkel nem lehet hozzáférni a rajtuk tárolt adatokhoz, hiszen az új, frissített bootrom miatt az exploit nem működik rajtuk, és így a ramdisket sem fogja elfogadni a készülék.

A témában járatlan újságírók által írt, technikailag kiegészítésekre szoruló cikk viszont a laikusok számára könnyen hihető, akikben onnantól kezdve megrendül a bizalom a készülékük biztonsága iránt, noha némi elővigyázatossággal azért alaposan megnehezíthető a feltörés.

Ráadásul az emlegetett, nagyjából 2 perces biztonsági kód feltörés is csak abban az esetben működik, ha a kód egyszerű, négyjegyű szám, ami ugye az alapbeállítás. A kód feltöréséhez a szoftverük ugyanis az úgynevezett brute-force technikát használja, amikor végigzongorázza az összes lehetőséget. Ez egy négyjegyű szám esetén 10000 lehetőséget jelent (0000-9999), amit tényleg elég gyorsan végig lehet pörgetni, főleg, ha a próbaként megadott kód a 0000, és a szoftver is azzal kezdi a próbálkozást…

Az iTunes által készített mentésekben is ott van a legtöbb adatunk.

Az iTunes szépen lement mindent a készülékünkről, amikor elkészíti róla a biztonsági mentést, így megtalálható egy ilyen mentésben a névjegyzékünktől kezdve az üzeneteinken át a jegyzeteinkig, alkalmazásaink adataiig, mentett jelszavainkig minden. A fájlokat az iTunes ugyan átnevezi, de egy megfelelő alkalmazással a backupból exportálhatóak az eredeti nevükkel, és a tartalmuk böngészhető.

Ha tehát valaki fizikailag hozzáfér a készülékünkhöz, és azon nem állítottunk be semmit, hanem maradt minden a gyári alapértelmezett beállításon, akkor csak rádugja egy iTunes-ra, és készít róla egy biztonsági mentést – máris minden, a készüléken tárolt adatunk megvan nála, csak ki kell bontani őket.

Hogyan védhetjük meg az adatainkat?

Érdemes azt leszögezni, hogy mindig lesznek olyanok, akik megoldják a titkosított adatok visszafejtését, így ez is csak egy macska-egér játék, de pár egyszerű módszerrel azért megnehezíthetjük a dolgukat.

A legfontosabb talán, hogy ne hagyjuk ott felügyelet nélkül a készüléket sehol, és ne engedjük meg azt sem, hogy ismeretlen gépre rádugják azt, mondjuk csak tölteni.

Ha iPhone 4S-nél vagy iPad 2-nél korábbi eszközünk van, azokon bizony működik a limera1n exploit, ennek köszönhető most az 5.1 esetén is elérhető (semi-)tethered jailbreak. Erre a legbiztosabb megoldás az lehet, ha cseréljük a készüléket egy újabb kiadásúra.

Persze nem mindenki teheti meg, hogy újat vegyen, így talán célszerűbb a biztonsági beállításokat ellenőrizni, és módosítani, amit szükséges. Először is ne használjunk egyszerű jelkódot. Ehhez menjünk a Settings (Beállítások) appban a General (Általános) menüpontban a Passcode Lock (Jelkódzár) opcióhoz, és kapcsoljuk ki a Simple Passcode (Egyszerű Jelkód) opciót:

Ezután adjunk meg egy 4 karakternél hosszabb jelszót, ami maradhat számsorozat, de megadhatunk szöveges kódot is – az iOS a kód típusának megfelelő billentyűzettel fog minket várni, tehát csupa szám kód esetén a számbillentyűzettel, így nem kell váltogatnunk sem. Minél hosszabb a jelszó, annál tovább tart feltörni – bár mondjuk beírni is.

Védjük jelszóval az iTunes által készített biztonsági mentést is! Ebben az esetben másik iTunes-ra rádugva a készüléket a mentés ugyanúgy kódolt lesz, amit visszafejteni szintén időt vesz igénybe:

Ráadásul bekapcsolt jelkódzár esetén az iTunes nem is indítja el a biztonsági mentést addig, míg a jelkódot meg nem adtuk a készüléken.

Kapcsolódó cikkek:

  1. Nagyon jó cikk lett szerintem, és bár telibetojom, hogyha valaki pont az én adataimra kíváncsi, de az üldözési mániásoknak mindenképpen érdemes elolvasni, és betanulni :P

  2. Ha valóban Brute force-ot használ a töréshez, akkor elég beállítani, hogy 10 rossz próbálkozás után töröljön minden adatot, nem?

    Vagy ezt is meg tudják kerülni?

  3. Mondam már hogy mit szeretek a szifon.com-ban? Nem? Akkor most mondom. Azt hogy nem közöl le minden szar hírt egyből, és ha kiderül hogy mégse úgy van ahogy, csak egy update-tel hozzáteszik, hogy bocs, téves, hanem mindennek jól utánajár, és egy egy olyan részletes cikket ír róla, hogy csak na. :)

    Mindannyiunk nevében köszönöm szifon.com!

  4. Sziasztok!
    13éves vagyok és kb 1hete vettem egy ipod touchot és segítséget szeretnék kérni mert az történt hogy kikapcsoltam utána 20 perc múlva bekapcsoltam és kért a készülék kódot pedig nem is kértem ez az ipod kivan jealbrakelve a 4.2.1-es szoftver fut rajta én nem értek hozzá ezért kérek segítséget mert már megőrülök attól hogy max csak nézni tudom a készüléket.
    Minden választ előre is köszönök.

Írd le a véleményedet!

Hozzászólás írásához be kell jelentkezned!