Skip to content

A viszonylag frissen megjelent itunesstored és bookassetd sandbox exploit lehetővé teszi a MobileGestalt.plist fájl módosítását, és ezáltal az abban található értékek megváltoztatását, egészen az iOS/iPadOS 26.2 beta 1-gyel bezáróan. Ez a fájl azért bír rendkívüli jelentőséggel, mert az eszköz minden lényeges jellemzőjét tartalmazza.

Ide érthető a típus, a szín, a modell – de sokkal fontosabb számunkra az olyan képességek elérhetősége, mint a Dynamic Island, a Stage Manager vagy a multitasking. Bár az Apple természetesen titkosította a kulcs / érték párokat, a közösség az évek során a legtöbbet sikeresen visszafejtette. Ettől még szó szerint értve nem telepítünk vele iPadOS-t az iPhone-ra – viszont erre nincs is szükség, mert a legtöbb funkcionalitás az iOS-ben is benne van.

A MobileGestalt módosításán alapul több tweak app is, mint például a cikk címében is említett Nugget és misaka26 is, amelyek ennek köszönhetően tényleges jailbreak nélkül képesek a rendszerben bizonyos módosításokat végezni.

Figyelem! Minden esetben készítsünk biztonsági mentést számítógéppel a készüléken található adatainkról még azelőtt, hogy bármit is megpróbálnánk módosítani rajta! A cikkben leírtak használatából eredő esetleges problémákért nem tudunk felelősséget vállalni.

iPades funkciók iPhone-on

Az egész talán azzal kezdődött, hogy egy fejlesztő, Duy Tran egy olyan videót tett közzé, amelyen az iPhone-ja iPad-szerű funkciókat mutat: valódi alkalmazásablakokat, iPadOS-stílusú dokkot, Stage Managert (Porondmestert) és további elemeket – bár ezek használati értéke az iPadhez képest jelentősen kisebb kijelzőméreten sokak számára értelemszerűen meglehetősen alacsony. De ez egyúttal azt is jól mutatja, hogy az iOS és iPadOS kódja igazából nem sokban tér el egymástól.

Az exploit egy megfelelően kialakított downloads.28.sqlitedb adatbázist használ arra, hogy írást végezzen a normál esetben a sandbox által védett elérési útvonalakon. Mivel a MobileGestalt.plist elérhetősége is ezek közé az útvonalak közé tartozik, így az is módosíthatóvá válik, és az iPhone iPadOS-funkciókkal ruházható fel, illetve engedélyezhetjük rajta az újabb modelleket igénylő funkciókat is.

Támogatott iOS-verziók és eszközök

Az itunesstored és bookassetd sandbox exploit minden olyan készüléket támogat, amelyen maximum az iOS 26.2 beta 1 fut, ugyanis a 26.2 beta 2-vel kezdődően az Apple a jelek szerint javította ezt a hibát. Aki tehát használni szeretné, annak nagyon fontos betartania, hogy ne frissítsen a megjelenő iOS 26.2-re. (Hogy pontosan mi történik, ha valaki mégis frissítene egy ilyen megoldással módosított rendszert, természetesen arról is lesz szó a cikkben.)

Ez az exploit egyébként már egy ideje ismert volt, például aktiválási záras készülékek hacktiválására is használták, mivel képes a védett elérési utakra írni, és így átugrani a zárolás tényleges feloldásának lépéseit.

Az exploit meglehetősen “erős”: a mobile felhasználó által birtokolt és kezelt útvonalak többségére képes írni, a root tulajdonában lévő útvonalakra azonban nem, viszont előfordulhat, hogy nem minden esetben jár sikerrel, így van, hogy többször is próbálkozni kell, mire ténylegesen módosítani is tudja a fájlt.

A MobileGestalt.plist fájl kinyerése az eszközről

Erre többféle módszer létezik. Néhány parancs még mindig képes a MobileGestalt.plist fájl megszerzésére, például ez is. Régebbi iOS-verziókon (például az iOS 17 előttieken) nem feltétlen tudjuk ilyen egyszerűen kinyerni ezt a fájlt, már ha egyáltalán az lehetséges, így bár technikailag működik rajtuk is a módosítása, körülményesebb lehet az egész, mint az újabb iOS-verziókkal.

Itt a shortcut az indítása után az kiírja a pontos teendőinket, de a vizuális típusok számára lépésenként is megmutatjuk, hogyan kell használni. Ebben a példában egy iPhone 11 Pro Max lesz az alanyunk. Indítsuk el a Save MobileGestalt parancsot, majd a felugró opciók közül válasszuk a Manual method lehetőséget:

