Выявление уязвимостей в программном обеспечении (ПО) — важная проблема в современной разработке. Злоумышленники становятся всё более активными, что увеличивает риски взлома и утечки данных. Это обуславливает необходимость построения цикла безопасной разработки ПО как комплексного подхода, обеспечивающего успешное решение проблем его качества и устойчивости к киберугрозам.
Важным этапом в актуализации процессов разработки безопасного программного обеспечения (РБПО) стало введение в действие ГОСТ Р 56939-2024 «Защита информации. Разработка безопасного программного обеспечения. Общие требования», пришедшего на смену его предыдущей редакции 2016 года. Если в первой редакции ГОСТ Р 56939-2016 РБПО рассматривалась в классическом виде как реализация разработчиком ПО организационных и технических мер, то в новой редакции речь идет о построении и развитии процессов РБПО.
Кого коснётся?
Согласно ГОСТ Р 56939-2024 стандарт предназначен для разработчиков и производителей ПО, а также для организаций, которые производят оценку конвейера РБПО.
Необходимо подчеркнуть, что ГОСТ Р 56939-2024 играет значимую роль для разработчиков средств защиты информации (Приказ ФСТЭК России № 240 «Об утверждении Порядка проведения сертификации процессов безопасной разработки программного обеспечения средств защиты информации» от 01.12.2023) (подобный разбор мы провели в 2024 году) и для разработчиков ПО для ГИС (Приказ ФСТЭК России № 117 п. 50). Внедрение процессов РБПО и прохождение разработчиком сертификации процессов РБПО позволит ему ускорить выпуск новых релизов, улучшить качество и безопасность разрабатываемого ПО, а также повысить уровень доверия пользователей к продукту.
ГОСТ Р 56939-2024 будет также интересен тем, кто связан с разработкой ПО или желает повысить зрелость процессов разработки ПО. К такой категории можно отнести, например, разработчиков ПО для КИИ, разработчиков ПО для ритейла и финансовых организаций.
Отличия новой редакции национального стандарта от старой
В новой редакции ГОСТ Р 56939-2024 суммарно выделено 25 процессов, 8 из них являются концептуально новыми.
Выделим основные предпосылки пересмотра ГОСТ Р 56939-2016:
-
Ранее описанные меры были недостаточно конкретизированы, что не позволяло оценить качество их реализации.
-
Требования не включали описания состава и содержания свидетельств разработчика ПО.
-
Возросли запросы на безопасность ПО, вследствие потребовалось расширить перечень мероприятий по РБПО и их детализацию.
-
Отсутствовала связь между реализуемыми мерами РБПО.
-
Отсутствовали задачи, связанные с выявлением ошибок в уже выпущенном и эксплуатируемом ПО.
Рассмотрим ключевые изменения в обновленной редакции ГОСТ Р 56939-2024:
1. Одним из важнейших изменений стало упоминание процесса «Планирование процессов РБПО». По нашему мнению, если на первых этапах компания-разработчик определит потребность в материальных и людских ресурсах, необходимых для реализации процессов РБПО, то ей существенно проще будет в дальнейшем заниматься их внедрением.
2. Изменения также затронули один из немаловажных этапов, как моделирование угроз безопасности ПО. Мера была введена и раньше, но в новой редакции ГОСТ Р 56939-2024 было четко определено понятие «поверхность атаки». Теперь разработчику требуется сначала определить и проанализировать поверхность атаки и только после — проводить исследования кода ПО, что позволит эффективно выявлять и устранять наиболее значимые ошибки и уязвимости.
3. Впервые закрепилась необходимость применения инструментов композиционного анализа — технологии для отслеживания уязвимостей в кодовой базе заимствованных компонентов. Важным этапом является определение требований к анализу заимствованных компонентов, формированию перечня программных компонентов и применению корректирующих мер по результатам анализа. Наиболее широко требования к композиционному анализу найдут своё отражение на уровне отдельного национального стандарта, разработкой которого занимается ПК 2 «Разработка безопасного программного обеспечения» в составе ТК 362 «Защита информации».
4. Изменения также затронули обеспечение информационной безопасности используемых секретов и ключей подписи. Стандарт накладывает требования к данному процессу в части запрета хранения конфиденциальной информации в исходном коде в открытом виде. Для реализации разработчику предлагается использовать как специализированные инструменты, так и модули в инструментах статического и композиционного анализа. По мнению наших экспертов, рекомендуется хранить секреты в специализированных системах для управления и совместной работы с секретами.
На наш взгляд, внедрение данного процесса является значимым, так как это позволит предотвратить несанкционированный доступ к инфраструктуре, а значит, снизить риски финансовых потерь и ущерба репутации.
5. Важно отметить, что в действующей редакции ГОСТ Р 56939-2024 описаны требования к обеспечению безопасности как на этапе эксплуатации ПО, так и на этапе вывода ПО из эксплуатации. Появление данных требований позволит закрыть вопрос с выявлением и устранением ошибок в уже выпущенном ПО, а также в последующем минимизировать упущенные при разработке ПО ошибки.
6. Добавлены требования по обязательному наличию IT-инфраструктуры. В условиях развития и изменчивости ПО сложно вручную обеспечить достаточный уровень безопасности и качества выпускаемых продуктов. Мы полагаем, что автоматизация является ключевым фактором в обеспечении баланса между интеграцией безопасности и скоростью выпуска обновлений приложений.
Следует подчеркнуть, что в новой версии ГОСТ Р 56939-2024 отдельное внимание уделяется формированию и поддержанию в актуальном состоянии правил кодирования, обеспечению целостности кода при разработке ПО, обеспечению проверок кода на предмет внедрения вредоносного программного обеспечения через цепочки поставок и нефункциональному тестированию. Изменения затронули и ряд других процессов РБПО. Мы готовы поделиться своими знаниями и рассказать вам, как эффективно выстроить процессы безопасной разработки в ПО.
Основные преимущества внедрения процессов РБПО
ГОСТ Р 56939-2024 действительно накладывает достаточно большое количество требований к процессам разработки ПО.
К ключевым преимуществам построения процессов РБПО можно отнести:
-
снижение затрат на производственный цикл разработки, так как обнаружение и устранение уязвимостей на ранних этапах сократит финансовые затраты;
-
повышение конкурентного преимущества благодаря ускоренному выпуску новых версий продукта;
-
формирование культуры коммуникаций между командой разработки и специалистами по безопасности.
Для построения процессов безопасной разработки ПО в компании мы предлагаем выполнить несколько важных шагов:
1. Оценить текущее состояние и уровень зрелости процессов разработки ПО — провести аудит РБПО, сформировать дорожную карту.
Рекомендуем на начальном этапе определить, в каких командах разработки ПО и с какими технологиями вы работаете, определить границы внедрения процессов РБПО в отношении команд разработки и выделить менее ресурсозатратные процессы РБПО для их последующей трансформации.
2. Определить применяемый тулчейн разработки в компании, оценить целевое состояние и приступить к использованию инструментов анализа кода.
Стоит отметить, что при выборе инструментов рекомендуется учитывать специфику разрабатываемых продуктов, опыт команд и долгосрочные цели развития.
3. Параллельно с этим обеспечить документирование реализации процессов РБПО.
Советуем проанализировать имеющиеся документированные процедуры разработки ПО, определить перечень необходимой документации и на основе полученных данных сформировать недостающие руководства и регламенты по РБПО.
4. Выстроить культуру безопасной разработки ПО.
Предлагаем внедрить культуру безопасной разработки для всех сотрудников вне зависимости от должности. Для этого необходимо реализовать культуру на уровне руководства компании-разработчика с последующей трансляцией на команды разработки, донести значимость внедрения и совершенствования практик и процессов РБПО, создать систему мотивации, направлять сотрудников на внешние мероприятия, регулярно повышать компетенции специалистов, проводить встречи внутри компании для обмена экспертизой, идеями и практиками.
Подведем итоги
Национальный стандарт ГОСТ Р 56939-2024 становится важным инструментом для повышения уровня безопасности российских разработок. Очевидно, что следование требованиям обновленной редакции ГОСТа станет обязательным условием успешной деятельности разработчиков программного обеспечения.
Компаниям, стремящимся сохранить конкурентоспособность и обезопасить свои продукты, рекомендуем выполнить предложенные шаги по построению процессов РБПО.
Но стоит отметить, что внедрение процессов РБПО требует достаточного уровня знаний и опыта в этой сфере. Вы можете выстроить жизненный цикл безопасной разработки самостоятельно или обратиться к профильным компаниям, которые специализируются на РБПО. Компания КСБ-СОФТ поможет вам выстроить процесс безопасной разработки на всех этапах непрерывного цикла создания безопасного и качественного ПО.