Самочувствие malware на€¦ · Самочувствие malware на iOS...

24
Самочувствие malware на iOS устройствах Дмитрий Евдокимов Директор исследовательского центра Digital Security

Transcript of Самочувствие malware на€¦ · Самочувствие malware на iOS...

Page 1: Самочувствие malware на€¦ · Самочувствие malware на iOS устройствах Дмитрий Евдокимов Директор исследовательского

Самочувствие malware на

iOS устройствахДмитрий Евдокимов

Директор исследовательского центра

Digital Security

Page 2: Самочувствие malware на€¦ · Самочувствие malware на iOS устройствах Дмитрий Евдокимов Директор исследовательского

Самочувствие malware на iOS устройствах

© 2003—2016, Digital Security

#whoami• Исследователь информационной безопасности в Digital Security

• Редактор рубрики в журнале Xakep

• Один из организаторов конференций DEFCON Russia и ZeroNights

• Специализируюсь на поиске уязвимостей в бинарных приложениях без исходного кода

• Анализ мобильных приложений для Android, iOS, WindowsPhone

• Докладчик на конференциях в Польше, Франции, Испании, Германии, ОАЭ, Мексике

2

Page 3: Самочувствие malware на€¦ · Самочувствие malware на iOS устройствах Дмитрий Евдокимов Директор исследовательского

Самочувствие malware на iOS устройствах

© 2003—2016, Digital Security

План

• Безопасность iOS

• Malware для iOS устройств– С Jailbreak

– Без Jailbreak

• Подходы/техники используемые malware

• Заключение

3

Page 4: Самочувствие malware на€¦ · Самочувствие malware на iOS устройствах Дмитрий Евдокимов Директор исследовательского

Самочувствие malware на iOS устройствах

© 2003—2016, Digital Security

Безопасность iOS

• Проверка приложений компанией Apple

• Подпись кода– X.509v3 сертификат + подтверждение личности

– W^X

• Песочница (Seatbelt)– /var/mobile/Applications/<app-GUID>/

– /var/mobile/Containers/Bundle/Application/

• Нет доступа к другим процессам

• Отсутствие прямого доступа к железу устройства

• Невозможность динамически генерировать код

• Разделение привилегий– Приложения с правами mobile + Entitlements

4

Page 5: Самочувствие malware на€¦ · Самочувствие malware на iOS устройствах Дмитрий Евдокимов Директор исследовательского

Самочувствие malware на iOS устройствах

© 2003—2016, Digital Security

Распространение ПО/malware для iOS• AppStore

– Подписано distribution-сертификатом

– Проходит App Review

• TestFlight (из AppStore)

– Подписано distribution-сертификатом

– С beta entitlement, доступна для 1000 пользователей

– Проходит Beta App Review

• Персональный сертификат

– Установка только на одно устройство без распространения без проверки Apple

• Ad Hoc распространение

– Подписано developer-сертификатом

– Не более 100 заранее оговоренных устройств – необходимо знание UUID

– Проверка кода от Apple отсутствует

• In-House распространение

– Подписанные enterprise-сертификатом

– Проверка кода от Apple отсутствует

5

Код

дол

жен б

ыть

под

пи

сан !

Page 6: Самочувствие malware на€¦ · Самочувствие malware на iOS устройствах Дмитрий Евдокимов Директор исследовательского

Самочувствие malware на iOS устройствах

© 2003—2016, Digital Security

Jailbreak

Jailbreak - это процесс удаления ограничений, введённых компаний Apple на своих устройствах, посредством эксплоитов.

– Привязной (Tethered)

– Отвязной (Untethered)

Последствия:– Возможность доступа к файловой системе

– Обход ограничений sandbox (песочница)

– Запуск неподписанных приложений

JB: PwnageTool, redsn0w, purplera1n, Spirit, JailbreakMe, Absinthe, evasi0n, Pangu, TaiG

Лица: iPhone Dev Team, Chronic Dev Team, George Hotz, comex, pod2g, evad3rs + saurik, Pangu team

6

Page 7: Самочувствие malware на€¦ · Самочувствие malware на iOS устройствах Дмитрий Евдокимов Директор исследовательского

Самочувствие malware на iOS устройствах

© 2003—2016, Digital Security

С jailbreak

• iKee and Duh (Ноябрь 2009) - заражение через пароль по умолчанию для OpenSSH

• AdThief/Spad (Март и Август 2014) - кража выплат за рекламу

• Unflod (Апрель 2014) - кража Apple ID и пароля

• AppBuyer (Сентябрь 2014) - кража Apple ID и пароля для покупки платных приложений

• Xsser mRAT (Декабрь 2014) - получение и выполнение команд с С2, сбор данных

• KeyRaider (Август 2015) - кража Apple ID и пароля

• XAgent (Февраль 2015) – скрытая работа в фоне, сбор данных

