Бесплатно Экспресс-аудит сайта:

16.06.2020

Опубликован краткий обзор эксплоитов для уязвимостей в ядре iOS

Специалист Брэндон Азад (Brandon Azad) из проекта Google Project Zero опубликовал краткий обзор эксплоитов для уязвимостей ядра iOS, затрагивающих версии iOS от 10 до 13.

mach_portal - iOS 10.1.1

Эксплоит связан с уязвимостью (CVE-2016-7644) состояния гонки в set_dp_control_port () ядра XNU. Ее эксплуатация приводит к чрезмерному освобождению Mach-порта.

Цепочка эксплоитов 1 — iOS 10.1.1

Эксплоит связан с уязвимостью записи за пределами линейной кучи указателей IOAccelResource в функции IOKit AGXAllocationList2::initWithSharedResourceList (). Это одна из трех цепочек эксплуатации , в которых используется только одна уязвимость ядра, доступная напрямую из изолированной программной среды Safari.

extra_recipe - iOS 10.2

Уязвимость (CVE-2017-2370) на базе переполнения буфера кучи содержится в функции mach_voucher_extract_attr_recipe_trap, которая представляет собой системный вызов ядра Mach (или Mach trap). Техника эксплуатации данной уязвимости включает в себя многократные и преднамеренные сбои, и способы построения функций самоанализа ядра с использованием старых эксплоитов ядра.

Yalu102 - iOS 10.2

Эксплоит связан с уязвимостью, также получившей CVE-идентификатор CVE-2017-2370. Вызов Mach-trap используется для создания выделения kalloc и немедленного переполнения из него контролируемыми данными, перезаписывая содержимое массива OOL-портов и вставляя указатель на поддельный Mach-порт в пользовательском пространстве. Получение сообщения с OOL-портами позволяет осуществлять отправку на поддельный Mach-порт, содержимым которого можно напрямую управлять.

ziVA - iOS 10.3.1

Эксплоит для множественных уязвимостей в AppleAVE2, которые связаны с внешними методами, использующими указатели IOSurface в пространстве пользователя и доверяющих указателям IOSurface, считываемым из пространства пользователя.

async_wake - iOS 11.1.2

Уязвимость ( CVE-2017-13861 ) содержится в IOSurfaceRootUserClient::s_set_surface_notify () и приводит к удалению дополнительной ссылки на Mach-порт и содержится в proc_list_uptrs () ядра XNU. Ее эксплуатация позволяет вызвать утечку указателей ядра из-за невозможности полной инициализации памяти кучи перед копированием содержимого в пользовательское пространство.

v0rtex - iOS 10.3.3

Уязвимость ( CVE-2017-13861 ). Mach-порты распределены, и ссылка на один порт удаляется из-за уязвимости. Другие порты на странице освобождаются, позволяя получить право на «висящий». PoC-код для данной уязвимости использует один и тот же порт для первой и последующей регистрации.

Незавершенный эксплойт для уязвимости CVE-2018-4150 - iOS 11.2.6

Уязвимость ( CVE-2018-4150 ) — состояние гонки в подсистеме BPF ядра XNU, эксплуатация которой приводит к линейному переполнению буфера в куче из-за увеличения длины буфера без перераспределения соответствующего буфера.