Дата статьи 15.10.2015

SSL уязвимости в мобильных приложениях на Android и IOS

В последнее время появилось достаточно много сообщений об уязвимостях в мобильных приложениях для Android и IOS, связанных с протоколом SSL/TLS. Предупреждения о возможной небезопасности мобильных приложений еще в прошлом году (2014) опубликовали компании CERT и FireEye. Открытый проект обеспечения безопасности веб-приложений (OWASP, сокращенно от Open Web Application Security Project) в 2014 году составил список топ-10 проблем в безопасности мобильных приложений, среди которых "недостаточная защита транспортного уровня" заняла третью позицию.

Приложения, не использующие SSL сертификат, - особенно уязвимы, учитывая тот факт, насколько просто можно прочитать или изменить информацию, передаваемую, например, через незащищенные хот-споты Wi-Fi. Но даже приложения, которые используют протокол SSL/TLS, должны осуществить надлежащую проверку, чтобы убедиться, что злоумышленники не смогут воспользоваться слабыми сторонами приложений.

SSL уязвимости в популярных приложениях Android

Год назад компания FireEye исследовала 1000 наиболее скачиваемых бесплатных Android приложений из Google Store. Оказалось, что 674 мобильных приложения, а это около 68%, имели хотя бы одну из исследуемых компанией уязвимостей:
  1. Использование траст менеджеров, которые не проверяют SSL сертификаты: из 614 приложений, работающих по протоколу SSL/TLS, 448 (около 73%)приложений не проверяют SSL сертификаты.
  2. Использование собственных сервисов по проверке имен хоста, которые на самом деле не проверяют имена хостов: 50 мобильных приложений (около 8%)
  3. Игнорирование ошибок SSL в Webkit: из 285 мобильных приложений, которые используют Webkit, 219 (а это около 77%) игнорируют ошибки SSL, которые показываются в системе.

Исследование уязвимости Android приложений

Впоследствии FireEye проанализировали 10 000 случайно выбранных мобильных приложений на Google Play и выяснили следующее:
  • Около 4000 Android приложений (40%) используют траст менеджеры, которые не проверяют SSL сертификат сервера, тем самым открывая доступ потенциальным мошенникам к информации, которой они обмениваются.
  • Около 750 Android приложений (что составляет 7%) используют сервисы проверки имени хоста, которые на самом деле их не проверяют, что означает их неспособность распознать атаки с перенаправлением, в которых мошенник перенаправляет запрос сервера на свой сервер, используемый в мошеннических целях.
  • 1300 (13%) Android приложений, как выяснилось, не проверяют ошибки SSL при использовании Webkit.

Мобильные приложения и SSL уязвимости в библиотеках

Одно из недавних исследований показало, что тысячи мобильных приложений все еще используют устаревшую версию библиотеки OpenSSL, которая уязвима к атаке FREAK. О похожей проблеме сообщили создатели известной библиотеки по работе с сетями для мобильных приложений AFNetworking, когда они обнаружили критическую уязвимость в библиотеке: SSL пиннинг был настроен так, что проверка SSL сертификатов оказалась полностью отключенной. И хотя в обеих случаях уязвимости были быстро исправлены, тысячи мобильных приложений остаются уязвимыми, пока их разработчики не перекомпилируют приложения с новыми версиями AFNetworking или OpenSSL, а пользователи не установят новые версии мобильных приложений.

Так как уязвимости находились в библиотеках приложений, а не в операционной системе, поставщики смартфонов не могли откорректировать их автоматически. Учитывая то, насколько медленно пользователи обновляют мобильные приложения, вполне возможно, что уязвимые приложения будут использоваться еще долгое время. Причинами ошибок в написании кода, связанного с протоколом SSL/TLS, может быть незнание или ошибочное предположение, что платформа или библиотека все сделает верно. Иногда проверки SSL/TLS отключают на время разработки или отладки, а потом просто забывают их снова включить перед выпуском приложения в свет.

Проверка SSL сертификата в мобильном приложении

