Что такое DevSecOps Complience Automation?
Автор статьи:
Музалевский Федор Александрович
Ведущий эксперт компьютерно-технического направленияКогда речь заходит о безопасной разработке, обычно вспоминают конвейер, сканеры кода и совсем не говорят о соответствии. В тоже время оценивать уровень зрелости DevSecOps крайне важно в каждом отдельно взятом случае и, обязательно, в динамике.
Ещё реже говорят о требования к безопасной разработке — и действительно, нормативно регулируются в нашей стране только разработка приложений финансового сектора (банковские, страховые и прочие), и разработка средств защиты информации, таких как антивирусы, средства предотвращения утечек и так далее.
Определение и практическое применение DevSecOps
Независимо от того, хотим мы оценить зрелость «для себя» или для регулятора, нам потребуется некая метрика, по которой может быть произведена такая оценка.
Кстати, помимо регуляторов, требования по безопасной разработке могут выдвигать заказчики по госконтрактам, головные организации холдинговых структур и так далее.
Метрики оценки безопасной разработки ПО
И тут возникает вопрос — что за метрики и как по ним оценивать? На первый вопрос ответ достаточно прост.
Есть два типа метрик — лучшие практики и принятые стандарты.
К лучшим практикам относятся такие подходы как:
- OWASP Secure Coding Practices
- RedHatInsight Secure Coding Practices
Стандарты: можно рассмотреть как ГОСТ/ISO 15408, так и отечественный ГОСТ 56939 (очередная редакция вступает в силу 20.12.2024).
В любом случае составляется таблица для оценки (с чек-листами Best Practice проще, с ГОСТами сложнее) процесса разработки и получаемого продукта.
К продукту, очевидно, относится также документация, а к процессу — компетенции программистов и иных участников команды разработки.
Вот так незамысловато выглядит результат прохождения одного из чек-листов прямо для включения сведений в readme вашего продукта:
Автоматизация: DevSecOps Complience Automation
Собирать чек-листы можно вручную, а можно воспользоваться классом решений, называемым DevSecOps Complience Automation.
Решение должно автоматизировать следующие действия:
- Заполнение чек-листов
- Хранение истории оценок
- Собирать и выдавать базу знаний
Казалось бы — обычная замена Excel. Но целый класс средств автоматизации не может делать «так мало».
Сам термин Complience намекает, что DevSecOps CA не только позволяет оценить, но и достичь желаемого соответствия.
Очевидно, что достижение соответствия будет, в основном, направлено на ГОСТы — ведь лучшие практики не «отяжелены» требованиями по документированию и построению процессов.
Однако как показывает многолетняя практика внедрения и аудита безопасной разработки — где лучшие практики внедрены полностью, там стандарты внедряются гораздо легче. Впрочем, справедливо и наоборот — когда команда разработки действует по стандартам — лучшие практики подтягиваются сами собой.
Итак, чем же может помочь автоматизация во внедрении безопасной разработки? В первую очередь организационно-распорядительной документацией. Шаблоны регламентов и инструкций или даже заданий по безопасности существенно сокращают время на обучение команды и внедрение механизмов DevSecOps.
Шаблоны могут быть в разной степени готовности, в зависимости от зрелости системы CA, однако, они должны быть.
Шаблоны для безопасной разработки в команде
Вторая помощь от системы автоматизации — шаблоны и описания процессов, которые должны выполнят участники команды разработки, чтобы эта разработка стала безопасной.
В этой части DevSecOps CA сродни CRM или BPM — системам.
В отправной точке (выпуск релиза, получение тикета по безопасности от пользователя или даже на стадии проектирования), система предлагает заготовку для различных участников команды с указанием, что и когда нужно сделать.
Куда дальше пойдут задания? В git, в календарь на мобильном телефоне или в систему управления проектами — вопрос конкретной реализации. Однако понимание того, какие действия и кому надо сделать, и автоматизация постановки задач — существенная помощь рассматриваемого класса систем.
Пример такого шаблона можно представить в виде таблицы:
Шаблон процесса при получении от пользователя заявки с уведомлением об уязвимости.
№ п/п | Действие | Ответственный | Время выполнения |
1 | Найти уязвимый код | Senior Developer | 2 часа |
2 | Внести исправления уязвимости | Developer | 6 часов |
3 | Протестировать исправления | Tester | 1 час |
4 | Сформировать патч обновлений | DevOps Engeneer | 1 час |
Разумеется роли в команде разработки могут быть разными, а сложность поиска и устранения отличаться от шаблона. Однако при дружелюбном интерфейсе и предварительной настройке выдаваемые шаблонные действия существенно сократят неразбериху в команде.
В итоге совокупность вышеперечисленных функций делает решения DevSecOps Complience Automation эффективными помощниками при внедрении безопасной разработки и оценки ее зрелости.
Подписывайтесь на канал ИТ. Право. Безопасность в Telegram
Задать вопрос эксперту
Связанные услуги
Наши кейсы по теме
Аудит процессов безопасной разработки программного обеспечения
Проведение аудита процессов безопасной разработки программного обеспечения. Выяснилось, что в этапах разработки ПО у заказчика присутствуют те, которые можно значительно улучшить в плане безопасности конечного продукта, а также повысилась осведомленность сотрудников благодаря прохождению обучения.