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

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

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

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

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

Что мы делаем

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

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

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

Уязвимости

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

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

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

Утечки

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

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

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

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

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

Результат

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

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


Реализованные проекты
Исследование уровня защищённости мобильного приложения по продаже интерактивного контента
Заказчик — разработчик федеральной платформы по распространению интерактивного контента для российских учебных заведений. Заказчику потребовалось исследовать мобильное приложение для Android, iOS и Windows на предмет рисков, связанных с кражей и неправомерным использованием интеллектуальной собственности.
Аудит программного обеспечения для «Эльдорадо»
Заказчик — ООО «Эльдорадо», один из крупнейших розничных продавцов электроники и бытовой техники в России.Задачей исследователей было проверить текущий уровень защищённости ПО.
Проверка офиса на наличие неавторизованных Wi-Fi точек доступа
Заказчик — крупная IT-компания. С помощью программно-аппаратной связки ноутбука, Wi-Fi-антенны и специального ПО мы последовательно обошли все помещения офиса заказчика, построили карту распределения сигнала и выявили все его источники.