Az erre felugró tájékoztató lépésenként leírja, mi a teendőnk, itt nyomjunk az OK gombra. A következő panelen nyomjunk rá a Click here opcióra.

Ezután megjelenik a Tartalomelem grafikonja, amin keressük meg a Fájl buborékot, és nyomjunk rá. A Támogatott típusok képernyőn koppintsunk rá az NSString opcióra.

Erre megnyílik a MobileGestalt.plist fájl tartalma szövegként. Itt a szövegbe koppintva meg kell jelenjen az összes kijelölése lehetőség, amire nyomjunk rá.

Az opciók ekkor átváltanak a Kivágás és Másolás lehetőségre, itt nyomjunk a jobbra mutató opcióra. Ennek köszönhetően elérjük a további funkciókat, ahol válasszuk a Megosztást.

A legegyszerűbb, ha AirDrop segítségével átküldjük a Mac-re, ami ebben az esetben a Letöltések mappába kerül. Ha más rendszert használunk, akkor elküldhetjük például emailben is.

Ha ezzel megvagyunk, akkor visszalépkedhetünk az elejére, vagy egyszerűen bezárhatjuk a Parancsok appot. Ha visszalépkedünk, akkor a végén az “An error occured!” hibaüzenetet kaphatjuk, de ez igazából mindegy, hiszen már sikerült megszerezni a MobileGestalt fájlt, így ezt nyugodtan leokézhatjuk. (A másik megoldás itt az lehet még, hogy a Megosztás kiválasztásakor nem az AirDrop opciót választjuk, hanem a Másolásra nyomunk rá, majd ezután visszalépkedve az elejére a Fájlok app nyílik meg automatikusan, ahol kiválaszthatjuk, hogy hová szeretnénk menteni a fájlt, majd utána tudjuk elküldeni, amik igazából szükségtelen lépések.)

Az így átküldött fájlt ezután nevezzük át, mert sima txt-ként nem lesz jó. Célszerű olyan nevet adni neki, ami alapján később is biztosan tudni fogjuk, hogy ez pontosan milyen fájl, tehát például “iPhone11ProMax-MobileGestalt-20251210.plist”. Fontos, hogy a fájlnév vége .plist legyen, mert különben a Nugget app nem lesz hajlandó megnyitni.

A készülék funkcionalitásának módosítása a Nugget használatával

Először is töltsük le Githubról a Nugget legfrissebb verzióját a Releases alól, majd pedig telepítés után, tehát Mac-en a /Applications alá bemásolva indítsuk el. Windows esetén az iTunes telepítése is szükséges, amit az Apple oldaláról töltsünk le ide kattintva, tehát ne a Microsoft Store-ból.

Ha szeretnénk, akkor ezután át is tudjuk állítani az app nyelvét magyarra, bár ez hagy majd némi kívánnivalókat maga után – lásd például a TrustStore visszaállítása felett tartott egérmutatóra megjelenő magyarázat szövegét (de elírással is találkozhatunk):

A nyelv átállításához válasszuk bal oldalt a Settings opciót, és azon belül már rögtön látni fogjuk az App Language-t, itt az English-re nyomva a megjelenő listában kattintsunk a magyarra, erre a Nugget magától újraindul, ami után már magyarul jelenik meg.

A Nugget alapból nem mutatja számunkra a kockázatosabb opciókat, így az iPadOS-felület bekapcsolásának lehetőségét sem. Ennek engedélyezéséhez tegyük be a pipát a “Kockázatos módosítások opciók mutatása” elé (a fenti képen ez a Show Risky Tweak Options, ami már be is van pipálva).

A bal oldali menüpontok közül némelyik használatához egyébként még a MobileGestalt sem szükséges, mert azok konfigurációs profillal is elérhetőek.

Mielőtt továbblépnénk, most ismét kiemeljük, hogy minden esetben készítsünk biztonsági mentést számítógéppel a készüléken található adatainkról még azelőtt, hogy bármit is megpróbálnánk módosítani rajta! A cikkben leírtak használatából eredő esetleges problémákért nem tudunk felelősséget vállalni.

Először is csatlakoztassuk a készüléket a számítógépünkhöz, és utána nyomjunk a Nuggetben a frissítés ikonra:

Ezután a Nuggetben meg kell jelenjen a készülék, és a bal oldalsávban több opció is:

