19
Больше чем безопасность к.ф.-м.н. Катерина Трошина Ведущий специалист по анализу кода, ЦИБ ЗАО «Инфосистемы Джет» 10 уязвимостей в мобильном ПО 12 мая 2014 года

10 уязвимостей в мобильном ПО

Embed Size (px)

DESCRIPTION

Рассматриваются уязвимости, типичные для мобильных приложений, по результатам исследования мобильных приложений из разных областей (банковское дело, телекоммуникации). В качестве основных платформ рассматриваются наиболее распространенные в настоящее время мобильные платформы Android и iOS.

Citation preview

Page 1: 10 уязвимостей в мобильном ПО

Больше чем безопасность

к.ф.-м.н. Катерина Трошина

Ведущий специалист по анализу кода, ЦИБ

ЗАО «Инфосистемы Джет»

10 уязвимостей в

мобильном ПО

12 мая 2014 года

Page 2: 10 уязвимостей в мобильном ПО

© 2013 Инфосистемы Джет ЦИБ: больше чем безопасность

Введение

Мобильное приложение – это конкурентное

преимущество!

Особенности:

• эксплуатация в разнообразных средах

• недоступность дополнительных средств защиты

• невозможность удаленного контроля

Мобильное приложение – уязвимо!!!

Page 3: 10 уязвимостей в мобильном ПО

© 2013 Инфосистемы Джет ЦИБ: больше чем безопасность

Особенности разработки приложений с

точки зрения ИБ

Дефекты в программном обеспечении:

• Ошибки

• Уязвимости

• Недекларированные возможности

Page 4: 10 уязвимостей в мобильном ПО

© 2013 Инфосистемы Джет ЦИБ: больше чем безопасность

Особенности разработки приложений с

точки зрения ИБ

Уязвимости – это ошибки разработчиков, которые

потенциально могут эксплуатироваться

злоумышленниками с целью получения

несанкционированного доступа к управлению ПО

Page 5: 10 уязвимостей в мобильном ПО

© 2013 Инфосистемы Джет ЦИБ: больше чем безопасность

Причины появления уязвимостей в коде

• Разработчик обычно не является экспертом в области ИБ

• Практика разработки мобильных приложений имеет специфику

• Мобильные приложения часто разрабатываются на заказ, а требования к

функциональности дорабатываются в процессе разработки

• Требования к разработке – БЫСТРО!!!

• Сфера работы для программистов новая и стремительно развивающаяся

• Уязвимостей для мобильных приложений очень много и они «легко»

встраиваются в код

Page 6: 10 уязвимостей в мобильном ПО

© 2013 Инфосистемы Джет ЦИБ: больше чем безопасность

Number 1: Недостаточная проверка SSL-

сертификатов (Android и iOS)

Установка защищенного соединения

• проверка подлинности

подписи SSL сертификата

Модель атаки:

• «подкладываем пользователю» «неправильный

сертификат»

• перехватывает трафик на «неправильный сервер»

• показываем «неправильный сертификат»

• «перенаправляем пользователя» на свой сервер

Атака – Человек по середине

Риск – 10/10 (полная потеря конфиденциальных данных)

Page 7: 10 уязвимостей в мобильном ПО

© 2013 Инфосистемы Джет ЦИБ: больше чем безопасность

Number 2: Хранение настроек в

файловой системе (iOS)

Настройки приложения хранятся в .plist-файле в

«защищенном» каталоге

Настройки могут хранить:

• регистрационные имена

• пароли

Модель атаки:

• Получаем физический доступ к устройству

• Подключаем устройство к компьютеру

• iExplorer дает доступ к .plist-файлу

Атака – Доступ к устройству или стороннее приложение

Риск – 5/10 (требуется доступ к устройству)

Page 8: 10 уязвимостей в мобильном ПО

© 2013 Инфосистемы Джет ЦИБ: больше чем безопасность

Number 3: Работа на модифицированных

устройствах (Android и iOS)

Приложения должны выполняться в защищенном

пространстве: «песочнице».

Если устройство модифицировано, то нет возможности

контролировать доступ к памяти приложений.

Должны быть 2 сценария работы приложения:

• На защищенном устройстве

• На модифицированном устройстве

Атака – вредоносное ПО может управлять трафиком

Риск – 7/10 (пользователи обычно осознают риск)

Page 9: 10 уязвимостей в мобильном ПО

© 2013 Инфосистемы Джет ЦИБ: больше чем безопасность

Number 4: Утечка приватной информации

в системные журналы (Android и iOS)

Приложение записывает в

системные журналы

конфиденциальную информацию,

например, тело POST-запроса.

Модель атаки:

Любое приложение с правами доступа чтения из

системного журнала имеет доступ информации,

