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

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

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

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

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

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

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

Источник Что предоставить Требования
Вставленные или локальные данные о проблемах Результаты SARIF, CVE или GHSA, бюллетень безопасности, задачу от сканера, отчёт программы bug bounty, артефакт выявленной проблемы Codex Security или описание предполагаемой уязвимости обычным языком. Коннектор не требуется.
Jira или Linear Точные URL или идентификаторы задач по безопасности или уязвимостям, запрос Jira JQL либо команду, проект или поисковую фразу Linear. Codex получает содержимое выбранных задач перед триажем. Jira через Atlassian Rovo или Linear с доступом на чтение.
GitHub Репозиторий и один источник проблем: сканирование кода, уязвимости и вредоносное ПО Dependabot, бюллетени безопасности и закрытые отчёты об уязвимостях либо все источники. Если репозиторий не указан, Codex использует репозиторий GitHub, привязанный к текущему проекту Codex, если он доступен. GitHub Issues по умолчанию не включены. Укажите конкретную задачу или явно запросите 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.

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

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

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

Используйте приоритеты, чтобы определить, какие проблемы confirmed исправлять первыми и какие проблемы needs_review исследовать в первую очередь. Приоритеты определяются отдельно для каждой группы.

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

Записи в 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. Reproduce or disprove the finding, record what you tested, and list any remaining uncertainty.

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

  • needs_review: Если проблема зависит от политики продукта или контекста развёртывания, ответьте на перечисленные открытые вопросы, прежде чем менять код.
  • not_actionable: Сохраните доказательства вместе с записью о триаже. Codex не закрывает и не обновляет исходную задачу автоматически.
  • Чтобы найти уязвимости за пределами предоставленного списка, запустите сканирование безопасности.