Проверка кода на уязвимости с Codex Security: настройка Cloud, PR и CLI
Как настроить Codex Security Cloud, проверку PR и CLI: расходы команды из пяти человек, разбор уязвимостей Gogs, SARIF в CI и обязательные проверки.

Проверка кода на уязвимости на уровне репозитория, проверка безопасности pull request и проверки перед коммитом доступны без предварительной покупки платного SAST-комплекса — набора автоматизированных проверок исходного кода. Codex Security теперь охватывает все эти сценарии. Но подписка — лишь часть расходов: пять мест Standard Business стоят $125 в месяц при помесячной оплате, а использование сканирования учитывается отдельно. Начните с одного репозитория и назначьте человека, который будет отвечать за обнаруженные проблемы.
Проверка кода на уязвимости: что изменилось после DevDay
Codex Security позволяет искать уязвимый код на трёх уровнях: во всём репозитории, в pull request и в рабочей копии разработчика. Это похоже на обследование здания, проверку проекта перепланировки и осмотр перед уходом рабочих с объекта. На каждом этапе видна своя часть одной системы.
Pull request — это предложенное изменение кода, которое ждёт проверки. CLI — инструмент командной строки, запускаемый в терминале. CI — автоматические проверки, которые выполняются при изменении кода.
Cloud исследует обнаруженные проблемы, убирает дубликаты и готовит исправления, даже когда ваш компьютер выключен. OpenAI по-прежнему обозначает его статус как research preview — предварительную исследовательскую версию. Анонс DevDay от 29 сентября уточняет доступность и возможности сканирования по расписанию, но не переводит Cloud в статус общедоступного продукта. Итоги DevDay, текущий статус продукта.
Командам на GitLab стоит начать с CLI. В текущей схеме настройки Security Cloud подключается к GitHub. Поддержка merge request GitLab в обычном Codex не означает, что GitLab поддерживается в Security Cloud. Отдельное руководство по GitLab CI/CD описывает поддерживаемый способ запуска проверок безопасности в этом стеке.

