Самооценка по ГОСТ Р 56939-2024

Отметьте состояние каждого из 25 процессов безопасной разработки ПО. Реализованным считайте процесс, у которого есть артефакты: регламент, отчёты, журналы. Расчёт покажет готовность по участкам и что подготовить по каждому пробелу.

Управление и обучение

определить, на какое ПО распространяются процессы, оценить их текущее состояние и спланировать внедрение и ресурсы

поддерживать знания работников о безопасной разработке, типовых ошибках и уязвимостях

Требования и проектирование

формулировать требования безопасности к ПО, доводить их до исполнителей и отслеживать выполнение

отслеживать элементы ПО и документации, их версии и изменения на протяжении жизненного цикла

регистрировать недостатки и запросы на изменение и доводить каждый до закрытия

проектировать архитектуру, снижающую возможность появления уязвимостей, и уточнять её по ходу разработки

определить угрозы, актуальные для ПО, меры их нейтрализации и части ПО, доступные нарушителю

Код и его проверка

установить правила оформления кода и запрещённые опасные конструкции и проверять их соблюдение

выявлять недостатки кода его просмотром другими разработчиками до включения изменений

выявлять ошибки и уязвимости кода инструментами без его выполнения и разбирать каждое срабатывание

выявлять ошибки при выполнении программы, в том числе фаззинг-тестированием

разграничивать доступ к исходному коду и контролировать его целостность

хранить, выдавать и обновлять пароли, ключи и сертификаты, применяемые при разработке

вести перечень заимствованных компонентов и выявлять в них известные уязвимости

снижать риск внедрения вредоносного кода через поставщиков компонентов и инфраструктуры

Сборка, тестирование и выпуск

собирать ПО инструментами, выбранными и настроенными по рекомендациям их производителей

защищать сборочную среду, регистрировать сборки и обеспечивать их повторяемость

проверять соответствие ПО функциональным требованиям по плану и сценариям

проверять ПО на устойчивость к компьютерным атакам с учётом модели угроз

выпускать версию только после приёмки и решения по неустранённым ошибкам, с возможностью проверки целостности

хранить копии версий и доставлять ПО и обновления пользователям с проверкой подлинности

Эксплуатация и уязвимости

поддерживать пользователей, оповещать их об обновлениях и уязвимостях

принимать сообщения об уязвимостях, оценивать их актуальность и критичность и принимать решения

регулярно искать известные уязвимости в эксплуатируемых версиях и выпускать исправления

выводить ПО из эксплуатации по установленным условиям с оповещением пользователей

Как считается готовность

Реализованный процесс засчитывается целиком, частично реализованный — наполовину, внедряемый и не оценённый — нулём. Неприменимые процессы из расчёта исключаются: стандарт допускает неприменимость, если она обоснована особенностями программы.

Такая оценка — начало анализа текущего состояния, которого требует процесс 5.1 ГОСТ Р 56939-2024. Из пробелов складывается план развития процессов. Как оформить руководство и план, разобрано в статье о регламенте безопасной разработки, а что требовать от проверок кода — в статье о проверках кода.

Расчёт справочный: процент показывает, сколько работы впереди, но не заменяет проверку артефактов.