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

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

Андрей Рыжкин, Алексей Клинов, 25/07/19


Андрей Рыжкин и Алексей Клинов из AGIMA  

РыжкинРклинов

 

 

 


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

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

  • Персональные данные сотрудников и клиентов.
  • Данные доступа в банк-клиент.
  • Данные о клиентах компании.
  • Производственные чертежи.
  • Проектная документация.

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

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

К сожалению, секьюрити-анализ все еще редкость для заказной разработки. Причина в уникальности проектов.  Все они слишком разные, и у каждого свои потребности. Это влияет на стоимость анализа. Учитывая низкую маржинальность бизнеса, запустить процесс на поток в заказной разработке не всегда возможно. И все же, процессом лучше не пренебрегать. 

Как не допустить кражу данных из приложения? 

Только на WAF (файрвол) в плане защиты полагаться нельзя:  может не отработать правило, использоваться некорректная конфигурация или устаревшие сигнатуры. Только комплекс мер: применение vulnerability-scanner, pen-test, WAF и DDos Protection обеспечивает безопасность данных приложения. 

Далее, когда приложение находится в стадии пред-прода, имеет смысл воспользоваться специализированными сканерами, анализаторами кода и провести pen-test. Это позволит отыскать уязвимости, которые не удалось выявить, анализируя код в процессе разработки. 

Как организовать процесс тестирования на уязвимости? 

Аудит информационной безопасности нужно проводить еще на стадии захода нового проекта в разработку.  При этом важно анализировать технический долг продукта — смотреть на баги и уязвимости. После этого нужно составить роадмап по устранению уязвимостей. Иногда всё удается устранить на первом этапе. Если же проблем много, бороться с ними придется в процессе дальнейшей разработки. Сначала устранять критические, а затем — менее опасные.  

Существует несколько подходов к анализу кода:

  • Полная интеграция в процессе разработки CI/CD.
  • Ревизия безопасности на контрольных точках.
  • Ситуационная или разовая ревизия безопасности.
  • Учет критериев безопасности и оценка рисков.

Идеальный вариант — интегрировать секьюрити-анализ в ежедневный ревью кода. Такой подход особенно актуален для проектов, которые один и тот же разработчик развивает длительное время.

Второй вариант — ревизия безопасности в контрольных точках. Этот метод подходит, если у продукта редкие релизы.

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

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

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

Вместо заключения

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

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

Темы:КибербезопасностьМнения экспертовМобильное приложениеБезопасная разработка

Форум ITSEC 2024:
информационная и
кибербезопасность России
Москва | 15-16 октября 2024

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

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

Хотите сотрудничать?

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

Печатное издание
Интернет-портал
ВЫСТУПИТЬ НА КОНФЕРЕНЦИЯХ
СТАТЬ АВТОРОМ
Linux
15 октября | Форум ITSEC Доверенные решения для защиты российских Linux и миграции
Участвуйте!

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

More...