• Попадали на устройства из сторонних источников (Cydia и т.д.) или через социальную инженерию

• В основе большинства Cydia Substrate7

Page 8: Самочувствие malware на€¦ · Самочувствие malware на iOS устройствах Дмитрий Евдокимов Директор исследовательского

Самочувствие malware на iOS устройствах

© 2003—2016, Digital Security

Remote Jailbreak

• Цена на черном рынке > 1.000.000 евро

• Подобное уже делал Comex– Сайт JailbreakMe

– Достаточно было зайти на сайт

8

Page 9: Самочувствие malware на€¦ · Самочувствие malware на iOS устройствах Дмитрий Евдокимов Директор исследовательского

Самочувствие malware на iOS устройствах

© 2003—2016, Digital Security

Векторы атак на устройство без JB

• «Вредоносный подарочек»

• Через зараженный компьютер

• Пара секунд в чужих руках

• «Сам себе Буратино»

• Взломанный разработчик

• Инсайдер

• Через уязвимость приложения

• Благодаря уязвимости в iOS

9

Page 10: Самочувствие malware на€¦ · Самочувствие malware на iOS устройствах Дмитрий Евдокимов Директор исследовательского

Самочувствие malware на iOS устройствах

© 2003—2016, Digital Security

Возможности malware в sandbox

• Использование private API– Установка и удаление приложений и много другое

• Злонамеренный доступ к адресной книге, календарю и т.д.

• Злонамеренный доступ к геолокации

• Утечка критичной/конфиденциальной информации

• Проведение социальной инженерии– Фишинг

• Нарушение нормальной работы других приложений

• Подгрузка непроверенного Apple кода

• Осуществление jailbreak

• …10

Page 11: Самочувствие malware на€¦ · Самочувствие malware на iOS устройствах Дмитрий Евдокимов Директор исследовательского

Самочувствие malware на iOS устройствах

© 2003—2016, Digital Security

Без jailbreak

• Из AppStore– ZergHelper

• Использование enterprise сертификата– WireLurker, Oneclickfraud, YiSpecter, TracerPlus, TinyV

• “Взломанный” разработчик– XcodeGhost (зараженная версия Xcode 7)

• Эксплотация уязвимость технологии Apple– AceDeceiver

• И многие другие: Tories, LBTM, iSAM, FinaAndCall , InstaStock, CarrierIQ,Jekyll, FakeTor, …

11

Page 12: Самочувствие malware на€¦ · Самочувствие malware на iOS устройствах Дмитрий Евдокимов Директор исследовательского

Самочувствие malware на iOS устройствах

© 2003—2016, Digital Security

WireLurker

• Атака на Mac OS и iOS системы

• Инфицирование iOS с зараженного ПК через USB

• Использование переупаковки установленных приложений

• Первое malware, применившее enterprise сертификат

12

Page 13: Самочувствие malware на€¦ · Самочувствие malware на iOS устройствах Дмитрий Евдокимов Директор исследовательского

Самочувствие malware на iOS устройствах

© 2003—2016, Digital Security

ZergHelper

• Приложение “开心日常英语 (Happy Daily English)”– Изучение английского языка

– На самом деле магазин пиратских приложений =)

• Распространение из AppStore + обход App Review

• Использование enterprise и personal сертификатов для подписи и установки других приложений

• Динамическое обновление кода– wax фреймворк – пишем на Lua для iOS

13

Page 14: Самочувствие malware на€¦ · Самочувствие malware на iOS устройствах Дмитрий Евдокимов Директор исследовательского

Самочувствие malware на iOS устройствах

© 2003—2016, Digital Security

AceDeceiver

• Обход App Review– Как и в ZergHelper в зависимости от геолокации

• Установка приложения без уведомления пользователя– Не использует enterprise сертификат

– Устанавливается с заражённого ПК

– Эксплотирует недостаток Apple DRM

• Техника “FairPlay Man-In-The-Middle (MITM)”

• Известна с 2013 года

• Техника работает и по сей день

14

Page 15: Самочувствие malware на€¦ · Самочувствие malware на iOS устройствах Дмитрий Евдокимов Директор исследовательского

Самочувствие malware на iOS устройствах

© 2003—2016, Digital Security

Дополнительные возможности / Private API

• Использование private API– дополнительные функциональные возможности

• Общение с окружающими сервисами (типа mach-портов)

• Увеличение attack surface для проведения jailbreakна устройстве

• Важно: Подпись кода -> Сертификат от Apple -> В сертификате прописаны entitlements -> Можно работать с private API в пределах entitlements

15

Page 16: Самочувствие malware на€¦ · Самочувствие malware на iOS устройствах Дмитрий Евдокимов Директор исследовательского

Самочувствие malware на iOS устройствах

© 2003—2016, Digital Security

Переупаковка приложения -> malware

