Tu je ukážka, ako funguje útek z väzenia

Tím evad3rs vydal evasi0n takmer týždeň späť. Teraz, keď sme všetci zariadenia iOS prerušili a nainštalovali najlepšie vychytávky, pozrime sa na to, ako neuveriteľne jednoduché na vonkajšej strane, ale na vnútornej strane neuveriteľne komplikovaných, útek z väzenia.

Pretože spoločnosť Apple zvyšuje bezpečnosť v systéme iOS, hackeri už nemôžu jednoducho nájsť jediný zneužívaný produkt ako v predchádzajúcich dňoch a používať ho na získanie prístupu root k zariadeniu. evasi0n je kombináciou piatich rôznych bugov, z ktorých väčšina je neškodných jednotlivo, ale dokopy dokážu crack otvoriť iOS.

evasi0n začína využívaním v zálohovacom systéme iTunes pre iOS, ktorý sa nazýva démon „MobileBackup“. Robí to spustením programu „libmobiledevice“, programu na vašom PC / Mac, ktorý komunikuje so zariadeniami iOS pomocou protokolu iTunes.

Evasi0n obnoví zálohu, ktorá obsahuje niekoľko súborov potrebných na útek z väzenia. Pretože program MobileBackup nemôže ukladať súbory mimo /var/Mobile/Media, evasi0n to obchádza vytvorením „symbolického odkazu“ alebo odkazom v /var/Mobile/Media názvom .haxx, ktorý ukazuje na /var/Media . MobileBackup je teraz schopný zapisovať súbory do /var/mobile cez .haxx . Skopírované súbory spoločne tvoria aplikáciu, ktorú by ste mali spustiť uprostred procesu útek z väzenia.

Použitím triku so symbolom získava evasi0n tiež prístup k súboru časových pásiem, ktorý je opäť symlinked, aby ukazoval na launchd, démona, ktorý spúšťa procesy s oprávneniami typu root. Prístup k launchd je teraz využívaný a súbor časového pásma je prístupný všetkým používateľom (nielen root) zmenou jeho povolení. Podobný trik sa používa na vytvorenie soketu, ktorý spracováva komunikáciu medzi spustenými a inými procesmi, prístupným pre mobilných používateľov, v rámci ktorého sú spustené všetky aplikácie na iOS.

Teraz je užívateľovi povedané, aby spustil aplikáciu, ktorá bola skopírovaná do súborového systému iOS v predchádzajúcom kroku. Táto aplikácia pomocou odhaleného soketu spustenia umožňuje zapisovanie systémového oddielu len na čítanie.

Teraz, keď sa systémový oddiel stal zapisovateľným, evasi0n znovu spustí program MobileBackup a zapíše veľa súborov, z ktorých jeden je launchd.conf, ktorý obsahuje veľa príkazov predstavujúcich zneužitie. Tento súbor sa spúšťa pri každom štarte systému, čo znamená, že útek z väzenia bude trvalý.

Jeden z príkazov v launchd.conf je zodpovedný za obchádzanie kontroly podpisového kódu kontrolného kódu AppleMobileFileIntegrity načítaním dynamickej knižnice, ktorá nahrádza vstavanú kontrolnú funkciu funkciou, ktorá sa vždy vracia true.

evasi0n má tiež pred sebou ďalší blok - Randomisation Address Layout Layout Randomisation, alebo ASLR, ktorý zavádza náhodnosť do adries flash pamäte, čo sťažuje predpovedanie. Na čipoch ARM však stále existuje miesto, ktoré sa dá ľahko nájsť, a pomocou tohto evasi0n môžete zmapovať celú pamäť. Odtiaľ, evasi0n, ktorý využíva chybu v rozhraní USB pre iOS, sa konečne dostane do jadra zariadenia, kde sa všetko otvára.

Via: Forbes, Acuvant Labs



Populárne Príspevky