Контакты
Подписка 2024

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

Андрей Никитин, 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

Обеспечение кибербезопасности.
Защита АСУ ТП. Безопасность КИИ
Конференция | 28 июня 2024

Жми для участия
Обзоры. Спец.проекты. Исследования
Участвуйте в обзорах / исследованиях проекта "Информационная безопасность"!
Станьте автором журнала!
Статьи по той же темеСтатьи по той же теме

  • Управление уязвимостями при разработке ОС Astra Linux
    Владимир Тележников, директор департамента научных исследований “Группы Астра”
    Управление уязвимостями играет ключевую роль в процессе разработки и эксплуатации любой операционной системы.
  • Protestware: как защитить код?
    Владимир Исабеков, ведущий инженер по информационной безопасности Swordfish Security
    Первым и важным шагом к снижению риска от вредоносного Protestware является стандартный инструментарий безопасной разработки.
  • Как организовать процесс безопасной разработки в 5 шагов
    Константин Саматов, Член Правления Ассоциации руководителей службы информационной безопасности
    Разберем значение процесса РБПО в организации, его создание, сложности и пути их преодоления.
  • Сертификация СЗИ – курс на РБПО
    Дмитрий Пономарев, технический директор ООО НТЦ “Фобос-НТ”, сотрудник ИСП РАН
    На рубеже 2023–2024 гг. положение разительно отличается от картины пятитилетней давности. Практики РБПО требуются повсеместно, их выполнение зачастую является одним из базовых пунктов контракта.
  • Какое образование нужно для SDL, и где искать кадры?
    От обзора важных компетенций до практических советов по найму и обучению, - эксперты сообщества SDL помогут разобраться в этой важной теме.
  • Как уговорить финансового директора на вложения в безопасную разработку?
    Финансовый директор иногда может быть скептически настроен к затратам на безопасность разработки. Как же подобрать аргументы для обоснования необходимости вложений?

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

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

КАЛЕНДАРЬ МЕРОПРИЯТИЙ 2024
ПОСЕТИТЬ МЕРОПРИЯТИЯ
ВЫСТУПИТЬ НА КОНФЕРЕНЦИЯХ
СТАТЬ АВТОРОМ
Linux
23 мая. Инструменты миграции на защищенный Linux
Участвуйте!

More...
Обзоры. Исследования. Спец.проекты
Обзоры и исследования проекта "Информационная безопасность"
Жми, чтобы участвовать