ГОСТ Р 56939—2016
Для подтверждения соответствия требованиям настоящего стандарта документация разра
ботчика ПО должна содержать сведения о прослеживаемости исходного кода программы к проекту
архитектуры программы (описанию проектных решений, обеспечивающих выполнение идентифициро
ванных требований по безопасности, установленных в процессе анализа требований к ПО).
5.3.3.3 Разработчик ПО должен создать (выбрать) и использовать при создании программы поря
докоформленияисходного кода программы, содержащийперечень правили рекомендаций, направлен
ных на устранение недостатков программы (потенциально уязвимых конструкций) в исходном коде
программы. В случае невозможности использования порядка оформления исходного кода программы
разработчикПОдолжендокументироватьобоснованиеэтогофактавкаждомслучае отказаотиспользо
вания. Обоснование факта отказа от использования порядка оформления исходного кода программы
следует приводить в форме комментариев в исходном коде программы.
Для организации работ, выполняемых в процессах жизненного цикла ПО, и подтверждения соот
ветствия требованиям настоящегостандарта порядокоформления исходного кода программы следует
документировать.
5.3.3.4 Разработчик ПО должен обеспечить проведение статического анализа исходного кода
программы с целью выявления недостатков программы (потенциальноуязвимых конструкций) в исход
ном коде программы. Статический анализ исходного кода программы следует проводить в отношении
компонентов, заимствованных у сторонних разработчиков ПО. если для этих компонентов доступен
исходный код программы. По результатам статического анализа исходного кода программы можно
проводитьдоработку программы.
Для организации работ, выполняемыхв процессахжизненного цикла ПО, документация разработ
чика ПО должна содержать список выявленных потенциально уязвимых конструкций в исходном коде
программы (при выявлении).
Для подтверждения соответствия требованиям настоящего стандарта документация разработ
чика ПОдолжна содержать:
- сведения о периодичности проведения статического анализа исходного кода программы;
- наименование и идентификационные признаки инструментальных средств, используемых для
проведения статического анализа исходного кода программы;
- список выявленных потенциальноуязвимых конструкций в исходном коде программы (при выяв
лении). описание действий, направленных на их устранение, или обоснование невозможности или
отсутствия необходимости вдоработке программы.
П р и м е ч а н и е — Статический анализ исходного кода программы выполняют разработчик ПО или сто
ронние организации, обладающие компетенцией а области выявления уязвимостей программы, для актуальной
версии исходного кода программы. Статический анализ исходного кода программы позволяет выполнить поиск
потенциально уязвимых конструкций в исходном коде программы, которые могут привести к наличию уязвимости
программы, а также проверить соответствие исходного кода программы принятому в организации порядку
оформления исходного кода программы.
В случае отсутствия исходного кода программы для компонентов, заимствованных у сторонних разработчи
ков ПО. разработчикуследует (если это возможновыполнить декомпиляцию указанныхкомпонентовс целью полу
чения исходного кода программы и проведения статического анализа исходного кода программы. При
невозможности выполнения декомпиляции разработчику ПО следует проводить более тщательное тестирование
на проникновение, динамический анализ кода программы и фаззинг-тестирование в отношении заимствованных
у сторонних разработчиков ПО компонентов.
5.3.3.5 Разработчик ПО должен обеспечить проведение периодической экспертизы исходного
кода программы. Экспертизу исходного кода программы следует проводить в отношении компонентов,
заимствованныхусторонних разработчиков ПО. еслидляэтих компонентовдоступен исходный код про
граммы. Порезультатамэкспертизы исходного кода программы могутпроводитьдоработкупрограммы.
Для организации работ, выполняемыхв процессахжизненного цикла ПО. документация разработ
чика ПО должна содержать список выявленных потенциально уязвимых конструкций в исходном коде
программы (при выявлении).
Для подтверждения соответствия требованиям настоящего стандарта документация разработчи
ка ПОдолжна содержать:
- сведения о периодичности проведения экспертизы исходного кода программы;
- список выявленных потенциальноуязвимых конструкций в исходном коде программы (при выяв
лении), описание действий, направленных на их устранение, либо обоснование невозможности или
отсутствия необходимости в доработке программы.
9