Что такое безопасная разработка?
Методология безопасной разработки ПО (SSDLC) – относительно новое явление на российском рынке, несмотря на то, что появилась она еще 15 лет назад. Процесс внедрения SSDLC – довольно хлопотное и затратное занятие, успешных кейсов в России пока не так много. Однако результат внедрения оправдывает все ожидания и инвестиции.
Классическая концепция Software Development Life Cycle (SDLC) состоит из следующих шести шагов:
- Анализ требований.
- Планирование.
- Проектирование и дизайн.
- Разработка ПО.
- Тестирование.
- Развертывание нового продукта.
Десятки российских IT-компаний занимается разработкой своих продуктов. Подходы разные, но суть одна: программисты пишут тысячи, сотни тысяч и миллионы строк кода. При этом, по статистике, каждые 1000 строк содержат 50–60 критичных дефектов. У зрелых команд показатель 10–15 / 1000 строк. Тут важно разграничить два понятия - качественный код и безопасный код.
Разберем на самом примитивном примере: вы создаете сервис, в котором нужно привязать к аккаунту дебетовую банковскую карту клиента. Задача перед разработчиком стоит такая: нужно, чтобы можно было авторизоваться, а потом внести “номер карты” и трехзначный код с оборота.
Разработчик, получив задачу, реализует нужную форму и запрос к базе данных, в котором проверяется соответствие номера карты и ее CVV. Программный код качественный, все тесты пройдены, ошибок нет.
Однако при развертывании приложения выясняется, что в нем есть уязвимости, и злоумышленник может получить доступ к данным.
Элементарный вариант: подобрать трехзначный код, если количество попыток ввода данных никак не ограничивается. И таких сценариев может быть несколько. Код качественный, так как система работает, но небезопасный, так как в систему легко проникнуть извне.
Безопасная разработка или подход DevSecOps, который подразумевает внедрение безопасности на каждом этапе разработки нового ПО. Его задача - не устранять возможные уязвимости готового приложения, а не допустить их возникновения. Приведем простую аналогию: подушки безопасности добавляют в момент сборки автомобиля, а не после тестирования или даже аварии. На каждом этапе разработки у специалистов свои “подушки”.
Вот так выглядит безопасность в контексте разработки ПО - фиолетовая лента SEC, которая опоясывает DEVelopment & OPerationS.
Зачем бизнесу DevSecOps
Для бизнеса есть немаловажный нюанс: безопасная разработка намного дороже. Конечно, компонент SEC добавляет стоимости проекта, но устранение уязвимостей на этапе проектирования в любом случае дешевле, чем после запуска приложение, и тем более, - последствий возможного взлома.
Нередко бывает, что новое ПО нужно уже “вчера”, особенно в условиях санкций. Быстро растут бизнес-системы, разработка также ускоряется. Внедрение безопасности тоже должно работать на опережение. Если ловить ошибки на этапе проектирования продукта и исправлять, то будут сокращены затраты на исправление цепочки дефектов после выпуска приложения. Клиент хочет продукт через месяц. Если на финальной стадии выявляется уязвимость, то исправление может занять еще месяц. В результате срыв сроков, удар по репутации.
Что если у клиента есть только идея продукта, а не полноценное техническое задание?
В компании “Максофт” безопасной разработкой занимается целый отдел специалистов. При этом для клиента последовательность работ будет той же самой, все этапы концепции Software Development Life Cycle (SDLC) останутся, но к каждому добавится элемент безопасной разработки, о чем можно будет прочитать в отчете или спросить лично у менеджера проекта. Мы поможем формализовать ваши требования и превратим их в техническое задание. Вы просто расскажете, какой процесс хотели бы модернизировать или какую услугу усовершенствовать, а эксперт уже предложит варианты решения с помощью нового ПО.
Важно, что клиент получает подробный план действий при разработке ПО и регулярные отчеты: что и когда сделано. Для работы над приложением выделяется команда с менеджером, который всегда на связи. После развертывания и тестирования мы передаем заказчику права на интеллектуальную собственность.
“Максофт” не бросает клиентов один на один с новым софтом: в работы входит гарантийная поддержка в течение 6 месяцев и сопровождение разработанного продукта.Уже есть идеи будущего приложения? Расскажите нам о них по телефону:
+7 (8412) 34-34-34 или в письме [email protected]