Kiszivárgott az iBoot forráskódjának egy része, mit is jelent ez?

Néhány napja felkapott hír lett, hogy az interneten több helyen, köztük a GitHubon és a Twitteren terjed egy csomagnyi fájl, amely állítólag az iBoot forráskódját tartalmazza.

iOS iboot forrás kód

Az iBoot az iOS egyik legalacsonyabb szintű komponense, a rendszerbetöltés bizonyos korai szakaszaiért felelős program. A legtöbben valószínűleg biztonsági kérdésekről, sebezhetőségekről, jailbreakelésről szóló hírekben találkozhattunk a nevével. Ennek oka, hogy hardverközeli és sok, rendszerszintű engedéllyel rendelkező mivoltának köszönhetően gyakran válik az iOS-t jó vagy rossz célből feltörni kívánók célpontjává.

A GitHubon jellemzően “iBoot” névvel megtalálható repository-k [ezeket szerzői jogi okokból nem linkelhetjük — a szerk.] tartalma, illetve a különféle közösségi hálókon és IT-biztonsági oldalakon például “iboot_BootROM_iBSS_iBSS_iLLB_Source_Code.rar” fájlnév alatt terjedő forráskód-részlet az iOS 9-ben lévő iBootból került ki. A kirakós kissé hiányos: bizonyos fájlok nincsenek meg benne, így például ténylegesen lefordítani, abból futtatható fájlokat létrehozni nem lehet.

A tény, hogy az Apple a legtöbb ilyen repository-t szerzői jogok megsértésére hivatkozva leszedette, arra utal, hogy azok valószínűleg valóban igazi, belsős kódot tartalmaztak. A neves biztonsági szakértő, Jonathan Lewin ennek fényében egyenesen “minden idők legfontosabb szivárgásának” nevezte az incidenst.

iOS 9

Maga az Apple is reagált a történtekre. Hivatalos álláspontjuk az, hogy a kódrészlet kikerülése nem kompromittálja az iOS biztonságát, hiszen a rendszerbe való bejutást nem könnyíti meg, hogy egy potenciális támadó ismeri annak működését. Ez elméletben persze igaz, a kérdés csak az, hogy a gyakorlatban mondjuk mennyire segíti a kiskapukeresőket az, hogy C kódot olvashatnak nyers assembly helyett.

Egyesek még egy pónit is találtak a forráskódban:

Az ~/apps/EmbeddedIOP/ mappában megtalálható a main.c fájl, ezen belül pedig egy nagy tömb ASCII karakterkódokkal. A main függvény egyik sora ennek a tömbnek a tartalmát írja ki a képernyőre. Mivel kiváncsi voltam, milyen eredményt adhat mindez, írtam egy rövid programot, ami kiírja a tömb tartalmát.

iBoot forrás – Pony

E sorok írójának véleménye szerint sincs ok az aggodalomra. Aki nagyon vissza akarta és tudta fejteni az iBoot-ot, annak valószínűleg olyan gyakorlata van a reverse engineeringben, hogy nem jelent neki számottevő segítséget a napvilágra került magasabb szintű kód, bár a munkáját meggyorsíthatja.

Egy valamit azonban szinte biztosra vehetünk: az interneten terjedő sok szenzációhajhász cikknek, találgatásnak az ellenére nem valószínű, hogy mindebből mondjuk néhány napon belül jailbreak vagy az iOS más hardveren való futtatása legyen.

Ezek még érdekelhetnek:


  1. Meglepődtem volna, ha ehelyett “a kódrészlet kikerülése nem kompromittálja az iOS biztonságát, hiszen a rendszerbe való bejutást nem könnyíti meg, hogy egy potenciális támadó ismeri annak működését” azt nyilatkozzák, hogy “igen, gáz van, így könnyebb lesz feltörni a készülékeiteket kedves ájóesz júzerek”. 😀

  2. @pAnk: javaslom az alábbi Wikipédia-cikkeket: Security through obscurity és Kerckhoff’s principle.

    TL;DR: a modern információbiztonsági rendszerek egyik legalapvetőbb megkötése, hogy a rendszer működésének ismerete vagy nem-ismerete egyáltalán ne befolyásolja annak biztonságát. A jelszavaidat védő kriptográfiai hash függvények, a bankkártyaadataidat védő titkosítási algoritmusok, a böngésződben a session-öd azonosítóját előállító pszeudorandom generátorok, stb. jellemzően mind-mind nyílt szabványok alapján működő, 100%-ban ismert algoritmusok. Mégis biztonságosak, mert nem az algoritmus “titkosságán” múlik az általuk előállított adatok titkossága, megjósolhatatlansága, stb.

  3. Nem vagyok informatikus, de régóta követem az apple és a különböző jailbreak csoportok macska-egér harcát. Az ios pont ezeknek a fiatal és lelkes “etikus hackereknek” köszönhetően egyre biztonságosabb. A jailbreak egyre nehezebb, de azt mondják feltörhetelen rendszer nem létezik – (még ios11-nél is találtak kernel szinten biztonsági rést). Esetleg a kikerült kódrészletekben is találnak sebezhetőségeket… Free Ios!
    Jó cikk, köszönjük!

  4. jo cikk. H2CO3 ott a pont. az osszes nyilvanos kulcsu titkositas alapja ismert nyilvanos megsem tudjak torni.. ha a kodbol nem derul ki back-door akkor ennek a szivargasnak mar csak a regisege miatt sem fog befolyasolni semmit.

Írd le a véleményedet! (Moderációs elveinket ide kattintva olvashatod.)

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