Как внедрить процессы безопасной разработки: кейс СИГМЫ
Информационная безопасность всегда была в центре нашего внимания, и 2,5 года назад мы решили перейти на новый уровень, внедрив процесс безопасной разработки. Самое время подводить первые итоги.
Разработки СИГМЫ внедряются в крупных предприятиях, поэтому для нас очень важно развивать культуру DevSecOps на основе отечественных решений. Сейчас в проектах по цифровизации энергетической отрасли наша компания использует решение Solar appScreener. По итогам внедрения процесса безопасной разработки срок обновления ПО и разработки новых программных продуктов значительно сократился.
Реализация проекта
На старте проекта у нас не было никаких регламентов и инструментов, а это означало лишь одно — внедрять процессы безопасной разработки придется с нуля. Для этой задачи мы сформировали большую команду специалистов, провели консалтинг, составили регламенты. И только после всех подготовительных работ проектная команда приступила к тестированию и сравнению различных решений.
Сначала был составлен перечень необходимых инструментов, который был разделен на категории, а в каждой категории определен наиболее подходящий продукт. Первым инструментом, который мы внедрили, стал модуль SAST продукта Solar appScreener. Поскольку спектр разрабатываемого ПО в СИГМЕ достаточно обширен, ключевым фактором при выборе решения для нас стала поддержка модулем 36 языков программирования. Также важным аспектом была и возможность анализировать код 1С, так как СИГМА активно использует эту платформу в своих решениях.
Наша команда сравнивала продукт с open source и другими платными решениями. Solar appScreener оказался лучшим по выделенным критериям. Мы интегрировали продукт с GitLab, начав с одного-двух проектов. Затем настроили интеграцию с Jira, но в итоге приняли решение перейти на оркестратор, и Solar appScreener стал инструментом статического анализа. Все остальные интеграции, управление уязвимостями, запуск сканирований выполняются через оркестратор. Сам инструмент тесно интегрирован во все процессы безопасной разработки и играет одну из ключевых ролей. Кроме того, мы использовали и другие методы анализа, включая анализ компонентов, анализ контейнеров, DAST-анализ, фаззинг-тестирование. Система построена на решениях различных вендоров, чтобы охватить все аспекты безопасной разработки.
Защищенность приложений еще на этапе разработки снижает риски выявления уязвимостей в ПО после выхода продуктов на рынок, особенно это актуально, если ИТ-команды используют компоненты из open source-библиотек. Поэтому в ИТ-сообществе сформирован запрос на платформы для комплексного анализа кода, включая инструменты SAST, DAST, SCA и SCS, доступные в одном интерфейсе. Подобные решения также позволяют оптимизировать ресурсы команды ИБ и разработчиков благодаря автоматизации анализа кода.
Несмотря на появление дополнительных этапов проверки безопасности, мы можем отметить, что фактическое время вывода продуктов на рынок (time-to-market) сократилось, это связано с тем, что приложения проходят меньше итераций устранения уязвимостей. Сейчас команда безопасной разработки СИГМЫ использует Solar appScreener для анализа 16 групп проектов, код для которых пишется более чем на 10 языках программирования.
Планы и перспективы
Внедрение практики безопасной разработки заняло примерно полгода, но мы не останавливаемся на достигнутых результатах и продолжаем совершенствовать процессы: оптимизируем настройки внедренных инструментов, дорабатываем правила, автоматизируем рутинную работу экспертов, расширяем программу внутреннего обучения для разработчиков.
Помимо этого, мы активно работаем над внедрением дополнительных механизмов, которые позволят минимизировать количество ложно позитивных срабатываний. В наших планах развитие и других практик, например, безопасность сред контейнеризации.
«Компаниям, которые только начинают свой путь к безопасной разработке, я бы рекомендовал начать с подбора лидеров и опытных экспертов по безопасной разработке, которые смогут выстроить процесс. Сначала люди, потом процессы, потом инструменты. Важно также наладить взаимодействие с командами разработки – это самый сложный и болезненный для всех этап, но в результате у вас появится команда, создающая не только функциональные, но и безопасные продукты», — отметил Александр Евтеев, директор департамента информационной безопасности СИГМЫ.
Написать комментарий