1. Скачивание легитимного приложения

2. Распаковка приложения

3. Добавление вредоносной dylib

4. Переподписывание приложения легитимным сертификатом

5. Установка жертве

• Все уже автоматизировано в инструменте su-a-cyder– В основе лежит Theos-Jailed и fastlane

16

Page 17: Самочувствие malware на€¦ · Самочувствие malware на iOS устройствах Дмитрий Евдокимов Директор исследовательского

Самочувствие malware на iOS устройствах

© 2003—2016, Digital Security

Уязвимость "Masque"

• Позволяла приложению подписанному enterprise сертификатом заменить уже существующее на устройстве в процессе обновления и получить доступ к содержимому приложения

– Коллизия в bundle ID приложения

– Исправлена Apple - не работает на iOS версии > 8.3

• SandJacking– Перерождение “Masque”

– Замена приложения происходит в backup и применяется в момент восстановления на устройство

– На данный момент уязвимость Apple не закрыта

17

Page 18: Самочувствие malware на€¦ · Самочувствие malware на iOS устройствах Дмитрий Евдокимов Директор исследовательского

Самочувствие malware на iOS устройствах

© 2003—2016, Digital Security

Downgrade атака на приложения

• Apple хранит все версии приложений

• Скачиваем и устанавливаем старую версию приложения из AppStore– Включая приложения с утечками критической информации

– Включая версии приложений без обфускации

– Включая уязвимые версии приложений

– …

• Злоумышленник использует недостаток в личных целях

18

Page 19: Самочувствие malware на€¦ · Самочувствие malware на iOS устройствах Дмитрий Евдокимов Директор исследовательского

Самочувствие malware на iOS устройствах

© 2003—2016, Digital Security

All your traffic belong to us

• Вредоносный VPN– Перехват всего сетевого трафика устройства легитимным способом

• Идея AdThief + vpn функционал = $$$

• "What’s New in Network Extension and VPN", WWDC1519

Page 20: Самочувствие malware на€¦ · Самочувствие malware на iOS устройствах Дмитрий Евдокимов Директор исследовательского

Самочувствие malware на iOS устройствах

© 2003—2016, Digital Security

Динамически подгружаемый/обновляемый код

• Просто нужен интерфейс от скриптового языка к Оbjective-C

• JSPatch – JavaScript интерфейс к Objective-C – Существует множество других …

• Сложно идентифицировать/заблокировать нежелательную функциональность, которой нет в коде ;)

1. Подключаем #import "JPEngine.h"

2. Инициализируем [JPEngine startEngine]

3. Выполняем JS [JPEngine evaluateScript:script]

20

Page 21: Самочувствие malware на€¦ · Самочувствие malware на iOS устройствах Дмитрий Евдокимов Директор исследовательского

Самочувствие malware на iOS устройствах

© 2003—2016, Digital Security

Полезные ссылки

• “iOS Malware”, Claud Xiao

• “Червивые яблочки [БЕЗ JailBreak]”, Дмитрий Евдокимов

• “Who’s Breaking into Your Garden”, Claud Xiao

• “SU-A-CYDER: HOMEBREWING MALWARE FOR IOS LIKE A B0$$!”, Chilik Tamir

• "SandJacking: Profiting from iOS Malware", Chilik Tamir

21

Page 22: Самочувствие malware на€¦ · Самочувствие malware на iOS устройствах Дмитрий Евдокимов Директор исследовательского

Самочувствие malware на iOS устройствах

© 2003—2016, Digital Security

Рекомендации

• Не устанавливайте приложения из сторонних источников

• Не подключайте устройства к не доверенным системам

• Обновляйте ОС

• Контролируйте профили на устройстве (Настройки -> Основные -> Профили)

• Храните в безопасности ваши сертификаты (для разработчиков)

• Контролируйте код, который пишут для in-house-распространения (для заказчиков)

22

Page 23: Самочувствие malware на€¦ · Самочувствие malware на iOS устройствах Дмитрий Евдокимов Директор исследовательского

Самочувствие malware на iOS устройствах

© 2003—2016, Digital Security

Выводы

• Заражение устройства может происходить по многочисленным сценариям

• Процесс App Review от Apple обходится

• Отсутствие Jailbreak и наличие последней версии ОС не гарантирует безопасность устройству от заражения

• Подпись на коде не спасает от появления нового, подозрительного кода

• Вредоносный код стремится быть максимально близким и похожим на легитимный код.

• Количество модификаций вредоносного кода для iOS будет расти и дальше

23

Page 24: Самочувствие malware на€¦ · Самочувствие malware на iOS устройствах Дмитрий Евдокимов Директор исследовательского

[email protected]@evdokimovds

Digital Security в Москве: (495) 223-07-86Digital Security в Санкт-Петербурге: (812) 703-15-47

Спасибо за внимание!Вопросы?

24