DevSecOps: почему безопасность должна быть в центре DevOps

Опубликовано: 5 Марта, 2023
DevSecOps: почему безопасность должна быть в центре DevOps

DevOps становится популярной методологией для быстрого создания приложений. Но быстро не значит более безопасно. Введите DevSecOps.

Много говорят о том, что безопасность должна быть неотъемлемой частью любого проекта с самого начала. DevOps в целом растет на предприятиях, и Gartner сообщает, что сейчас DevOps используют более 50% предприятий. С растущим уровнем принятия, когда команды разработчиков и эксплуатационные группы работают вместе над более частыми и эффективными выпусками, на самом деле не имеет смысла оставлять безопасность на потом. С DevSecOps группы безопасности теперь работают в сотрудничестве со всеми остальными, а не как отдельная организация, что в некоторых случаях может быть основной проблемой.

Превратить DevOps в DevSecOps не так просто, как добавить группу безопасности. Это влечет за собой добавление безопасности как часть каждой команды и процесса. Когда безопасность функционирует как внешний объект, недостатком является то, что к моменту обнаружения угрозы безопасности все уже выполнили свою работу, а из-за необходимости уложиться в сроки внесение исправлений предпочтительнее необходимости переписывать тысячи строк кода. Когда безопасность является неотъемлемой частью процесса с самого первого шага, любые уязвимости могут быть устранены, как только они будут обнаружены в ходе рабочего процесса.

Автоматизация безопасности везде

Изображение 655
Flickr / Мэтт Мур

Команды DevOps любят автоматизацию, и это видно по быстрому росту бессерверных вычислений на предприятии. DevOps — это гибкость и свобода, возникающие в результате устранения бюрократической волокиты и бумажной работы, которые отделяют два отдела от работы как единого сплоченного подразделения. С ростом киберугроз и продвинутых DDoS-атак, подобных тем, которые мы наблюдали в прошлом году, предприятия теперь работают над тем, чтобы включить безопасность в состав этой сплоченной функциональной единицы, а не архаичный процесс отказа от выпуска в команде безопасности. Тот факт, что безопасность еще не является неотъемлемой частью процессов DevOps, довольно удивителен, поскольку нарушение безопасности — это худшее, что может случиться с вашим совершенно новым приложением.

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

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

Облако важнее безопасности

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

Когда вы думаете о DevOps и о том, как он включает в себя непрерывную интеграцию и доставку, DevSecOps, по сути, представляет собой непрерывный мониторинг, и облако — отличное место для этого. Визуализация — один из самых важных элементов мониторинга, а инструменты панели мониторинга, такие как Kibana и Grafana, позволяют визуализировать важные показатели и даже делать прогнозы. AWS интегрировала свой сервис мониторинга CloudWatch со всеми другими сервисами, а также возможность интегрировать внешний сервис мониторинга для расширенной прогнозной аналитики.

Выборка инструментов DevSecOps

SumoLogic — это один из инструментов, который можно интегрировать с AWS CloudWatch. Он использует машинно-генерируемые большие данные для проведения ИТ-анализа в режиме реального времени. Облачный сервис компании предоставляет клиентам интерактивную аналитику в режиме реального времени в беспрецедентном масштабе в петабайтах. В отличие от дорогих локальных решений Sumo Logic имеет низкую совокупную стоимость владения, может быть развернуто мгновенно, эластично масштабируется и не требует обслуживания.

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

PagerDuty — это платформа для разрешения инцидентов с API, которую можно интегрировать с множеством других инструментов. Помимо автоматизации процесса реагирования на инциденты, клиенты также могут создавать настраиваемые отчеты и информационные панели, а также создавать страницы состояния, чтобы клиенты и внутренние заинтересованные стороны знали об инцидентах. PhoneDuty — это веб-приложение, которое запрашивает у PagerDuty дежурного инженера и переадресовывает ему входящий вызов.

Slack — это программное обеспечение для совместной работы, которое позволяет командам работать вместе и оставаться на одной странице. Это позволяет разным командам не только использовать одни и те же инструменты, но и вести беседы в реальном времени и в одном и том же пространстве. Когда вы добавляете в смесь интеллектуального чат-бота, который может обращаться к службам, API или серверам, вы теперь находитесь на территории ChatOps, которая заключается в использовании чата вашей команды для управления вашей технической инфраструктурой. Термин ChatOps был придуман GitHub в 2013 году с созданием Hubot, своего чат-бота с открытым исходным кодом, помогающего в практике DevOps. Hubot — это настраиваемый чат-бот, который может отправлять код, действовать как интерфейс к серверу CI и объявлять о развертывании в окне чата. Pager Huety — еще один забавный инструмент, который позволяет настроить лампочку так, чтобы она вспыхивала всякий раз, когда вам назначается открытое происшествие.

Будущее DevOps

Сегодня только 20% инициатив DevOps включают безопасность на протяжении всего цикла разработки. Это число удивительно, учитывая, насколько важна безопасность в многопользовательской среде. Одно нарушение безопасности может затронуть сотни тысяч клиентов. В этом году гораздо больше команд DevOps интегрируют безопасность в свои операции с помощью современных инструментов управления инцидентами, таких как Slack и PagerDuty. Переход от DevOps к DevSecOps будет больше связан с развитием групп безопасности и интеграцией их методов до уровня, когда каждый будет владеть безопасностью и соответствием требованиям. Безопасность также заключается в том, что нужные люди доступны в нужное время, и важны автоматические правила, которые могут уведомить их, как только произойдет нарушение.

DevSecOps — это логический следующий шаг после DevOps, и любой, кто думает, что безопасность не является важной частью всего процесса разработки, вероятно, получит тревожный звонок — буквально — посреди ночи в виде сообщения о безопасности. нарушение.