По нашим данным, более четверти пользователей Yandex Cloud используют облачную платформу для разработки. Это понятно: в облаке легко развернуть всё необходимое для автоматизации разработки, тестирования, доставки и стабильной работы приложения.
А как быть организациям, которым нужно не только обеспечить защиту, но и контролировать соблюдение формальных требований безопасности? Яркий пример — финтех-приложения. Они должны соответствовать 152-ФЗ, ГОСТ 57580, PCI DSS и другим стандартам. Это и раньше было непросто, а сейчас, когда жизненный цикл приложений настолько сократился, что нет времени на аудиты и контроль соответствия, стало ещё сложнее создавать продукты, которые отвечали бы всем требованиям.
В этой статье поговорим о том, как создавать продукты, которые будут соответствовать требованиям безопасности в условиях автоматизации разработки и непрерывной доставки приложений, и при чём здесь методология DevSecOps.
Всё больше продуктовых команд выбирают облако: оно позволяет ускорить выход приложения в промышленную эксплуатацию и, соответственно, на рынок. Облачные решения дают большую свободу разработчику, тестировщику и DevOps-инженеру. Команды получают требуемый уровень абстракции и переносят в облако основные компетенции, связанные с эксплуатацией инфраструктуры. Им больше не нужно думать, как реализовывать систему виртуализации, оркестрировать контейнеры и организовывать микросервисную архитектуру приложения. Для этого в облаке есть готовые сервисы.
Чтобы написать и вывести на рынок программное обеспечение, разработчикам и системным администраторам нужно сотрудничать со специалистами по информационной безопасности (ИБ). Автоматизация разработки приложений может включать в себя учёт рисков безопасности, анализ кода и конфигураций, контроль безопасности и проверку на соответствие требованиям законодательства. Это особенно важно для финтех-приложений.
Почему безопасностью нужно заняться как можно раньше? Как правило, сначала разработчики создают версию приложения, а затем тестировщики и специалисты по ИБ анализируют её защищённость. Но сейчас команды разработки применяют методологию непрерывной интеграции и развёртывания кода (CI/CD), и длительные задержки на проверку ИБ становятся недопустимыми. А замена монолитных архитектур микросервисными сделала мониторинг угроз значительно сложнее. Вот почему специалисты по ИБ нужны на всех этапах разработки.
Всё это привело к следующему этапу развития DevOps — DevSecOps — и включению контролей безопасности на более ранних этапах. Эта концепция называется Shift-left. Методология DevSecOps меняет взгляд на роль подразделения ИБ в обеспечении качества и надёжности кода. Она повышает прозрачность процесса разработки, делая оценку угроз безопасности результативной за счёт использования методов автоматического выявления уязвимостей и автоматизации процесса их исправления.
Ценность DevSecOps для бизнеса заключается не только в раннем подключении смежных специалистов к обеспечению безопасности. Стоимость исправления ошибки или уязвимости в уже собранном приложении может вырасти в сто раз по сравнению с ещё не собранным. Гораздо дешевле найти и исправить ошибку до того, как функция будет внедрена в рабочую среду.
В облаках есть сервисы, которые помогают автоматизировать процессы и обеспечивать контроль безопасности на всех этапах, будь то разработка кода, сборка образа и развёртывание контейнеров. Например, в управляемых GitLab или Kubernetes® есть большое количество инструментов и подходов к обеспечению и контролю безопасности.