Перейти к содержанию

ПОД.2 — Подготовка исследовательского стенда

Раздел методики: 3.2
Применимость для уровня доверия 4 (уровень контроля 4): базовое исследование + усиления 1, 2
Кто проводит: испытательная лаборатория


Задачи исследования

  1. Подготовить исследовательский стенд, обеспечивающий проведение исследований в соответствии с представлением об ОО и разработанной методикой (ПОД.1).
  2. Подготовить специальные отладочные сборки ОО (со встроенными датчиками срабатывания ошибок — обязательно для уровня контроля 4, усиление 1).

Исходные данные

От разработчика ОО (полный пакет п. 2.3 Методики):

  • а) Документация на ОО: руководство по безопасной установке и настройке, руководство администратора, руководство пользователя, формуляр
  • б) Исходный код ОО
  • в) ⭐ Сборочная среда и система сборки ОО, включая их документацию (необходима для контролируемой сборки)
  • г) Дистрибутив ОО
  • д) Результаты выполнения процессов разработки ОО по ГОСТ Р 56939-2024 (в части, необходимой для настройки стенда)
  • е) Перечень программных компонентов и образов контейнеров ОО в формате CycloneDX 1.6/1.7 (JSON)
  • з) При внесении изменений в сертифицированный ОО: план поддержки безопасности заимствованных компонентов
  • и) Для контейнерного исполнения: перечни разрешённых действий (правила) взаимодействия компонентов ОО (из эксплуатационной документации)

Из предыдущих этапов:

  • Сведения из ПОД.1: методика проведения исследований, поверхность атаки, перечень анализируемых модулей — для определения состава сред выполнения исследований

Требования к проведению исследования

Выбор сред функционирования

  • Испытательная лаборатория формирует перечень сред выполнения исследований, определённых в рамках КАО.2, ДАО.1 и методики функционального тестирования ОО, включая не менее одной среды для каждого семейства сред функционирования.
  • Каждая операционная система формирует собственное семейство сред функционирования.
  • Для контейнерных сред: семейство определяется парой «базовая технология контейнеризации — операционная система».
  • Для виртуализационных сред: семейство определяется базовой технологией виртуализации.
  • При выборе среды из семейства следует выбрать среду с наименьшим защитным потенциалом.

Контролируемая сборка дистрибутивов ОО

Испытательная лаборатория выполняет контролируемую сборку дистрибутивов ОО для выявления:

  1. Взаимодействий сборочных сред и систем сборки с артефактами, размещёнными за пределами репозитория, контролируемого разработчиком.
  2. Использования в сборочном процессе программного кода, в отношении которого анализ не был выполнен в требуемом виде и объёме.
  3. Включения в состав дистрибутива исполняемых файлов, не собираемых разработчиком из исходных кодов.

Критично: при обнаружении любого из перечисленных фактов — испытательная лаборатория расценивает их как недостатки безопасности ОО и принимает решение о невозможности проведения дальнейших исследований.

Требования к исследовательскому стенду

При подготовке стенда проверяется:

  1. Меры защиты целостности: в исследовательском стенде реализованы меры, обеспечивающие целостность ОО и среды функционирования, а также исключающие возможность несанкционированного доступа к результатам исследований.

  2. Развёртывание сред и инструментов: все выбранные среды функционирования и инструментальные средства анализа развёрнуты и настроены в соответствии с эксплуатационной документацией. В ходе исследований не нарушаются условия эксплуатации сертифицированных сред функционирования (в т.ч. операционных систем).

  3. Установка и настройка дистрибутива ОО: в подготовленных средах функционирования установлен и настроен дистрибутив ОО в соответствии с руководством по безопасной установке и настройке из эксплуатационной документации.

  4. Контроль сетевых взаимодействий при установке: в ходе установки ОО и его настройки проводится контроль отсутствия недекларированных взаимодействий ОО с сетевыми ресурсами и ресурсами среды функционирования.

  5. Антивирусный контроль: по результатам установки ОО выполняется антивирусный контроль:

  6. анализируется дистрибутив ОО, все файлы установленного ОО и среды функционирования
  7. используется не менее двух сертифицированных средств антивирусной защиты от различных разработчиков с актуальными базами данных
  8. при отсутствии сертифицированных средств для данной среды функционирования допускается использование иных средств антивирусной защиты
  9. для контейнерных/виртуализационных ОО: контрольные суммы рассчитываются относительно снимков состояния (снапшотов) файловых систем выполняющихся контейнеров/виртуальных машин

  10. Контрольные суммы: выполняется сравнение контрольных сумм дистрибутива ОО и исполняемых файлов установленного ОО с контрольными суммами, зафиксированными в документации ОО:

  11. алгоритм: ГОСТ 34.11-2012 «Стрибог»
  12. контрольное суммирование выполняется средствами сертифицированной операционной системы либо сертифицированным средством контрольного суммирования