Ahhoz, hogy a Nugget módosításokat tudjon végezni a készüléken, ki kell kapcsolnunk rajta az iPhone keresését (ezt csak átmenetileg) – és be kell kapcsolnunk a Fejlesztői módot.

Ez utóbbi alapból nem jelenik meg a készüléken, de amint bármi módosítást megpróbálunk végrehajtani a Nuggettel, az az alábbi tájékoztató üzenetet fogja dobni számunkra (még magyarra állított app esetén is angolul):

A Fejlesztői mód bekapcsolására szolgáló opciót ezek után a Beállítások > Adatvédelem és biztonság menüpontban legalulra görgetve, a Biztonság rész tetején találjuk. Ebbe belépve kattintsuk át a kapcsolót a bekapcsolt állapotra.

Erre még rá is fog kérdezni a készülék, itt nyomjunk az Újraindítás gombra:

Erre a készülék újraindul, és az alábbi képernyővel fogad minket – itt értelemszerűen kövessük az utasítást, tehát legyintsünk felfelé, majd pedig nyomjunk rá az Engedélyezés gombra:

Ezt követően a Nugget már képes lesz végrehajtani a kívánt módosításokat.

A cikk példájával élve most akkor lássuk, hogy hogyan kapcsolhatjuk be az iPadOS-funkciókat az iPhone-on. Ehhez szükségünk van a cikk elején már leírt módon megszerzett MobileGestalt.plist fájlra, az előbbi lépésekben leírt módon a Fejlesztői mód bekapcsolására, és hogy a Nuggetben engedélyezzük a “Kockázatos módosítások opciók mutatása” opciót az app beállításaiban.

Ha ezek mind megvannak, akkor először menjünk a Nugget bal oldali opciói közül az Alkalmazásba. Itt nyomjunk rá a Gestalt fájl kiválasztása gombra, majd pedig jelöljük ki a korábban a gépre átküldött MobileGestalt.plist fájlt, ami AirDroppal való átküldés esetén a Letöltések mappába került.

Utána a bal oldalsávban kattintsunk a Mobile Gestalt opcióra, és tegyük be a pipát az “Enable iPadOS (WARNING: risky, use with caution)” opció elé:

Utána válasszuk a bal oldalsávban az Alkalmazás opciót, és kattintsunk a Változtatások alkalmazása gombra:

A Nugget ekkor elkéri a gépünk jelszavát, amit adjunk meg, és utána nyomjunk Entert, vagy kattintsunk az OK gombra:

Itt ismét a készülékhez kell nyúlnunk, ugyanis ahhoz, hogy az exploit lefuthasson, a Könyvek appban bármi könyvet le kell tölteni, ami természetesen lehet ingyenes is. Az adott könyv letöltődése után azt fogjuk látni, hogy a Könyvek app összeomlik, majd újból megnyílik, majd pár pillanattal később a készülék respringel, tehát megjelenik a fekete kijelző a körbeforgó folyamatjelzővel, majd pedig a zárolt képernyő fogad minket.

A zárolás feloldása után pedig, ha sikeresen lefutott az exploit, és felülírásra került a MobileGestalt fájl a készüléken, a Docknál már látni fogjuk, hogy másképp néz ki, a Beállításokban pedig megjelent a Multitasking és kézmozdulatok opció, az alkalmazás ablakának jobb alsó sarkában pedig ott van a kis körív az átméretezéshez:

Ezzel együtt az alkalmazásváltó nézete is már az iPades, illetve a beállításainktól függően még a Porondmestert is használhatjuk az appok közötti váltásra:

Ugyanez a misaka26 segítségével

A misaka26 használata a jelek szerint kissé egyszerűbb, mert nem igényli a Fejlesztői mód bekapcsolását, így pár lépéssel kevesebb is elegendő lehet a kívánt eredményhez, de a MobileGestalt.plist fájl természetesen ebben az esetben is elengedhetetlen a folyamathoz.

Első lépésként itt is töltsük le az app legfrissebb verzióját a Github oldaláról. Miután bemásoltuk a /Applications alá, és elindítottuk, kattintsunk a Select .plist File gombra az ablakban, és tallózzuk be a letöltések alól a MobileGestalt.plist fájlunkat.

Amint ezt megtettük, az ablakban megjelennek a lehetőségeink, az iPadOS funkciók itt ketté vannak választva, az első külön a Stage Manager, majd lejjebb görgetve találjuk meg az iPad ablakkezelését, amit “TrollPad (iPad Multitasking) (18.0+)” megjelöléssel láthatunk a listában:

