Пиков / КАПО
Как читать авторский курс и нормативные материалы

Это учебные материалы, а не заключение о соответствии конкретного продукта. Организационные модели курса отделяйте от терминов стандарта: ППК в опубликованном проекте — машиночитаемый перечень, а живой реестр его версий является практикой сопровождения. Термин OSA в разных материалах имеет разный охват. Статус и обязательность нормативного документа проверяются отдельно; проект КАПО опубликован как проект первой редакции.

Порядок работы с неопознанной библиотекой

Назначение

Пошаговый регламент идентификации компонента, который сканер увидел, но не сопоставил с координатами. Описывает, как от симптома «не распозналось» дойти до purl и паспорта либо до обоснованного принятого риска — без молчаливого пропуска.

Когда применяется

Запускается на каждый компонент со статусом unresolved после форматных чек-листов. Результат каждого шага фиксируется в Реестр unresolved libraries (порядок поставляет в реестр записи и двигает их статусы).

Порядок vs реестр Этот документ — что делать (шаги). Где это учитывается — в реестре unresolved. Каждый шаг ниже меняет статус соответствующей записи реестра.

Шаги

  1. Зафиксировать симптом. Завести запись в реестре: артефакт, поставка, тип проблемы (static link / vendored / cpe alias / binary / format gap). Назначить владельца и срок.

  2. Собрать сборочный контекст. Для C/C++ — поднять build evidence: логи сборки, граф (см. П19. C C++ make build inventory, П20. CMake dependency graph). Часто координаты восстанавливаются именно из контекста сборки, а не из бинарника.

  3. Поискать апстрим и метаданные. Проверить заголовки исходников, README, hash файлов против публичных индексов. Для vendored-кода — найти оригинальный репозиторий и версию.

  4. Сформировать кандидата purl. Построить нормализованный purl (тип, namespace, name, version) по П24. PURL нормализация и private qualifiers. Если versions диапазон — зафиксировать неопределённость.

  5. Сопоставить уязвимостные координаты. Если cpe не совпал — провести alias-сопоставление (см. П25. CPE alias worklist), чтобы компонент проверялся против БДУ ФСТЭК/OSV.

  6. Эскалировать соисполнителю при тупике. Если данных недостаточно — запросить у соисполнителя исходные метаданные/SBOM-фрагмент. Перевести запись в статус «эскалация».

  7. Закрыть запись одним из исходов: - Идентифицирована → завести паспорт, статус «закрыта-идентифицирована». - Риск принят → оформить по П30. Исключения и принятие риска с владельцем и сроком пересмотра, статус «закрыта-риск принят». - Подтверждённый ложный элемент → удалить из состава с обоснованием.

Критерий завершения

Связь с курсом