Анализ защищённости мобильных приложений

В совместном исследовании Ponemon Institute и IBM, проведённом в 2016 году, приняли участие 600 ИБ-специалистов из разных стран мира. Шесть из десяти респондентов сказали, что их организации были взломаны из-за небезопасных мобильных приложений за последние 12 месяцев. Исследование также показало, что менее 30% всех мобильных приложений тестируются на уязвимости.

По данным Checkmarx и AppSec Labs на ноябрь 2015 года 38% всех найденных уязвимостей в мобильных приложениях считаются критическими или серьёзными. 50% уязвимостей либо связаны с утечками личной или чувствительной информации, либо с аутентификацией и авторизацией.

Компания Codeproof Technologies, занимающаяся разработкой MDM-решений, также подтверждает эту статистику:

Исследователи «Перспективного мониторинга» уже 5 лет анализируют защищённость мобильных приложений на платформах Android, iOS и Windows. Мы находим уязвимости в разработанных заказчиком или в заказных приложениях и даём рекомендации, как их устранить.

Что мы делаем

Работы по анализу защищённости мобильных приложений делятся на 3 группы:

  1. Выявление уязвимостей клиентской и серверной частей приложения.
  2. Выявление возможностей для утечки данных.
  3. Выявление превышения полномочий, необходимых для функционирования, и ошибок бизнес-логики.

Мы пользуемся собственной методикой тестирования, основанной на рекомендациях вендоров, отраслевых стандартах безопасности, best practice и OWASP.

Уязвимости

Заказчик предоставляет нам исходный код и скомпилированное приложение, которое нужно проанализировать. Мы проводим статистический и динамический анализ кода, следим за доступом приложения к файловой системе, памяти устройства и ресурсам ОС. Если нужно — делаем реверс-инжиниринг приложения.

Если мы подозреваем, что серверная часть недостаточно защищена, то дополнительно её исследуем.

После этого найденные уязвимости классифицируются и ранжируются по степени критичности.

Утечки

Прежде всего, мы анализируем данные, проверяем оперативную память и временные файлы.

Распространённый канал утечек данных — передача по беспроводным сетям. В таких сетях атакующий может прослушивать трафик, несанкционированно подключаться к сервисам и нарушать их доступность. Мы проверяем надёжность криптографических методов защиты при хранении и передаче учётных данных и ключей шифрования, какие функции хеширования и как используются.

Подсказка: md5 — это очень плохо.

Превышение полномочий

Мы проверяем, насколько заявленный набор разрешений приложения соответствует фактическому, нужны ли заявленные разрешения для реализации тех функциональных возможностей, о которых говорилось в описании.

Результат

По результатам проверок мы составляем отчёт, в котором рекомендуем пути ликвидации выявленных уязвимостей и слабостей в приложении и серверной части. Мы перечисляем данные, которые некорректно защищаются приложением и библиотеками системы аналитики мобильных приложений.

Если нужно — поможем внедрить процедуры безопасной разработки программного обеспечения.