Amikor erre rákattintunk, a misaka26 feldob egy figyelmeztetést, hogy ez egy kísérleti funkció, és adott esetben váratlan hibákat eredményezhet, például hogy az iOS nem hajlandó betöltődni (bootloop):

A másik nagyon fontos megjegyzés itt, amit a Nugget egyébként nem emel ki sehol, hogy amennyiben a készülékünk jelkódja nem kizárólag számokból áll, hanem alfanumerikus, tehát bármi szöveg, akkor előfordulhat, hogy az Enter gomb nem működik a billentyűzeten, és így esetleg nem tudjuk feloldani a készülék zárolását. Ezt a kitételt értelemszerűen el kell fogadnunk a továbblépéshez.

Ha ezzel mind megvagyunk, akkor kattintsunk az ablak alján az Apply-ra, és utána néhány másodperccel később a készülék teljesen újraindul, és ha minden jól megy, akkor sikerül a módosítás.

Könnyen előfordulhat azonban, hogy ez ténylegesen csak a második vagy harmadik próbálkozásra sikerül, hiába írja egyébként minden alkalommal azt a misaka26, hogy “Success”.

Lehetséges problémák

Az egyik, és talán legfontosabb probléma, hogy a beépített billentyűzet teljesen szétesik, vagyis inkább összecsúszik az iPadhez képest sokkal kisebb kijelzőn. Ez teljesen egyértelműen látható álló nézetben:

De ha azt reméljük, hogy cserébe fekvőben jobb, bizony csalódni fogunk, mert ugyanolyan rossz:

Sajnos az Enter teljesen megszűnik, mert bár úgy tűnik, hogy az foglalja el a helyet (hiszen legtöbbször az a kék), valójában ez az .?123 gomb, bárhová is nyomunk rajta. A szóköz is ugyanígy jár, azt sem tudjuk így elérni.

Ezt egyébként egy külső fejlesztő billentyűzetét letöltve, és azt alapértelmezettnek beállítva át tudjuk hidalni.

Ehhez használhatjuk például a Google billentyűzetét, a Gboardot – bár az app indításakor iPad kinézettel jelenik meg, de utána a billentyűzetet beállítva az megfelelően méretezi magát:

És szerencsére ez fekvő módban is igaz:

Csak aztán eszünkbe ne jusson átváltani a beépített billentyűzetre, mert akkor arról nem fogunk tudni visszaváltani a Gboardra, hiszen a földgömb gombot sem fogjuk tudni elérni – de ebben az esetben a Beállítások appban a billentyűzeteknél kitörölhetjük a beépített billentyűzetet, és akkor a rendszer visszavált a Gboardra.

Persze ezeken túl is előfordulhatnak problémák, főleg ha más opciókat is kapcsolgattunk a Nugget vagy a Mikasa által kínált lehetőségekből, amelyekre itt most nincs is lehetőség mind kitérni.

Azt is érdemes kiemelni, hogy bár egyes, az adott készüléken egyébként nem elérhető funkciók engedélyezhetőek ezzel a módszerrel, az még nem jelenti azt, hogy az adott funkció valóban működni is fog, vagy hogy helyesen működik. Erre jó példa a töltési korlát és az ehhez tartozó akku állapota opció: bár csak egyetlen pipa bekapcsolni, a működése erősen kérdőjeles. Az akkumulátor gyártási idejére például az iPhone 11 Pro Max esetén azt mutatja, hogy azt majd csak 4 év múlva, 2029 novemberében fogják legyártani. 😂

A ciklusszám ebben az esetben viszont egyezik azzal, amit a coconutBattery mutat. A gyártási időpont meg valószínűleg azért hibás, mert az ezt a funkcionalitást egyébként alapból támogató készülékek már mind 2020 után érkeztek (hiszen ezek az iPhone 15 és újabb modellek), és így várhatóan csak az évszám utolsó számjegyét veszi alapul. Ebben az esetben a coconutBattery ugyanis 2019. november 25-ét ír rá gyártási dátumként, amiből a 9-est alapul véve az nyugodtan eredményezhette a fenti képen látható 2029-et:

A töltési korlátot ugyan szintén beállíthatjuk adott értékre, például 80%-ra, de a teszthez használt készülék ennek ellenére is 100%-ig töltött.

