Контакты
Подписка 2023
МЕНЮ
Контакты
Подписка

Зачем и как решать проблемы безопасности мобильных приложений?

Андрей Никитин, 23/01/23

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

Автор: Андрей Никитин, директор по продуктовому маркетингу Стингрей Технолоджис (ГК Swordfish Security)

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

В идеале анализ безопасности – это комбинация ручного тестирования на проникновение (penetration testing) и автоматизированного анализа в течение цикла разработки. Такой подход обеспечивает наибольший охват возможных уязвимостей приложения.

Почему важна безопасность мобильных приложений?

Количество мобильных приложений в мире быстро растет.

Ежемесячно только в Google Play появляется около 100 тыс. новых разработок, а по состоянию на I квартал 2022 г. там было представлено 3,48 млн приложений для Android [1]. Для сравнения: Apple App Store предлагает 2,22 млн приложений для iOS. Количество пользователей этих продуктов стремительно растет: еще в 2016 г. мобильный трафик в мире превысил веб-трафик и с тех пор вырос на 58% [2].

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

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

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

Исследования показывают, что 50% мобильных приложений имеют критические уязвимости [3].

Риски мобильной безопасности растут

Компании используют достаточно продвинутые инструменты и практики для проверок своих веб-приложений на защищенность. Но если говорить о мобильном ПО, то здесь все ограничивается периодическими ручными проверками. Такая ситуация сложилась из-за недостатка качественных инструментов для анализа безопасности и нехватки компетенций.

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

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

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

В ИТ-индустрии были разработаны подходы к обеспечению защищенности мобильных приложений – практики MAST (Mobile Application Security Testing), которые стали решением многих проблем с безопасностью приложений.

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

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

API ST – анализ API приложения. Анализ пересылаемых сообщений между приложением и его сервером на предмет наличия чувствительной информации.

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

Регулярное использование практик MAST для анализа защищенности поможет обеспечить максимальный охват уязвимостей мобильных приложений.

Помимо практик MAST в индустрии приняты стандарты безопасности, такие как OWASP Mobile Top 10, PCI DSS, CWE/SANS Top 25 (международные), ОУД4, ГОСТ 57580 (в России). Проверка на соответствие этим стандартам позволяет избегать базовых ошибок в безопасности при разработке приложений.

Как повысить безопасность мобильных приложений?

Пять базовых принципов, которые помогут повысить безопасность мобильной экосистемы компании.

  1. Регулярный автоматизированный анализ мобильных приложений на уязвимости в соответствии с практиками MAST. Для этого можно использовать специальные решения, позволяющие встроить автоматические проверки в цикл разработки DevOps.
  2. Регулярная проверка мобильных приложений на соответствие индустриальным стандартам информационной безопасности ОУД4, OWASP Mobile Top 10, PCI DSS, CWE/SANS Top 25.
  3. Периодические тесты на проникновение (penetration tests) для ручной внешней проверки программ.
  4. Регулярные проверки выпущенных мобильных приложений для выявления недавно описанных уязвимостей, в том числе в сторонних компонентах.
  5. Развитие компетенций команды для создания безопасного кода на самых ранних стадиях разработки мобильных приложений. На это ориентированы специальные программы обучения разработчиков [5].

  1. “Количество приложений, доступных в ведущих магазинах приложений по состоянию на 2022 г." https://www.statista.com/statistics/276623/number-of-apps-available-in-leading-app-stores/
  2. “Какой процент интернет-трафика приходится на мобильный?"
    https://www.oberlo.com/statistics/mobile-internet-traffic
  3. “Исследования показывают, что 50% приложений имеют уязвимости в системе безопасности" https://www.securitymagazine.com/articles/94639-research-reveals-50-of-apps-have-security-vulnerabilities
  4. Рекомендации по безопасной разработке приложений https://help.stingray-mobile.ru/rg/
  5. "Обучение процессам безопасной разработки" https://edu.swordfishsecurity.ru/ 
Темы:Безопасная разработкаМобильные приложенияЖурнал "Информационная безопасность" №3, 2022
Статьи по той же темеСтатьи по той же теме

Хотите участвовать?

Выберите вариант!

КАЛЕНДАРЬ МЕРОПРИЯТИЙ 2022
ПОСЕТИТЬ МЕРОПРИЯТИЯ
ВЫСТУПИТЬ НА КОНФЕРЕНЦИЯХ
СТАТЬ АВТОРОМ

More...