Дополнительные требования (усиления) для уровня контроля 4

Усиление 1 — Отладочные сборки со встроенными датчиками ошибок

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

Типы датчиков срабатывания ошибок:

  • ошибки работы с памятью
  • неопределённое поведение
  • нарушения потока управления
  • иные типы, исходя из технических возможностей используемых в ОО языков программирования и среды функционирования

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

Если штатная система сборки не позволяет встраивать датчики:
Допускается использовать альтернативные методы встраивания датчиков:

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

Если для языка ОО или его среды функционирования ряд типов датчиков неприменим или отсутствует → использование таких датчиков не требуется.

Усиление 2 — Поддержка нескольких процессорных архитектур

Исследовательский стенд должен обеспечивать проведение динамического анализа ОО для каждой процессорной архитектуры среды функционирования ОО.


Требования к результатам исследования

По результатам подготовки исследовательского стенда в документации и акте отбора образцов ОО (после завершения всех исследований) фиксируются:

  • контрольные суммы дистрибутива ОО
  • контрольные суммы исполняемых файлов установленного ОО
  • контрольные суммы файлов исходных текстов ОО (в соответствии с уровнем контроля)

Все контрольные суммы рассчитаны по ГОСТ 34.11-2012 («Стрибог»).


Проверка артефактов результата

Формат для агента: артефакт считается принятым только при выполнении всех критериев; неприменимые пункты фиксируются с причиной.

Артефакт Что проверить Критерий приемки
Перечень сред функционирования Есть минимум одна среда для каждого семейства; семейства ОС, контейнеризации и виртуализации определены по правилам Методики Для каждого семейства выбрана среда с наименьшим защитным потенциалом и есть обоснование
Журнал контролируемой сборки Зафиксированы источник кода, команды/параметры сборки, версия сборочной среды, полученный дистрибутив Нет взаимодействий с артефактами вне контролируемого репозитория; нет кода без требуемого анализа; нет исполняемых файлов, не собранных из исходников
Конфигурация исследовательского стенда Описаны среды, инструменты, версии, настройки, меры защиты целостности и доступа к результатам Все среды и инструменты развернуты по эксплуатационной документации; условия эксплуатации сертифицированных сред не нарушены
Отчет установки ОО Зафиксированы шаги установки, настройки, контроль сетевых взаимодействий Дистрибутив установлен по руководству безопасной установки; недекларированные взаимодействия отсутствуют или оформлены как недостатки
Отчет антивирусного контроля Указаны минимум два средства разных разработчиков, дата актуальности баз, объекты проверки Проверены дистрибутив, все файлы установленного ОО и среда функционирования; при отсутствии сертифицированных средств есть обоснование альтернатив
Ведомость контрольных сумм Есть хэши дистрибутива, исполняемых файлов и исходных текстов; указан алгоритм и средство расчета Хэши рассчитаны по ГОСТ 34.11-2012 («Стрибог») сертифицированной ОС или сертифицированным средством; для контейнеров/ВМ использованы снапшоты файловых систем
Отладочные сборки и датчики Есть перечень сборок по средам и архитектурам, перечень датчиков, способ встраивания Для каждой среды и каждой процессорной архитектуры динамического анализа есть применимая сборка или обоснованная альтернатива

Чек-лист проверки результатов перед отправкой

Формат: каждый пункт проверяется как выполнено / не выполнено / неприменимо.
Все пункты без статуса "неприменимо" должны иметь статус "выполнено".