Ha pedig például az Apple Intelligence-t is megpróbáljuk aktiválni egy egyébként nem támogatott készüléken, és ehhez a Nuggetben bekapcsoltuk a Jogosultság alatt a megfelelő opciót, és átállítottuk, hogy milyen készüléktípust “hazudjon” (spoofing), az azt is eredményezi, hogy a készüléket nem fogjuk tudni normál módban (tehát futó rendszer mellett) visszaállítani a rá elérhető legfrissebb iOS-verzióra, mert a letöltött IPSW-re azt fogja jelezni a Finder, hogy nem kompatibilis vele, és így lábon kihordhatunk egy enyhe szívrohamot, hogy esetleg véglegesen elrontottunk valamit a készüléken. Ezen a helyreállítási illetve DFU mód használata természetesen segít, illetve használhatjuk az Összes tartalom, beállítás törlése opciót is.

A Nugget azt is írja ennek kapcsán, hogy a készüléktípus “spoofolása” keresztbe tehet a Face ID működésének is, és azt mindaddig nem tudjuk használni, ameddig “spoofolt” készüléktípus van beállítva. (A Nuggetben a magyar fordítás sajnos itt sem pontos, és a szöveg állítása, hogy “tönkreteheti a Face ID-t”, nem igaz, mert a Face ID szerencsére nem megy tőle tönkre fizikailag.)

Nemsokára érkezik az iOS 26.2: mi történik, ha frissíteni próbáljuk a készüléket?

Ha frissítjük a készülék szoftverét, akkor a legtöbb módosítás elvész. Egyedül az olyan módosítások maradnak meg, amelyek nem a MobileGestalt.plist fájlra alapulnak, hanem konfigurációs profilokkal is elérhetőek lennének.

Ez értelemszerűen csak a Nugget esetén igaz, mert a misaka26 kifejezetten a MobileGestalt módosítására épül.

Hogyan állítható vissza az eredeti állapot?

Alapvetően ha Nuggetben vagy a misaka26-ban kivesszük az adott opciók elől a pipákat, majd rányomunk a változtatások alkalmazására, az visszaállítja az eredeti állapotot – illetve mindkettő esetén van eltávolítási opció, a Nuggetnél az Alkalmazás alján a Tweakek eltávolítása, a misaka26-ban pedig az ablak jobb alsó sarkában található ^ ikonra nyomva választhatjuk ki a Regenerate MobileGestalt (Reset) lehetőséget. Az exploit nem 100%-os sikeressége miatt viszont ez kissé körülményes lehet, és ugyanúgy előfordulhat, hogy csak többszöri próbálkozásra jön össze a dolog.

Az “ágyúval verébre” módszerként természetesen a készülék szoftverének visszaállítása is működik, ami után az egész módosítás előtti biztonsági mentésből visszatölthetjük az adatainkat is.

Mi van akkor, ha visszaállítjuk az így módosított készülékről készült biztonsági mentést – ezeket a funkciókat is visszakapjuk vele?

Ezt direkt kipróbáltuk, tehát készítettünk egy biztonsági mentést a teszthez használt készülékről, visszaállítottuk rajta az iOS 26.1-et, majd pedig visszatöltöttük az adatokat a módosított rendszerről készült biztonsági mentésből.

Ez nem teszi vissza azokat a beállításokat és funkciókat, amelyeket a MobileGestalt.plist módosításával eszközöltünk, tehát igazából van menekülési lehetőségünk arra, hogy visszaállhassunk a normál működésre. De ahogyan korábban egy jailbreakelt rendszerről készített biztonsági mentés visszaállítása sem volt javasolt, talán itt is érdemes óvatosnak lenni.

Szerintetek megcsináljam ezt a napi használatú készülékemen?

Nyilván mindez jópofa, és legfőképpen érdekes lehet kipróbálni, hogy milyen lenne így használni a készülékünket, pláne hogy az egyes problémák adott esetben át is hidalhatóak. De napi használatú készülékkel ezt megcsinálni talán rizikósabb, mint annak idején a jailbreak. A dolog használhatósága rendkívüli mértékben függ attól, hogy milyen egyéb opciókat kattintgatunk még be az iPadOS felület mellé.

Olvasd el a hozzászólásokat is

Comments are not currently available for this post.

Shopping cart

Hírek, Újdonságok

Webshop

Rendezés
Termék elérhetőség
Ár
- Ft
Bevonat
Csatlakoztatás
Modell
Tárhely
Méret
Tok mérete
Kialakítás
Gyártó
Akciós ár
Szíj anyaga