Оглавление

1. Теоретическая часть

1.1 Введение

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

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

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

Успешная реализация DevSecOps включает в себя следующие компоненты:

1.1.1 Shift-left

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

Для достижения максимальной эффективности проверки безопасности должны выполняться как можно раньше. Визуально это можно представить переносом проверок в левую сторону пайплайна. Эта концепция называется shift-left и широко обсуждается специалистами по безопасности.

1.1.2 Структура DevSecOps-пайплайна

Здесь изображены основные этапы проверки безопасности

Здесь изображены основные этапы проверки безопасности

  1. Pre-commit – проверка безопасности исходного кода до его коммита разработчиком в систему контроля версий. Эта проверка позволяет обнаружить незашифрованную конфиденциальную информацию, такую как пароли или API-ключи.