На каких тарифах доступен сервис и сколько платит команда из пяти человек
Codex Security Cloud доступен на тарифах Pro, Business, Enterprise и Edu — это указано в датированном анонсе DevDay и текущем справочном центре. Для Security Review перечислены те же тарифы, а Plus прямо исключён. При этом ещё нужно включить необходимые разрешения рабочего пространства и доступ к репозиторию. Доступность Cloud, доступ к Security Review.
Для небольшой компании разумно сравнить стоимость подписки на пять мест Standard Business:
Оплата по токенам зависит от того, сколько текста модель читает и генерирует. Цена места может различаться в зависимости от страны и валюты. Расчёт подписки основан на текущем FAQ по Business. Согласно текущим условиям оплаты Cloud, действующих клиентов уведомляют заранее, а платное использование начинается только после их согласия; без средств сканирование приостанавливается. Итоговой цены сканирования для команды из пяти человек эти условия не дают. Оплата Cloud, разница между оплатой подписки и API.
Если вы уже оплачиваете Business, дополнительные расходы на места могут быть нулевыми. Но использование сканирования и проверок всё равно нужно учитывать в бюджете. Месячный итог складывается из подписки, применимых расходов на Cloud, сканирования в CI через API, времени раннера и, при необходимости, подписки на панель безопасности.
Не закладывайте в бюджет новый бесплатный первый месяц. Предложение бесплатного использования относилось к запуску 6 марта и действовало в течение следующего месяца. Текущие страницы продукта и оплаты не подтверждают, что 30 сентября это предложение возобновили. Условия первоначального запуска, текущие условия оплаты.
Для ориентира: платный продукт Semgrep Code стоит $30 за участника в месяц, то есть $150 за пять участников. В Free Edition также поддерживается до 10 репозиториев и 10 участников. Поэтому команда из пяти человек может оценить оба решения: покупка требуется далеко не для каждого существующего сканера. Эти инструменты обеспечивают разное покрытие, и одной цены недостаточно, чтобы выбрать набор средств безопасности. Тарифы Semgrep.
Как подключить репозиторий и довести проблему до проверенного исправления
Начните с приложения, которое хорошо знаете, и человека, способного объяснить его правила доступа. Модель угроз — это краткое описание того, что приложение защищает, кому оно доступно и в каких точках доверяет другой системе. Это план здания, по которому инспектор понимает, какие двери должны быть заперты.
- Откройте Plugins в настольном приложении ChatGPT или в браузере. Установите и включите Codex Security Cloud, затем откройте Security Cloud.
- Выберите New scan. Если появится запрос, подключите GitHub и предоставьте доступ к репозиторию, который нужно проверить.
- Выберите репозиторий и совместимое окружение Cloud environment. При необходимости создайте окружение с зависимостями и настройками тестов, нужными проекту.
- В разделе What to scan выберите Repository, затем Start scan. За ходом проверки можно следить в Scans.
- Откройте Findings. Изучите затронутый код, доказательства валидации и рекомендации по исправлению. Неудачная попытка валидации оставляет вопрос открытым; она не доказывает отсутствие уязвимости.
- Если доступна команда Fix with Codex, сгенерируйте патч и проверьте его. После проверки используйте Create draft pull request. Перед слиянием запустите обычные тесты и привлеките ответственного за этот код.
Так называются элементы управления в текущем руководстве по настройке Cloud. Окружение помогает воспроизводить предполагаемые уязвимости, но не гарантирует валидацию каждой проблемы. Как работает валидация.
Для постоянных проверок создайте ещё одно сканирование с параметром Commit changes. В разделе Repositories откройте Monitoring settings: здесь выбирают окружение, задают глубину истории, включают или приостанавливают мониторинг. По мере изменения архитектуры обновляйте модель угроз в Project context. Cloud также поддерживает сканирование репозитория по расписанию, как было объявлено на DevDay. Однако текущее руководство по настройке не указывает ни интервалы, ни квоты, поэтому предполагать наличие лимита на ежедневное сканирование нельзя. Настройка мониторинга, сканирование по расписанию.
Реальный пример сканирования: как разобрать уязвимости Gogs
Пример Gogs показывает, почему до создания задачи нужно учитывать условия развёртывания. OpenAI называет этот репозиторий и приведённые ниже уязвимости среди опубликованных находок Codex Security. Это опубликованный случай сканирования поставщиком, а не новое сканирование, выполненное для этой статьи. Решения по разбору находок ниже — рекомендации на основе уведомлений сопровождающих проекта. Находки, опубликованные OpenAI.
Номер CVE идентифицирует раскрытую уязвимость. Двухфакторная аутентификация, или 2FA, добавляет к паролю второй этап проверки при входе.
В первом уведомлении исправления указаны для 0.13.4 и 0.14.0+dev, во втором — для 0.14.0. Это первые исправленные версии из опубликованных ранее уведомлений, а не рекомендация выбрать сегодня старый релиз. Перед обновлением проверьте, какой выпуск проекта сейчас поддерживается. Уведомление Gogs о кодах восстановления, уведомление Gogs о загрузке вложений.
Фиксируйте только необходимое: развёрнутую ревизию, доступную точку входа, доказательства, ответственного, действие и тест, который подтвердит исправление. Находку можно признать актуальной, отклонить с конкретным обоснованием или оставить открытой для дальнейшего исследования. Помечайте её исправленной только после проверки изменившегося поведения.
Такой же подход нужен при разборе собственного сканирования. Сохранённые отчёты CLI содержат находки и сведения о покрытии. Если новая проверка не повторила прежнюю находку, это не доказывает, что проблему исправили. Обратная связь о ложном срабатывании также не отключает навсегда поиск этого класса уязвимостей. История находок и обратная связь.
Как включить автоматическую проверку безопасности PR
После первичной оценки репозитория добавьте проверку pull request как следующий уровень защиты. В Codex settings выберите репозиторий. В разделе Review security vulnerabilities включите Auto security review и выберите All PRs. Если хотите подключать участников постепенно, используйте персональные настройки.
Выберите On PR open для первоначальной проверки, On every push — для повторной проверки при изменениях кода, либо Whenever code review runs, чтобы запускать её вместе с обычным Code Review. Предварительное сканирование Security Cloud необязательно. Можно использовать его модель угроз или указать путь к файлу модели угроз в репозитории. Настройка Security Review.
Автоматические проверки по умолчанию сообщают о находках уровней High и Critical. Проверки по ручному запросу по умолчанию включают также Medium. Пороги для этих двух режимов настраиваются независимо. Для ручного запуска оставьте в PR комментарий @codex security review, а затем откройте Security Report связанной задачи, чтобы увидеть все доказательства. Видимость находок, опубликованных в GitHub, совпадает с видимостью PR.
Это специализированная проверка безопасности. Обычный Code Review тоже может находить проблемы безопасности, поэтому некоторое пересечение ожидаемо. Более общее руководство по проверкам Codex поможет определить место каждой проверки в процессе.
Как установить CLI для локальной работы и проверки перед коммитом
CLI предоставляет тот же тип исследования репозитория в инструменте, который можно запускать из скриптов. Исходный код распространяется под лицензией Apache 2.0, а публичный npm-пакет называется @openai/codex-security. Открытый исходный код не означает неограниченного доступа к сканированию. Официальный репозиторий и лицензия, требования CLI.
Включённый в Cloud доступ к модели Daybreak Blue действует только внутри Cloud. Он не предоставляет доступ к этой модели через другие продукты Security или API. Перед переносом сканирования в CI проверьте выбранный способ входа и доступность модели. Границы доступа между продуктами.
Даты здесь нужно различать: репозиторий GitHub создан 13 июля 2026 года; его текущая публичная история начинается с инициализирующего коммита от 15 июля, а публикации в npm — с 28 июля. Сама по себе дата 13 июля не доказывает, что лицензированный npm CLI выпустили в тот день. Для воспроизводимой настройки закрепите версию пакета. Метаданные репозитория, первоначальный коммит, история публикаций npm.
Используйте Node.js 22.13.0 или более позднюю версию ветки 22, Node 24 либо Node 26, а также Python 3.10 или выше. Войдите в учётную запись из каталога репозитория и сохраняйте результаты за пределами рабочей копии:
npx @openai/codex-security@0.1.31 login
npx @openai/codex-security@0.1.31 scan . --auth chatgpt \
--output-dir ../codex-security-results --dry-run
npx @openai/codex-security@0.1.31 scan . --auth chatgpt \
--output-dir ../codex-security-resultsИзучите report.md, findings.json и coverage.json. Покрытие может быть полным, частичным или неизвестным. Даже если находок нет, прочитайте сведения об отложенных областях проверки и открытых вопросах. Эти команды соответствуют краткому руководству по CLI.
Установите проверку перед коммитом командой npx @openai/codex-security@0.1.31 install-hook. Она сканирует изменения, добавленные и не добавленные в индекс Git, по умолчанию блокирует коммит при находках уровня High и ошибках сканирования и сохраняет существующий pre-commit-скрипт. Проверка видит оба вида изменений, поэтому при разборе результата в рабочей копии не должно быть посторонних экспериментов. Поведение хука.
Версия пакета и команды выше были проверены при подготовке статьи. Здесь не заявлены ни локальное сканирование с аутентификацией, ни измеренная длительность сканирования, ни его стоимость.
Как добавить CLI в CI и сохранить SARIF
SARIF — стандартный формат файлов с результатами проверок безопасности. Другой инструмент может отобразить каждую проблему рядом с соответствующим местом в исходном коде. Экспорт файла и покупка облачной панели — два отдельных решения.
Создайте секрет CI с именем CODEX_SECURITY_API_KEY для учётной записи или организации API с необходимым доступом к сканированию. С этим ключом раннер может аутентифицироваться без интерактивного входа в ChatGPT. Пример GitHub Actions ниже проверяет доверенные PR из того же репозитория, сравнивает их точные base и head, экспортирует SARIF и сохраняет результаты. Он адаптирует официальный шаблон CI, закрепляет версию пакета, проверенную для этой статьи, и изначально блокирует проверку при находках уровня High. Для запуска в рекомендательном режиме удалите --fail-on-severity high; ошибки сканирования и неполное покрытие всё равно требуют внимания.
Сохраните файл как .github/workflows/codex-security.yml:
name: Codex Security
on:
pull_request:
jobs:
security:
if: github.event.pull_request.head.repo.full_name == github.repository && github.actor != 'dependabot[bot]'
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020
with:
node-version: '26'
- uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97
with:
python-version: '3.14'
- name: Install trusted CLI outside the checkout
run: npm install --prefix "$RUNNER_TEMP/security-cli" --ignore-scripts --no-audit --no-fund @openai/codex-security@0.1.31
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1
with:
ref: ${{ github.event.pull_request.head.sha }}
fetch-depth: 0
persist-credentials: false
- name: Scan and export
env:
OPENAI_API_KEY: ${{ secrets.CODEX_SECURITY_API_KEY }}
CODEX_SECURITY_STATE_DIR: ${{ runner.temp }}/security-state
BASE_SHA: ${{ github.event.pull_request.base.sha }}
HEAD_SHA: ${{ github.event.pull_request.head.sha }}
run: |
set -euo pipefail
cli="$RUNNER_TEMP/security-cli/node_modules/.bin/codex-security"
out="$RUNNER_TEMP/security-results"
base="$(git merge-base "$BASE_SHA" "$HEAD_SHA")"
scan_exit=0
"$cli" scan . --diff "$base" --head "$HEAD_SHA" \
--auth api-key --output-dir "$out" \
--fail-on-severity high --json \
> "$RUNNER_TEMP/security-result.json" || scan_exit=$?
if test -f "$out/scan-manifest.json"; then
"$cli" export "$out" --export-format sarif \
--source-root "$GITHUB_WORKSPACE" \
--output "$out/results.sarif"
fi
exit "$scan_exit"
- name: Keep reports, including SARIF when available
if: always()
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a
with:
name: codex-security-results
path: |
${{ runner.temp }}/security-results
${{ runner.temp }}/security-result.json
retention-days: 7Этот процесс сохраняет код завершения сканирования и экспортирует доступные зафиксированные результаты. Код 0 означает, что выбранная область полностью проверена и соответствует вашей политике критичности. Код 1 означает, что найдена проблема, достигающая заданного порога. Код 2 означает ошибку или неполное покрытие, включая частичное либо неизвестное. Успешная проверка в рекомендательном режиме даёт отчёт о выбранной области, а не сертификат безопасности. Экспорт артефактов и коды завершения.

