Русский

Провести сортировку бэклога

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

Используйте $codex-security:triage-finding, чтобы проверить существующие выводы о проблемах безопасности по текущему репозиторию. Этот рабочий процесс выполняет статический анализ только для чтения: Codex рассматривает каждый вывод как недоказанное утверждение и изучает свидетельства в репозитории, не выполняя код.

Запускайте этот рабочий процесс из проекта Codex, область которого ограничена репозиторием, подлежащим оценке. Codex должен иметь возможность читать исходный код репозитория. Коннекторы Jira и Linear могут предоставлять данные о выводах, а для выводов GitHub требуется аутентифицированный доступ к GitHub REST. Ни один из этих вариантов не заменяет доступ к исходному коду.

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

Этим процесс отличается от $codex-security:validation, который может собирать или выполнять код, создавать целевой тест или доказательство концепции либо взаимодействовать с реальным интерфейсом, чтобы воспроизвести или опровергнуть вывод. Используйте сортировку для классификации и ранжирования существующего бэклога. Используйте валидацию, когда свидетельства времени выполнения могут прояснить вывод, который остаётся неопределённым на основе статических свидетельств.

Выберите выводы для сортировки

Можно предоставить один вывод или набор выводов из следующих источников:

Источник Что предоставить Требования
Вставленные или локальные выводы Результаты SARIF, CVE или GHSA, уведомление, тикет сканера, отчёт программы вознаграждения за обнаружение ошибок, артефакт вывода Codex Security или сформулированное обычным языком утверждение об уязвимости. Коннектор не требуется.
Jira или Linear Точные URL-адреса или идентификаторы задач по безопасности либо уязвимостям, Jira JQL или команда, проект либо поисковая фраза Linear. Перед сортировкой Codex получает содержимое выбранных задач. Jira через Atlassian Rovo или Linear с доступом на чтение.
GitHub Репозиторий и один источник выводов: сканирование кода, уязвимости и вредоносное ПО Dependabot, уведомления о безопасности и закрытые отчёты об уязвимостях либо все источники. Если репозиторий не указан, Codex использует репозиторий GitHub, связанный с текущим проектом Codex, если он доступен. GitHub Issues не входят в стандартный набор источников GitHub; если требуется отсортировать такие задачи, укажите конкретную задачу или явно запросите GitHub Issues. Аутентифицированный доступ к GitHub REST, например gh auth token, GH_TOKEN или GITHUB_TOKEN, с разрешением на чтение выбранного репозитория и типа выводов.

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

Запустите сортировку только для чтения

Для вставленных выводов или локальных артефактов отправьте запрос следующего вида:

Use $codex-security:triage-finding to triage these existing security findings against this repository:

[Paste the findings or provide the artifact path.]

Для задач Jira или Linear укажите набор задач и сохраните для исходной системы режим только для чтения:

Use $codex-security:triage-finding to import and triage the security findings from [Jira or Linear issue URLs, identifiers, or query] against this repository.
Do not change the source issues.

Для выводов GitHub укажите репозиторий и источник:

Use $codex-security:triage-finding to import and triage [code scanning, Dependabot vulnerabilities and malware, security advisories and private vulnerability reports, or all] from [owner/repository] against this repository.

Чтобы использовать репозиторий GitHub, связанный с текущим проектом Codex, укажите только источник выводов:

Use $codex-security:triage-finding to import and triage [code scanning, Dependabot vulnerabilities and malware, security advisories and private vulnerability reports, or all] from GitHub against this repository. Use the GitHub repository attached to the current Codex project.

Рабочий процесс выполняется в следующем порядке:

  1. Соберите и систематизируйте выводы

    Codex получает все запрошенные данные задач или содержимое GitHub, сохраняет исходные идентификаторы и ссылки и создаёт по одному элементу сортировки для каждой входной записи. Он формирует полный список элементов до назначения вердиктов.

  2. Подтвердите контекст репозитория

    Codex определяет текущий репозиторий и ревизию, если они доступны. При наличии он читает SECURITY.md, чтобы при оценке учитывались поддерживаемые версии, доверенные входные данные, границы продукта и поверхности вне области оценки.

  3. Изучите статические свидетельства

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

  4. Назначьте вердикты и ранги

    Codex назначает каждому выводу вердикт и уровень уверенности. Он ранжирует выводы confirmed и needs_review по возможности эксплуатации в отдельных очередях.

Проверьте результаты

Вердикт Что он означает
confirmed Свидетельства в репозитории показывают, что уязвимый путь достижим при указанных предварительных условиях и пересекает поддерживаемую границу безопасности.
not_actionable Свидетельства в репозитории опровергают утверждение, например показывая незатронутую версию, недостижимый путь, эффективную защиту или поверхность, не входящую в поставку.
needs_review Свидетельств в репозитории недостаточно для принятия решения, поскольку необходимая информация отсутствует, неоднозначна либо зависит от времени выполнения, окружения или политики.

Для каждого вывода проверьте:

  • обоснование вердикта и ранга
  • подтверждающие свидетельства и свидетельства против утверждения
  • открытые вопросы и оставшиеся пробелы в доказательствах
  • затронутые расположение и компонент
  • поверхность продукта и уровень доверия к источнику
  • рекомендуемый следующий шаг
  • передачу в $codex-security:fix-finding, если вывод имеет статус confirmed

Сортировка завершена, когда для каждого предоставленного вывода имеется один результат, Codex сохраняет его исходный идентификатор, а вся неопределённость явно обозначена. Записи бэклога Jira, Linear и других систем остаются неизменными, если после проверки результатов сортировки вы не попросите Codex записать изменения обратно.

Следующие шаги

  • confirmed: После того как специалист примет вывод для исправления, используйте $codex-security:fix-finding, чтобы исправить и проверить его. Сортировка подготавливает готовые к передаче в запросе данные, но не запускает навык автоматически.

  • needs_review: Если выполнение кода может устранить пробел в доказательствах, используйте $codex-security:validation для проведения ограниченной динамической валидации. Передайте утверждение вывода, затронутые расположения, предварительные условия, статические свидетельства и пробелы в доказательствах из результата сортировки:

    Use $codex-security:validation to dynamically validate finding [triage item ID or source ID] from the backlog triage result. Use the strongest realistic, bounded method, record exactly what was tested, and preserve any remaining proof gaps.

    В отличие от сортировки, валидация может собирать или выполнять код, создавать целевой тест или доказательство концепции либо взаимодействовать с реальным интерфейсом. Проверьте предложенные команды перед их одобрением и не отключайте политики одобрения и безопасности Codex.

  • needs_review: Если вывод зависит от политики продукта или контекста развёртывания, ответьте на перечисленные открытые вопросы до изменения кода.

  • not_actionable: Сохраните свидетельства вместе с записью сортировки. Codex не закрывает и не обновляет исходный тикет автоматически.

  • Чтобы найти уязвимости помимо указанных в предоставленном бэклоге, запустите сканирование безопасности.