Около полугода назад российский разработчик Денис Токарев обнаружил в платформе Apple iOS четыре уязвимости, которые позволяют приложениям получать доступ к конфиденциальной информации без ведома пользователя. Он сообщил о своих находках Apple, однако до настоящего момента компания закрыла только одну из них.
Все обнаруженные отечественным специалистом уязвимости имеют один класс — Information Disclosure. При работе iOS в системе постоянно запущено множество фоновых процессов, каждый из которых отвечает за свою функциональность. Их привилегии различны, однако они выше, чем у приложений из App Store. Однако при помощи фреймворков приложения могут получать доступ к данным из этих процессов, а данные, в свою очередь, могут содержать конфиденциальную информацию.
Обнаруженные Денисом Токаревым уязвимости являются логическими. Это означает, что при получении приложениями данных из процессов система не всегда производит необходимые проверки.
Первая уязвимость получила название Gamed, она связана с фреймворком GameKit и соответствующим ему фоновым процессом com.apple.gamed. Специалист сообщил о ней Apple ещё 10 марта 2021 года. Ответ пришёл только 25 августа: Apple пообещала закрыть её в ближайшем обновлении, однако даже с выходом iOS 15 соответствующих изменений в платформе так и не появилось.
На практике данная уязвимость позволяет приложению получать доступ к электронной почте аккаунта Apple ID и отправлять запросы на серверы Apple от имени принадлежащего пользователю Apple ID. Кроме того, она открывает доступ к четырём системным файлам устройства, содержащим списки контактов приложений из комплекта iOS и метаданные по взаимодействию с этими контактами.
Уязвимость под названием Nehelper installed apps позволяет проверять, установлено ли на устройстве то или иное приложение по его идентификатору bundle ID. Ещё одна уязвимость, Nehelper wifi info, характеризуется господином Токаревым как незначительная — с её помощью можно получать информацию о точке доступа Wi-Fi, к которой в текущий момент подключено устройство.
Единственная исправленная Apple с выходом iOS 14.7 уязвимость носит название Analyticsd — она связана с фоновым процессом, ответственном за сбор аналитики. При помощи метода «log-dump», который не защищён никакими проверками, можно было получить доступ к расширенным данным об использовании устройства, к медицинской информации (если таковая собиралась), к подключённым аксессуарам, к данным о сбоях в работе приложений и даже о языке страниц, которые открывались в Safari.
Сообщив Apple о выявленных проблемах в рамках программы Security Bounty, российский специалист не получил практически никакой реакции. Выждав около полугода, Токарев накануне был вынужден опубликовать подробности своих находок на «Хабре» в двух постах: на русском и английском языках. И только сегодня, сутки спустя, Apple всё-таки прислала ответ. Компания сообщила, что посты были прочитаны, и что она «всё ещё расследует эти проблемы и способы их преодоления для защиты пользователей».
Источник: Habr