Довольно много дебатов ведется относительно того, какой термин более правилен: DevSecOps, SecDevOps, или же вообще "sec" часть этого термина является лишней. В компании GitLab мы выработали довольно четкую точку зрения: принципы DevSecOps позиционируют безопасность как центровой концепт разработки и цикла DevOps, где им собственно и самое место. Мы считаем, что вопросы безопасности должны оставаться прозрачной и как можно более стандартизированной частью процесса, они не должны быть спрятаны или где-то глубоко захоронены. Автоматизация процессов и политик позволяет вооружить как разработчиков, так и профессионалов ИБ, нужной им информацией для выполнения своих обязанностей.
В GitLab мы активно продолжаем строить DevSecOps платформу в виде комплексного и безопасного программного решения, которое помогает планировать, реализовывать, разворачивать, защищать и поддерживать современные приложения и необходимую для них инфраструктуру (далеко не всем известно, что в разработку компонентов ИБ GitLab инвестирует сегодня значительную часть инженерных усилий). GitLab уже сегодня обеспечивает прозрачность всего цикла разработки и целый набор элементов контроля необходимых для защиты целостности "фабрики программного обеспечения" и создаваемых ею артефактов.
GitLab уже сегодня является катализатором изменений во всем, что касается эволюции DevSecOps в сравнении с более традиционными инструментами тестированием безопасности приложений. Давайте разберемся, из чего же собственно состоит эта эволюция.
Тестирование безопасности
Традиционные инструменты: Тестирование выполняется специалистами ИБ с использованием собственных инструментов, как правило, в конце цикла разработки.
Новые возможности GitLab: Тестирование автоматизировано за счет конвейеров Continuous Integration, а результаты становятся доступны разработчику до завершения текущей итерации.
Результаты тестирования фокусируются на уязвимостях появившихся только в контексте текущей итерации, делая анализ и решение возникших недостатков предельно простым для разработчика, создавшего их. Минимизирует усилия по ведению бэклога рисков и уязвимостей, а также технического долга, вовлечению дополнительных специалистов
Непрерывная интеграция и безопасность
Традиционные инструменты: Команды выполняемые CI конвейерами используются для вызова внешних сканеров безопасности и передачи результатов обратно в конвейер. Однако оба эти инструмента остаются разобщенными, функционируют сами по себе. Зачасти это требует дополнительной кастомной интеграции, которая также требует постоянной поддержки. Лицензии на инструменты CI и сканеры также отдельны друг от друга, что усложняет процесс управления ими, особенно если они используют разные ценовые политики (количество пользователей, приложений, строк кода и так далее).
Новые возможности GitLab: Возможности объединены в один инструмент, не требуют дорогостоящей интеграции и обслуживания; требуют только одной лицензии.
Устранение уязвимостей
Традиционные инструменты: Профессионалам ИБ приходится постоянно отслеживать статус устранения уязвимостей, решения проблем и снижения рисков. Специалисты по безопасности должны постоянно отслеживать статус устранения критических уязвимостей (рисков). Результаты сканирования обычно собраны в одном инструменте, а усилия разработчиков по исправлению ситуации находятся в другом, что приводит к постоянным трениям и неэффективному общению между двумя командами.
Новые возможности GitLab: Используя единый инструмент, специалисты по безопасности могут видеть статус исправления определенных уязвимостей в общей панели инструментов в знакомом контексте. И, когда команды используют инструменты планирования задач GitLab, обе команды могут сотрудничать для совместной работы над исправлением ошибок.
С технической стороны вопроса, GitLab был одним из первых вендоров собравших в одном инструменте большое количество сканеров:
SAST
DAST
Сканирование зависимостей
Сканирование контейнеров
Secrets Detection
Fuzz testing
Сканирование и анализ лицензий
Отображение всех используемых библиотек, гибкие отчеты о всех обнаруженных проблемах и уязвимостях тоже являются стандартной частью GitLab. Замещение множества специализированных инструментов единым решением остается, пожалуй, на сегодня для нас важнейшей целью.
Благодаря всем этим усилиям и полученным результатам, GitLab был в 2021 году включен в Gartner Magic Quadrant for Application Security Testing за полноту планов и способности их воплощения. Мы считаем, что это только подтверждает нашу веру в то, что будущее DevSecOps - в вовлечении разработчиков в процессы ИБ и вооружении их адекватными инструментами.
Надо отметить также, что мы не останавливаемся на достигнутом и продолжаем активно инвестировать в улучшение компонентов продукта, связанных с понижением рисков и повышением уровня безопасность программных продуктов. Вот только некоторые улучшения, которые были добавлены в GitLab за последние 6 месяцев (с момента, когда мы были включены в квадрант Gartner):
Конвейеры соответствия стандартам с использованием Compliance Frameworks,
Возможности массового изменения статуса уязвимостей, а также другие улучшения связанные с работой по управлению рисков,
Режим Администратора требующий дополнительной аутентификации для выполнения администраторских функций,
Semgrep для кастомных правил анализа уязвимостей,
оповещения по электронной почте об истечении срока действия ключей,
Новый поисковый робот на основе браузера для DAST со значительно большим охватом
После множества последних атак (например, SolarWinds и последующей атаки на газопровод в США), внимание специалистов становится все более чаще привлекается к вопросам обеспечения безопасности приложений.
И у GitLab есть множество уникальных возможностей для решения этих проблем. Настоящая методология DevSecOps представляет собой новую эру безопасности программного обеспечения с гораздо более широкими возможностями, чем традиционно знакомые нам инструменты. Мы считаем, что GitLab привел рынок к этой эволюции, и будем продолжать двигаться в этом направлении.
Если же вам интересно узнать на практике, как работают решения ИБ в контекста GitLab, как мы на практике реализуем работу с уязвимостями и автоматизируем процессы их обнаружения, а также обсудить нашу дорожную карту, приглашаем посеть GitLab Security Virtual Workshop (на английском языке) 27 октября. Регистрация уже открыта!
Protos
Это реально круто