Блок 1: Выбор сред функционирования

  • Сформирован перечень сред выполнения исследований.
  • Для каждого семейства сред функционирования включена не менее одной среды.
  • Для каждого семейства выбрана среда с наименьшим защитным потенциалом (задокументировано экспертное обоснование).
  • Для контейнерных сред: семейство определено корректно (пара «технология контейнеризации — ОС»).
  • Для виртуализационных сред: семейство определено по базовой технологии виртуализации.

Блок 2: Контролируемая сборка

  • Выполнена контролируемая сборка дистрибутивов ОО испытательной лабораторией.
  • Проверено отсутствие взаимодействий сборочной среды с артефактами вне репозитория разработчика.
  • Проверено, что в сборочном процессе не используется код, не прошедший анализ в требуемом объёме.
  • Проверено, что дистрибутив не содержит исполняемых файлов, не собранных из исходных кодов.
  • Результаты контролируемой сборки задокументированы.

Блок 3: Исследовательский стенд

  • В стенде реализованы меры защиты целостности ОО и среды функционирования.
  • Реализован контроль доступа к результатам исследований.
  • Все среды функционирования развёрнуты и настроены согласно эксплуатационной документации.
  • Инструментальные средства анализа развёрнуты и настроены согласно их документации.
  • Дистрибутив ОО установлен и настроен по руководству безопасной установки.
  • В ходе установки проведён контроль сетевых взаимодействий — недекларированные взаимодействия не выявлены (или выявленные зафиксированы как недостатки).

Блок 4: Антивирусный контроль

  • Антивирусный контроль проведён двумя или более сертифицированными средствами от разных разработчиков.
  • Базы данных признаков вирусов актуальны на дату проведения контроля.
  • Контролю подвергнуты: дистрибутив ОО, все файлы установленного ОО, среда функционирования.
  • Для контейнерных/виртуальных сред: контроль выполнен по снапшотам файловых систем.
  • Результаты антивирусного контроля задокументированы.

Блок 5: Контрольные суммы

  • Вычислены контрольные суммы дистрибутива ОО (алгоритм ГОСТ 34.11-2012 «Стрибог»).
  • Вычислены контрольные суммы исполняемых файлов установленного ОО.
  • Вычислены контрольные суммы файлов исходных текстов ОО.
  • Контрольные суммы совпадают с зафиксированными в документации ОО.
  • Контрольное суммирование выполнено сертифицированной ОС или сертифицированным средством контрольного суммирования.
  • Значения контрольных сумм зафиксированы в акте отбора образцов ОО.

Блок 6: Отладочные сборки (усиление 1)

  • Разработчик подготовил специальные сборки ОО со встроенными датчиками ошибок.
  • Подготовлены сборки для каждой среды функционирования, включённой в исследования.
  • Перечень используемых датчиков согласован с испытательной лабораторией и зафиксирован в протоколе.
  • Датчики охватывают: ошибки работы с памятью, неопределённое поведение, нарушения потока управления.
  • Для языков/сред без поддержки определённых датчиков: зафиксировано обоснование неприменимости.
  • При отсутствии штатной поддержки датчиков: применено динамическое двоичное инструментирование или аналог (задокументировано).

Блок 7: Многоархитектурность (усиление 2)

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

Задачи СИ по данному разделу

Рабочий перечень задач для Redmine: Перечень_задач_СИ_М3.md

Код задачи Наименование
СИ-ПОД2.01 Определить среды выполнения исследований
СИ-ПОД2.02 Развернуть исследовательский стенд
СИ-ПОД2.03 Выполнить контролируемую сборку ОО
СИ-ПОД2.04 Установить и настроить ОО в выбранных средах
СИ-ПОД2.05 Проконтролировать сетевые взаимодействия при установке
СИ-ПОД2.06 Провести антивирусный контроль
СИ-ПОД2.07 Рассчитать контрольные суммы (ГОСТ 34.11-2012)
СИ-ПОД2.08 Подготовить отладочные сборки с датчиками ошибок (усил. 1)
СИ-ПОД2.09 Обеспечить динамический анализ для всех процессорных архитектур (усил. 2)