Куда я попал?
Методика выявления уязвимостей и недекларированных возможностей в программном обеспечении (Выписка)
Страна: Россия
Методическая документация ФСТЭК
4.3
Для проведения оценки соответствия по документу войдите в систему.
Список требований
-
Для 4-5 уровней контроля тестирование модулей ОО (ДАО.1) и фаззинг-тестирование ОО (ДАО.2) должны выполняться в отношении специальных сборок ОО со встроенными датчиками срабатывания ошибок. Специальные отладочные сборки ОО подготавливаются на этапе ПОД.2 в рамках выполнения требований усиления 1 (с учетом уровня контроля).
-
Испытательной лабораторией фиксируются факты выявления механизмов, встроенных в исходный или исполняемый код ОО и препятствующих проведению динамического анализа. В случае выявления в ходе исследований таковых механизмов, эти механизмы и защищенные ими программные модули (участки кода) должны быть проанализированы при проведении экспертизы кода (ЭКО). Если суммарный объем исходных кодов данных механизмов и защищенных модулей (участков кода) превосходит 10 000 строк, делается вывод о невозможности проведения дальнейших исследований.
-
Задачей исследования является выявление недостатков безопасности ОО, в том числе ошибок реализации функций безопасности ОО, самостоятельно и в результате анализа результатов выполнения процессов разработки ОО в соответствии с ГОСТ Р 56939-2024, методом и инструментами автоматического динамического тестирования модулей ОО со сбором покрытия.Исходными данными при проведении исследования являются:
- исходные данные в соответствии с требованиями пункта 2.3 настоящей Методики, в первую очередь подпункта «ж» пункта 2.3 настоящей Методики;
- сведения, полученные по результатам выполнения ПОД.1;
- испытательный стенд, полученный по результатам выполнения ПОД.2.
-
При тестировании модулей оцениваются исходные данные согласно пункту 3.1 настоящей Методики, а также проводится оценка реализации разработчиком ОО следующих требований:а) выполняется автоматическое тестирование<16> всех модулей, реализующих ФБ ОО;б) выполняется тестирование модулей для каждой процессорной архитектуры, поддержка которой обеспечивается исследовательским стендом;в) выполняется сбор тестового покрытия по функциям исходного или исполняемого кода для каждого тестируемого модуля ОО;г) выполняется анализ журналов тестирования для каждого тестируемого модуля на предмет наличия сбоев и нарушений требований, проверяемых тестами, в том числе порождаемых датчиками срабатывания ошибок.
<16> Тесты могут быть реализованы на различных уровнях – системном, интеграционном, модульном. -
При проведении исследований оценивается число модулей из состава подлежащих тестированию модулей ОО, в отношении которого не выполнены требования пункта 4.3.2 настоящей Методики. В исследовании ДАО.1 не учитываются тесты, в ходе выполнения которых не вызываются функции подлежащих тестированию модулей ОО.
-
Если разработчиком ОО выполняется исследование модулей ОО в рамках деятельности Центра исследований безопасности системного ПО и в ходе исследования ОО выполнено тестирование подлежащих тестированию модулей ОО в объеме программы исследований безопасности, то требования пункта 4.3.2 настоящей Методики в отношении данных модулей считаются выполненными.В противном случае:
- если число таких модулей не превосходит 5, испытательной лабораторией проводится тестирование модулей самостоятельно в соответствии с требованиями настоящей Методики либо принимается решение о невозможности проведения дальнейших исследований ОО;
- если число таких модулей превосходит 5, испытательной лабораторией принимается решение о невозможности проведения дальнейших исследований ОО.
-
Если предоставленные разработчиком ОО исходные данные отвечают требованиям пункта 4.3.2 настоящей Методики, испытательной лабораторией проводится выборочная проверка результатов анализа тестов, выявивших сбои и нарушение требований. Выборочная проверка выполняется в отношении контрольной выборки тестов, составленной по следующему принципу:
- в состав выборки включается не менее 50 тестов, выявивших сбои и нарушение требований;
- в состав выборки включаются тесты, относящиеся не менее чем к 5 различным модулям;
- в состав выборки включаются все тесты, выявившие сбои и нарушение требований, явно связанные с безопасностью регрессий<17>, не исправленных в текущей версии модуля ОО.
Если доля неверно размеченных разработчиком результатов тестов в составе контрольной выборки не превосходит 10 %, исследования ОО продолжаются после устранения разработчиком выявленных недостатков безопасности ОО.Если доля неверно размеченных разработчиком ОО результатов тестов в составе контрольной выборки превосходит 10 %, испытательная лаборатория принимает решение о невозможности проведения дальнейших исследований ОО.
<17> Под регрессиями понимаются тесты, подтверждающих наличие известных недостатков безопасности, выявленных в предыдущих версиях модуля. -
Задачей исследования является выявление недостатков безопасности ОО самостоятельно и в результате анализа результатов выполнения процессов разработки ОО в соответствии с ГОСТ Р 56939-2024 методом и инструментами фаззинг-тестирования и сбора покрытия ОО.Исходными данными при проведении исследования являются:
- исходные данные в соответствии с требованиями пункта 2.3 настоящей Методики;
- сведения, полученные по результатам выполнения ПОД.1;
- испытательный стенд, полученный по результатам выполнения ПОД.2;
- сведения о покрытии модулей, достигаемом по результатам выполнения ДАО.1.
-
Испытательной лабораторией оценивается число целей из состава подлежащих фаззинг-тестированию, в отношении которых не выполнены требования пункта 4.3.3 настоящей Методики.
Если разработчик ОО выполняет исследование модулей ОО в рамках деятельности Центра исследований безопасности системного ПО и в ходе исследования ОО выполнил фаззинг-тестирование подлежащих фаззинг-тестированию модулей ОО в объеме программы исследований безопасности, требования пункта 4.3.3 настоящей Методики в отношении данных модулей считаются выполненными.Если число таких целей не превосходит 3, испытательной лабораторией выполняется фаззинг-тестирование самостоятельно в соответствии с требованиями настоящей Методики либо принимается решение о невозможности проведения дальнейших исследований ОО.Если число таких целей превосходит 3, испытательной лабораторией принимается решение о невозможности проведения дальнейших исследований ОО. -
3. В ходе проведения исследований испытательной лабораторией проверяется, что для тестируемых модулей с открытым исходным кодом, для которых определены методики фаззинг-тестирования, указанные в подпункте «н» пункта 2.3 настоящей Методики, фаззинг-тестирование выполнено в соответствии с требованиями этих методик.
-
4. Испытательной лабораторией проверяется, что фаззинг-тестирование выполнялось в отношении специально подготовленных синтетических целей, сформированных с целью эффективного тестирования участков кода, выделенных в ходе выполнения требований усиления 4 ПОД.1.При фаззинг-тестировании интерфейсов ОО допускается ограничиваться фаззинг-тестированием в отношении специально подготовленных синтетических целей. Достаточность состава выделенных целей определяется испытательной лабораторией непосредственно в ходе проведения исследований ДАО.2 и фиксируется с обоснованием в протоколах исследований.Функции-обертки обеспечивают вызов тестируемых участков кода целей, конвертируя мутируемые фаззером данные во входные параметры тестируемых функций в соответствии со спецификациями интерфейсов (протоколов), типов данных и контекста выполнения тестируемых функций в составе ОО.
-
Результаты исследований фиксируются в материалах исследований в объеме, соответствующем требованиям пункта 5.2 настоящей Методики. Дополнительно требуется зафиксировать в материалах исследований в формате электронных приложений структурное покрытие для каждого тестируемого модуля.
Дополнительно требуется зафиксировать в материалах исследований:- параметры сборки каждой фаззинг-цели;
- принципы формирования коллекции, правил, словарей;
- достигнутое структурное покрытие для каждой фаззинг-цели.
Мы используем cookie-файлы, чтобы получить статистику, которая помогает нам улучшить сервис для вас с целью персонализации сервисов и предложений. Вы может прочитать подробнее о cookie-файлах или изменить настройки браузера. Продолжая пользоваться сайтом, вы даёте согласие на использование ваших cookie-файлов и соглашаетесь с Политикой обработки персональных данных.