DevSecOps — как кофе три в одном ☕️
Про DevOps все слышали. Однако этот подход в разработке ПО может пропустить критическую уязвимость в самом начале.
Когда цена ошибки на ранних этапах слишком высока, на помощь приходит третий элемент «Sec».
Рассказываем про
DevSecOps. Готовы? Начинаем с объяснения термина:
DevSecOps
– это подход, объединяющий разработку ПО, безопасность и эксплуатацию в единый процесс.
Зачем нужен DevSecOps:➡️ Обнаружить уязвимости на ранних этапах;
➡️ Снизить риски утечек данных и кибератак;
➡️ Сократить срок выхода на рынок;
➡️ Сэкономить нервы (зачеркнуто) бюджет.
DevSecOps или DevOps:🔵
DevOps заточен на автоматизацию, CI/CD и скорость доставки.
Его задача – сделать так, чтобы написанный код собрался и оказался на сервере пользователя за 10 минут. Но слепой DevOps – это конвейер, который везёт всё, включая ошибки, без проверки.
🔵
DevSecOps берет этот скоростной конвейер и расставляет на нём автоматические фильтры.
Он не отменяет CI/CD и не замедляет процесс, а добавляет в него фильтры. Это помогает выявлять критические уязвимости от этапа к этапу.
Ключевые принципы DevSecOps:➡️
Совместная ответственность. Виноват не только безопасник. В DevSecOps ответственность общая, а поиск уязвимостей сдвигается на самый ранний этап.
➡️
Security by design (безопасность по умолчанию). Это значит, что безопасность закладывается в саму архитектуру.
➡️
Тотальная автоматизация. По возможности, проверка должна быть автоматизирована и встроена в CI/CD пайплайн.
➡️
Непрерывный мониторинг. Хакеры не исчезнут после деплоя.
Какие навыки нужны DevSecOps-специалисту?➡️ От мира Ops – глубокое понимание инфраструктуры. Инженер обязан виртуозно владеть CI/CD, понимать, как пакуются и оркестрируются контейнеры и уметь разворачивать сервера кодом. Без этого он не сможет встроить сканеры в пайплайн.
➡️ От мира Sec – знание того, как ломают софт. Это понимание вектора атак, основ криптографии, работы сетей. Плюс внедрение систем управления секретами, чтобы пароли не были в открытом доступе.
➡️ От мира Dev – умение читать чужой код. Инженер должен предметно объяснить разработчику, почему кусок кода небезопасный и как его переписать.
#ЛАНИТ_учит