Главная новость прошлой недели — масштабное исследование реальной атаки на устройства на базе iOS, опубликованное экспертом Яном Бером из команды Google Project Zero (новость, блогпост Яна со ссылками на семь дополнительных публикаций). Это редкий пример исследования, в котором в подробностях описывается не только процесс взлома iPhone, но и результаты работы устанавливаемого импланта.
В исследовании не раскрывается цель атакующих, и тут есть некоторые странности. Эксплойты заражали устройства на iOS без дополнительных действий пользователя, достаточно было посетить взломанный веб-сайт. При этом заражались все посетители сайта, что в контексте цены работающего эксплойта для устройств Apple, мягко говоря, недальновидно. Несмотря на то, что зараженные сайты посещали «тысячи пользователей каждую неделю», эта конкретная кампания продолжалась как минимум два года, меняя методы атаки по мере выхода новых версий iOS.
Атаки начались в 2016 году, им подвергались все модели iPhone начиная с 5s и вплоть до самых современных, под управлением iOS 10–12-й версии. В ходе исследования зараженных веб-сайтов было обнаружено 14 уязвимостей, которые использовались в пяти различных комбинациях для взлома iOS. Каждый метод обеспечивал полный контроль над телефоном жертвы. По мере выпуска обновлений iOS методы атаки менялись, вероятнее всего, в ответ на закрытие уязвимостей в новых версиях iOS, но, возможно, и по каким-то другим соображениям. Для актуальной сегодня iOS 12 использовалось два сценария атаки. На момент обнаружения только один из них использовал незакрытые в самой последней версии iOS уязвимости: экстренный патч для них был выпущен в феврале этого года.
В блоге Google Project Zero подробно описываются все пять методов атаки и анализируются использованные уязвимости в различных компонентах iOS. Отдельно исследователь Сэмьюел Гросс описывает уязвимости в браузере, точнее, в движке WebKit. Там есть интересное наблюдение: исследователи предполагают (но не могут утверждать наверняка), что атакующие внимательно следили за патчами самого движка WebKit и применяли эксплойты против iOS, пока для смартфонов Apple не выпускался очередной апдейт.
В некоторых случаях вместе с патчем уязвимости исследователи публиковали Proof of Concept. На картинке выше показано, что публичный PoC организаторы атаки использовали с минимальными изменениями. Данная уязвимость была закрыта в WebKit 11 марта 2017 года, а релиз iOS 10.3.2 с этим патчем состоялся только 15 мая. Всего в статье описывается семь уязвимостей в WebKit, и в каждом случае у злоумышленников было примерно два месяца форы до выпуска патча. Сами по себе уязвимости в браузере не обеспечивают полный контроль над мобильным устройством, но благодаря им становится возможной эксплуатация уязвимостей в других компонентах ОС и получение полного контроля.
Наконец, в отдельной статье описывается функциональность вредоносного ПО, которое атакующие устанавливали после взлома iOS. Довольно часто исследователи ограничиваются простым списком возможностей, здесь же все наглядно показано со скриншотами. А именно: кража переписки из Telegram, Whatsapp, Hangouts и iMessage, перехват незашифрованной переписки в приложении GMail, кража контактов, фотографий и передача геолокации жертвы ежеминутно. Имплант также загружает на сервер злоумышленников пароли от WiFi, токены для доступа к сервисам, например к учетной записи Google. Вредоносная программа не переживает перезагрузку, но, во-первых, смартфоны перезагружаются не так часто, а во-вторых, даже кратковременная работа вредоносной программы дает злоумышленнику массу информации для дальнейшей компрометации почтовой учетной записи и прочего.
Выглядит страшновато. Пользователь никак не может определить наличие вредоносного ПО, так как сам не имеет доступа, например, к списку запущенных процессов. Есть возможность идентифицировать зараженное устройство по характерным ежеминутным обращениям к командному серверу. Тем более, все украденные данные передаются без шифрования, по http, и теоретически доступны не только организаторам атаки, но и вообще кому угодно. Как атакующие умудрялись работать незамеченными в течение долгого времени, при этом не особо скрываясь и используя уязвимости нулевого дня? На этот вопрос публикация Google Project Zero не дает ответов. В статье говорится лишь о том, что такая кампания навряд ли единственная.
В данном исследовании интерес представляет время жизни работающего эксплойта при его умеренно публичной эксплуатации. Если судить по таймлайну, показанному исследователями, выходит от трех до девяти месяцев, хотя не все показанные методы работали на обновленном до последней версии телефоне.
Ранее эксперты «Лаборатории Касперского» рассказали о массовой атаке на пользователей Android (новость, исследование). Популярное приложение CamScanner, распознающее текст сфотографированного документа, в какой-то момент было скомпрометировано: в код программы на Google Play был добавлен рекламный модуль, который обращался к серверам злоумышленников и скачивал оттуда вредоносный код. В данном случае троян Necro.n зарабатывал на жертвах любыми доступными способами — от показа рекламы поверх других приложений до отправки SMS на платные номера. На данный момент приложение удалено из магазина Google, и если судить по отзывам пользователей, вредоносная версия распространялась около месяца — столько массированные атаки на смартфоны остаются незамеченными. По данным из самого магазина, приложение было загружено больше 100 миллионов раз.
Disclaimer: Мнения, изложенные в этом дайджесте, могут не совпадать с официальной позицией «Лаборатории Касперского». Дорогая редакция вообще рекомендует относиться к любым мнениям со здоровым скептицизмом.
Автор: Kaspersky_Lab