Разработчики не должны полагаться на интуицию. Существуют некоторые хорошие сервисы, которые позволяют проверить, как мобильное приложение будет вести себя в случае MITM-атаки. Одно из них – Tapioca от CERT, которое было описано в этой статье (на английском). Приложение или библиотека, которые работают с SSL сертификаты, должны проводить ряд проверок, чтобы обеспечить должный уровень аутентификации, конфиденциальности и целостности.

При условии правильного использования, SSL/TLS протокол предоставляет надежный уровень защиты информации (т.е. ее аутентификации, целостности и конфиденциальности) при передаче ее между двумя сторонами. Тем не менее, без соответствующих проверок данные могут незаметно попадать в руки мошенникам.

Чтобы SSL/TLS соединение гарантированно обеспечивало безопасность в мобильных приложениях, все приложения, работающие с SSL/TLS вне браузера, должны в обязательном порядке выполнять действия, описанные в данном документе (на английском языке).


Корзина 0 позиций
на сумму 0 ₽
Связаться со мной
Отправить
Отправляя форму Вы автоматически подтверждаете, что ознакомились и принимаете Политику конфиденциальности сайта
Оформить заказ
Заказать
Отправляя форму Вы автоматически подтверждаете, что ознакомились и принимаете Политику конфиденциальности сайта
Добавить отзыв
Заказать
Отправляя форму Вы автоматически подтверждаете, что ознакомились и принимаете Политику конфиденциальности сайта
Отзыв отправлен!
Спасибо за обращение! Мы опубликуем его как только наши сотрудники проверят его
Сообщение отправлено!
Спасибо за обращение! Мы свяжемся с Вами в ближайшие рабочие часы
Отправка не удалась
Во время отправки запроса произошла ошибка. Пожалуйста, подождите и попробуйте снова через некоторое время или позвоните на мой номер телефона
Авторизация
Отправляя форму Вы автоматически подтверждаете, что ознакомились и принимаете Политику конфиденциальности сайта
Забыли пароль?
\
Регистрация
Восстановление пароля
Отправляя форму Вы автоматически подтверждаете, что ознакомились и принимаете Политику конфиденциальности сайта
Авторизация
\
Регистрация
Ошибка авторизации
Пожалуйста, проверьте корректность данных.
Форма будет автоматически закрыта через 5 секунд
Успешная авторизация
Через 5 секунд страница будет перезагружена и вы сможете войти в свой аккаунт
Ошибка регистрации
Пожалуйста, проверьте корректность данных.
Форма будет автоматически закрыта через 5 секунд
Успешная регистрация
Вам на почту должно прийти письмо с ссылкой на подтверждение аккаунта. Пожалуйста перейдите по ней и активируйте свой аккаунт
Ошибка регистрации
Такой пользователь уже существует. Пожалуйста, проверьте корректность данных.
Регистрация
Ошибка восстановления пароля
Пожалуйста, проверьте корректность email.
Успех
Ваш новый пароль был выслан вам на email
Регистрация
Отправляя форму Вы автоматически подтверждаете, что ознакомились и принимаете Политику конфиденциальности сайта
Авторизация
Создать тикет
Отправляя форму Вы автоматически подтверждаете, что ознакомились и принимаете Политику конфиденциальности сайта
Свяжитесь с нами
Отправляя форму Вы автоматически подтверждаете, что ознакомились и принимаете Политику конфиденциальности сайта
Сообщение отправлено!
Ваше сообщение получено. Наш менеджер свяжется с вами в ближайшие рабочие часы
Проверка DNS валидации
Скачать файл валидации
Для валидации домена разместите скачанный текстовый файл в указанную директорию на Вашем сервере:
Выберите подходящий вариант

К сожалению, выбранный сертификат от данного центра сертификации не может быть выдан. Так как ЦС приостановил выпуск новых/продление заказов для доменов в зоне .ru, .рф, .by, .su, .moscow и для сертификатов с OV, EV проверкой, где фигурирует компания из России.

Пожалуйста рассмотрите возможность выпуска сертификатов от AlphaSSL или Globalsign.