которую записывают в него любые приложения

Атака – утечка конфиденциальной информации

Риск – 3/10 - 9/10 (зависит от информации)

Page 10: 10 уязвимостей в мобильном ПО

© 2013 Инфосистемы Джет ЦИБ: больше чем безопасность

Number 5: Использование

дополнительных сервисов (Android и iOS)

Обычно используют три сервера: • основной

• геолокации и картографии

• вспомогательной информации

Вспомогательные сервера обделены вниманием ИБ

Модель атаки: • перехват информации, отправляемой на мобильное устройство

• дезинформация об услугах

• перенаправление на «ложные» страницы

Атака – дезинформация пользователей, фишинговые атаки

Риск – 4/10 - 6/10 (зависит от информации)

Page 11: 10 уязвимостей в мобильном ПО

© 2013 Инфосистемы Джет ЦИБ: больше чем безопасность

Number 6: Утечка пользовательских данных

при переходе в фоновый режим (iOS)

При переходе приложения в фоновый

режим iOS делает снимок экрана

приложения, который сохраняется

в домашней директории приложения

по относительному пути

Library/Caches/Snapshots/.

На снимках экрана может содержаться

конфиденциальная информация, что может

привести к ее утечке.

Атака – утечка конфиденциальной информации

Риск – 3/10 - 8/10 (зависит от информации)

Page 12: 10 уязвимостей в мобильном ПО

© 2013 Инфосистемы Джет ЦИБ: больше чем безопасность

Number 7: Не отключение системного

буфера обмена (Android и iOS)

Если приложение не отключает

системный буфер обмена, то

пользовательские действия в

контексте приложения

записываются и могут быть

прочтенными из системного буфер обмена

Атака – утечка конфиденциальной информации

Риск – 4/10

Page 13: 10 уязвимостей в мобильном ПО

© 2013 Инфосистемы Джет ЦИБ: больше чем безопасность

Number 8: Утечка информации через IPC

(Android)

Intent - объект, отвечающий за

взаимодействие компонент

Intent – не должен содержать

конфиденциальную информацию

Модель атаки:

• процессы синхронизуются

• Intent содержит конфиденциальную информацию

• чужое приложение ее читает

Атака – утечка конфиденциальной информации

Риск – 3/10

Page 14: 10 уязвимостей в мобильном ПО

© 2013 Инфосистемы Джет ЦИБ: больше чем безопасность

Number 9: Незащищенные приемники

широковещательных сообщений (Android)

Intent выдают широковещательные

сообщения, которые принимает

широковещательный приемник

Модель атаки:

• приемник не защищен правами доступа

• вредоносное ПО подделывает сообщения

Атака – утечка конфиденциальной информации. Захват

управления приложением

Риск – 4/10

Page 15: 10 уязвимостей в мобильном ПО

© 2013 Инфосистемы Джет ЦИБ: больше чем безопасность

Number 10: Делегирование управления

(Android)

На платформе Android приложения

могут делегировать управление другим

приложениям, используя Intent

Модель атаки:

Если адрес Intent не определен, то

чужое приложение может его захватить и

перенаправить!

Атака – утечка конфиденциальной информации. Захват

управления приложением.

Риск – 4/10

Page 16: 10 уязвимостей в мобильном ПО

© 2013 Инфосистемы Джет ЦИБ: больше чем безопасность

Выводы и заключение

• Невозможно запретить людям пользоваться ПО

только по задуманным разработчиками сценариям.

• Сложно собрать команду разработчиков, которая не

будет оставлять в ПО возможности для его

альтернативного использования.

• Можно защититься от успешной эксплуатации

большинства уязвимостей!

Page 17: 10 уязвимостей в мобильном ПО

© 2013 Инфосистемы Джет ЦИБ: больше чем безопасность

Выводы и заключение

Для начала уязвимости нужно выявить и оценить угрозу!

Оставить как есть

и исправить в

следующей версии

Срочно

исправлять код!

Page 18: 10 уязвимостей в мобильном ПО

© 2013 Инфосистемы Джет ЦИБ: больше чем безопасность

Выводы и заключение

Анализ кода от Jet Infosystems позволит вам получить

полную информацию:

• о защищенности приложения до того, как его

«протестируют» на защищенность злоумышленники

• о потенциальных угрозах, которыми подвергается

ваш бизнес, эксплуатирую разработанное ПО

• как не допустить эксплуатацию выявленных

уязвимостей

Принять правильное решение!

Page 19: 10 уязвимостей в мобильном ПО

Больше чем безопасность

к.ф.-м.н. Катерина Трошина

Ведущий специалист по анализу кода, ЦИБ

ЗАО «Инфосистемы Джет»

Спасибо за внимание

Ваши вопросы

12 мая 2014 года