Ух! Це настільки круто, що аж дух захоплює.
Жаль лише, що такі творчі програмістські розуми використовувались переважно для того, щоб спецслужби могли отримувати прямий доступ до ваших айфонів.Отже, є така ізраїльська компанія NSO. Чим вона відома – вони виробляють спеціальний софт, який використовує різноманітні вразливості телефонів на iOS. Apple постійно прикриває дири, але NSO знаходить нові.
Потім цей софт продають, щоб дехто міг копирсатись у вашому телефоні.
Але те, що вони зробили цього разу – це напевно один з найдовершеніших доробків ІТ-мистецтва, які коли-небудь були створені.
Якщо коротко – вам присилають повідомлення у iMessage. Ви нічого не тицяєте, не відкриваєте, не пересилаєте. Взагалі нічого не робите. Але зловмисники отримують повний контроль над вашим телефоном.
Якщо трохи довше, то історія виглядає так:
На iPhone у iMessage чи SMSкою вам присилають pdf-файлик, але має він розширення gif. Він так сконструйований, що iPhone сприймає його ще й як анімаційну гіфку.
iMessage для блага користувача (ну для красоти ж!) зациклює всі гіфки по замовчуванню, щоб вони постійно у вас крутились.
Для цього він робить копію гіфки, перед цим пропускаючи її через спеціальний процес рендерингу (щоб файлик був правильним і легким).
І тут настає найцікавіше – вам насправді прислали пдфку в якій є картинка в доісторичному форматі JBIG2 (формат стиснення картинок, який 30 років тому використовувався для ксероксів), і iOS розуміє цей формат (бо ця частина коду операційної системи родом з кінця 80-х).
В процесі рендерингу iMessage вже не звертає увагу на те, що це була нібито гіфка, а починає працювати з файлом у форматі JBIG2.
Особливість цього формату в тому, що блоки зображення кодуються з використанням логічних операцій — and, or, xor, nor.
Файл сконструйований так, що викликає цілочисельне переповнення буферу і фактично ці логічні операції можна виконувати вже над будь-якою коміркою пам’яті телефона.
В результаті з доісторичного графічного формату зібрано повноцінний віртуальний комп’ютер з 70 тисячами операцій, який може керувати вашим телефоном. Ну тобто мати доступ фактично до будь-якої інформації на ньому.
Apple профіксив вже це діло в iOS 14.8. Але скільком замовникам NSO встигла продати цей продукт до патчу – не відомо.
Maksym Savanevskyi