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

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

План занятия (90 минут)

Цели

По итогам занятия слушатель умеет: - читать и собирать руками строку PURL и строку CPE 2.3 для заданного компонента; - объяснить, почему битый/отсутствующий PURL или CPE даёт тихий ноль находок (false negative), а не ошибку; - распознать alias-проблему CPE (несколько vendor у одного продукта) и связать её с C/C++ без пакетного менеджера; - различить координаты уязвимостей CVE / GHSA / OSV / BDU ФСТЭК и понимать, зачем их несколько.

Материалы

Ход занятия

Мин Блок Что происходит
0–5 Вводный кейс Отчёт сканера: «0 уязвимостей» по компоненту, который заведомо уязвим. Вопрос аудитории: что не так? Подводка к «нет координаты → нет находки».
5–25 Лекция: две системы координат PURL (грамматика, примеры по экосистемам) и CPE 2.3 (13 полей, vendor:product). Разбор log4j: расхождение Maven groupId:artifactId и CPE vendor:product.
25–35 Лекция: координаты уязвимостей CVE, GHSA, OSV (aliases как кросс-walk), БДУ ФСТЭК (BDU:YYYY-NNNNN, записи без CVE). Зачем источников несколько.
35–55 Демо матчинга Преподаватель собирает PURL и CPE для OpenSSL/libcurl, ищет в osv.dev и в NVD CPE Search; показывает alias curl (haxx:curl vs curl:curl); затем ломает PURL приватным qualifier и показывает, как находки исчезают.
55–80 ПЗ в парах Слушатели заполняют таблицу координат для 4 компонентов и воспроизводят «битый PURL → пропавшие находки» (см. Практическая работа).
80–88 Разбор результатов Сравниваем таблицы пар, обсуждаем найденные alias и нормализацию; что попадает в worklist (П24. PURL нормализация и private qualifiers, П25. CPE alias worklist).
88–90 Рефлексия Что закрепить в регламенте Организации: требование двух координат, нормализация PURL, сверка CPE-alias, учёт БДУ.

Демонстрация (опорные шаги)

  1. Показать фрагмент SBOM с полями purl и cpe.
  2. Найти компонент в osv.dev по PURL → получить CVE/GHSA.
  3. Найти тот же продукт в NVD CPE Search → показать несколько vendor (alias).
  4. Внести в PURL приватный qualifier → повторить поиск → находок нет; снять qualifier → находки вернулись.

Контрольная точка

Слушатель предъявляет заполненную таблицу координат и устно объясняет на одном примере, почему сканер мог бы вернуть ложный ноль и как это поймать. Детальные критерии — в Практической работе.