Чтобы показывать SARIF как предупреждения GitHub code scanning, добавьте шаг upload-sarif из официального шаблона и необходимые разрешения. Публичные репозитории поддерживаются; для приватных и внутренних репозиториев нужно включить GitHub Code Security. Сохранение SARIF в виде артефакта, как в примере выше, позволяет изучить его без обещания бесплатной панели для приватного репозитория. Условия загрузки SARIF в GitHub.
Для GitLab используйте шаблон CI/CD от OpenAI для рабочего внедрения. Он охватывает проверку изменений merge request, сканирование защищённой основной ветки и сканирование по расписанию, включаемое отдельно. Для штатного приёма SARIF нужен GitLab Ultimate 19.2 или выше. Если доступа к такой панели нет, обычные артефакты отчётов остаются отдельным способом работы с результатами.
Задания CI используют права раннера и могут наследовать его окружение. Уберите из задания посторонние учётные данные и запускайте его на доверенных изменениях исходного кода. Когда определитесь с бюджетом, добавьте значение --max-cost. Это оценочный предел: запросы, уже находящиеся в работе, могут привести к его превышению. Требования для CI, контроль расходов.
Пять сценариев: где внедрение принесёт больше пользы
- SaaS-команда меняет вход или доступ между клиентскими организациями. Выполните первичное сканирование, уточните модель угроз и включите Security Review для PR. Это повышает шансы заметить ошибку в разграничении учётных записей до того, как с ней столкнутся клиенты. Ответственный за аутентификацию должен участвовать в проверке.
- Основатель получил в наследство старое приложение. Перед добавлением функций просканируйте репозиторий и назначьте ответственных за находки, признанные актуальными. Вместо неизвестного объёма проблем можно получить короткий список задач с доказательствами, а не требование переписать всё приложение.
- Команда на GitLab без управляемого сканера безопасности. Запускайте CLI для изменений merge request, сохраняйте SARIF и сведения о покрытии как артефакты. Так появится воспроизводимая история проверок в уже используемой командой системе CI.
- Агентство сопровождает несколько клиентских репозиториев. Используйте пакетное сканирование CLI с возможностью возобновления, отдельный архитектурный контекст и историю находок для каждого клиента. Это может сократить повторную настройку и сделать передачу сопровождения точнее. Пакетное сканирование.
- Команда накопила много шумных задач по безопасности. Используйте сценарий разбора накопленных задач Codex Security, чтобы сопоставить результаты сканеров с текущим кодом и защитными механизмами. Так можно получить доказательства того, какие задачи заслуживают времени разработчиков. Исходные сканеры оставьте в работе. Разбор накопленных задач.
Какие две услуги можно построить вокруг Codex Security
Самая сильная возможность — внедрение проверок безопасности для небольших команд с последующим сопровождением. Основатель платит за настройку, работу над моделью угроз, интеграцию с CI и регулярный разбор находок специалистом. Ещё одна оболочка вокруг кнопки сканирования даёт меньше ценности.
В этом запуске оценки DataForSEO для Google в США показали 720 поисковых запросов в месяц для «software vulnerability scanning» и 90 для «code security scanner». Это поиски, а не платящие клиенты; кроме того, более широкая формулировка охватывает задачи за пределами сканирования репозиториев. Цена Semgrep Code — $150 в месяц за пять участников — даёт конкретный ориентир для услуги с узко определённым объёмом. Ценовой ориентир Semgrep.
Минимальная версия, которую можно продавать, могла бы включать один репозиторий заказчика, документированную модель угроз, процесс CI и очередь находок, проверенных специалистом. Работайте с доступом заказчика и показывайте расходы на использование. Основная сложность — сопровождение: нужно достаточно хорошо понимать приложение, чтобы отклонять вводящие в заблуждение находки и проверять чувствительные исправления. Обещание гарантированной безопасности выходило бы за пределы имеющихся доказательств.
Вторая возможность — пакет подтверждающих материалов к релизу для агентств. Агентство могло бы передавать клиенту датированный отчёт об области сканирования, находках, признанных актуальными, оставшихся пробелах и проверенных исправлениях. По широкому запросу «vulnerability scanning tools» оценка составляет 1,900 поисков в месяц в США, но это интерес к инструментам из нескольких направлений безопасности. Такая цифра поддерживает гипотезу для исследования потребностей клиентов, а не подтверждает спрос именно на этот продукт.
MVP мог бы собирать сохранённые артефакты сканирования и утверждённые решения по находкам в компактный клиентский отчёт. Сложность — переносимость и доверие: SARIF можно передать, но ценность услуги создаёт честная интерпретация, в том числе неполного покрытия. Один лишь сгенерированный отчёт легко скопировать. Все поисковые показатели — месячные оценки ключевых запросов DataForSEO, полученные 30 сентября 2026 года; ни один из них не доказывает рост рынка или намерение купить.
Какие проверки Codex Security не заменяет
Сохраните сканирование зависимостей, которое проверяет импортируемые приложением пакеты и их версии, и поиск секретов, который обнаруживает раскрытые учётные данные. Анализ репозитория может исследовать связанную проблему, но не заменяет полный учёт пакетов или систему мониторинга учётных данных.
Сохраните детерминированный SAST там, где важны широкий охват, повторяемость проверок или требования к подтверждению безопасности. OpenAI прямо указывает, что Codex Security дополняет SAST. Попробовать агента можно без покупки платного комплекса, но существующее покрытие от этого не становится лишним. FAQ по Cloud.
Код авторизации должен проверять человек. Аутентификация отвечает на вопрос, кто вы; авторизация — к данным какого клиента и к каким действиям у вас есть доступ. Эти правила зависят от бизнес-логики и условий развёртывания, которые сканер может понять неверно. Поручите ответственному проверить разграничение клиентских организаций, права администраторов, сценарии восстановления доступа и регрессионные тесты. Это инженерная рекомендация, согласующаяся с заявленной поставщиком необходимостью оценки угроз человеком.
Также ограничивайте окружение сканирования. Cloud использует изолированные контейнеры, а локальные проверки и проверки в CI работают с вашими локальными правами. Руководство по безопасности песочниц разбирает отдельную задачу: как контролировать ресурсы, доступные агенту.
Что выбрать: Codex или проверку безопасности Claude Code?
Оставайтесь с Claude Code, если сейчас нужна проверка безопасности ещё не внесённых изменений и команда уже работает с этим инструментом. Запустите /security-review локально или настройте GitHub Action проверки безопасности от Anthropic для комментариев к PR и фильтрации ложных срабатываний. Эти возможности доступны пользователям Claude Code, включая платные тарифы Pro/Max и учётные записи API Console. Настройка проверки безопасности Claude.
Выбирайте Codex Security Cloud, если вам нужен управляемый процесс первичного сканирования репозитория, мониторинга коммитов, проверок по расписанию и подготовки исправлений. CLI подойдёт, когда в локальном процессе или CI важны сохранённая история находок, артефакты покрытия и экспорт SARIF. Это сравнение не устанавливает победителя по точности или стоимости.
В любом стеке проверьте правила фильтрации. В документации GitHub Action проверки безопасности от Anthropic среди исключений указаны отказ в обслуживании и исчерпание ресурсов. Поэтому для проблемы с заполнением диска, подобной случаю загрузки вложений в Gogs, эти правила нужно рассмотреть отдельно. Этот Action — отдельное решение, отличное от облачного продукта Claude Code Review. Репозиторий проверки безопасности Anthropic.
Какими программами проверяют уязвимости?
Выбирайте инструмент под тот уровень, который нужно проверять. Codex Security добавляет анализ репозитория и валидацию. Сохраните отдельные проверки зависимостей и секретов, а также детерминированное сканирование кода там, где требуется такое покрытие. Сканирование сети — другая задача, отличная от проверки исходного кода приложения.
Какой бесплатный сканер уязвимостей выбрать?
При выборе сканера репозитория сначала разделите бесплатный исходный код и бесплатное выполнение проверок. CLI Codex Security распространяется под Apache 2.0, но для сканирования нужен доступ, а использование может быть платным. У Semgrep также есть Free Edition с опубликованными ограничениями по репозиториям и участникам. Оцените оба варианта на своём приложении и с учётом требований к проверкам. Доступ к CLI, Semgrep Free Edition.
SonarQube — это SAST или DAST?
SonarQube Server — инструмент SAST: он изучает исходный код, не запуская приложение. Анализ репозитория и попытки валидации в Codex Security добавляют ещё один способ исследования к привычным проверкам кода. Подход, описанный в документации SonarQube.
В понедельник назначьте одного ответственного за один репозиторий. Выполните первичное сканирование, уточните модель угроз, разберите первые находки и добавьте CI в рекомендательном режиме, прежде чем выбирать порог критичности для блокировки. Перед подключением ещё одного репозитория зафиксируйте расходы на использование и остающиеся пробелы покрытия.
Если хотите встроить эти проверки в существующий процесс разработки вашей команды, я создаю ИИ-системы для промышленной эксплуатации.
- Последнее обновление
- 30 сент. 2026 г.
- Категория
- Build







