Codex Security CLI hızlı başlangıç kılavuzu

Codex Security'yi kurun, yerel bir tarama çalıştırın; raporu, bulguları ve kapsamı inceleyin.

Bağımsız Codex Security CLI ile yerel bir depoda standart bir tarama çalıştırın. Bu hızlı başlangıcın sonunda inceleyebileceğiniz ve yeniden başvurabileceğiniz kayıtlı bir rapor elde edersiniz. Codex konuşması içindeki taramalar için Codex Security eklentisini kullanın.

Ön koşulları denetleme

Node.js 24 veya 26'yı ya da 22.13.0 ve üzeri bir Node.js 22 sürümünü kullanın. Ayrıca Python 3.10 veya üzeri gerekir. Python 3.10 için ayrıca tomli gerekir. OpenAI çıkarımını kullanan taramalar Codex Security erişimi gerektirir. Hesabınıza ve deponuza bağlı olarak, deponun tamamını kapsayan taramalar ayrıca Trusted Access for Cyber gerektirebilir.

CLI, işletim sistemindeki izinlerinizle çalışır ve onay beklemek için duraklamaz. Tarama süreçleri ortamınızı devralabilir; bu nedenle başlamadan önce ilgisiz kimlik bilgilerini kaldırın. Bkz. Yerel tarama izinleri.

CLI'ı kurma ve doğrulama

Herkese açık paketi npx ile çalıştırın:

npx @openai/codex-security --version

Komut, kurulu paket sürümünü yazdırır. Paketle gelen eklentinin sürümünü kontrol etmek için info --json, komutları listelemek için ise --help kullanın. Paket değişiklikleri CLI ve SDK sürümlerinde listelenir.

Oturum açma

ChatGPT hesabınızla oturum açın:

npx @openai/codex-security login

Tarayıcısı olmayan bir makinede --device-auth ekleyin ve görüntülenen oturum açma talimatlarını izleyin. Ortamınızda bir API key bulunduğunda bile bu oturumu seçmek için aşağıdaki tarama komutlarında --auth chatgpt kullanın.

API key ve diğer sağlayıcılar için Tarama kimlik doğrulamasını seçme bölümüne bakın. Amazon Bedrock için ChatGPT oturumu veya OpenAI API key yerine AWS kimlik bilgileri ve model erişimini kullanın.

Taramayı hazırlama

Bu yolları, deponuzun yolu ve Git worktree'sinin dışındaki yeni bir sonuç dizininin yoluyla değiştirin:

REPOSITORY=/path/to/repository
SCAN_DIR=/path/outside/repository/codex-security-results

Sonuçlar kaynak kod alıntıları ve güvenlik açığı ayrıntıları içerebilir. Özel bir konum seçin. --output-dir belirtmezseniz CLI kalıcı durum dizinini kullanır.

Hedefi ve çıktı konumunu kontrol edin:

npx @openai/codex-security scan "$REPOSITORY" \
  --auth chatgpt --output-dir "$SCAN_DIR" --dry-run

Başarılı bir deneme çalıştırması yerel girdileri doğrular. Tarama başlatmaz, kimlik bilgilerini yüklemez veya eklentinin Python yorumlayıcısını kontrol etmez; bu nedenle kimlik doğrulamasının ve çalışma ortamı kurulumunun başarılı olacağını göstermez.

İlk taramanızı çalıştırma

Taramayı başlatmak için --dry-run seçeneğini kaldırın:

npx @openai/codex-security scan "$REPOSITORY" \
  --auth chatgpt --output-dir "$SCAN_DIR"

Etkileşimli terminal canlı bir gösterge paneli görüntüler. Etkileşimli olmayan terminaller ilerleme satırları görüntüler. Etkileşimli terminalde de ilerleme satırlarını kullanmak için --headless ekleyin. Gösterge paneli ve kaydedilen günlükler kaynak kod veya kimlik bilgileri içerebilir. Paylaşmadan önce bunları gözden geçirin.

Tarama tamamlandığında stderr, rapor yolunu, bulgu sayısını ve geçen süreyi içerir. Örneğin:

  REPORT    /path/outside/repository/codex-security-results/report.md

  FINDINGS  2 (2 confirmed this scan; 0 previously found; 1 high, 1 medium)
  ELAPSED   42s
  RESULTS   /path/outside/repository/codex-security-results

Varsayılan olarak bir bulgunun önem derecesi taramanın başarısız olmasına neden olmaz. Makine tarafından okunabilir stdout için --json ekleyin. Bulguların CI kontrolünü başarısız kılması için bir önem derecesi politikası belirleyin.

Sonuçları inceleme

Bildirilen dizindeki report.md dosyasını açın. Hedefi ve revizyonu doğrulayın, ardından bulguları tek tek incelemeden önce kapsamı okuyun.

Taramanın tamamlandığını doğrulamak için scan.status alanını scan-manifest.json dosyasında kontrol edin. İncelenen yüzeyler, hariç tutulan yollar, ertelenen işler ve açık sorular için coverage.json dosyasını inceleyin.

Tamamlanan bir tarama, bulgular yapılandırılmış önem derecesi eşiğine ulaşmadıkça 0 koduyla sonlanır; eşiğe ulaşıldığında 1 döndürülür. Kapsam boşlukları çıkış kodunu değiştirmez; dolayısıyla 0 çıkış kodu her dosyanın incelendiği anlamına gelmez. Girdi, yürütme, sonuç bütünlüğü veya zorunlu çıktı hataları 2 döndürür. CLI başvuru belgesi, çıkış kodlarını açıklar.

Her bulgu için etkilenen kodu, saldırganın karşılaması gereken ön koşulları, doğrulama kanıtlarını ve kalan belirsizliği kontrol edin. Kaynak koda dayalı bir bulgu, çalışma zamanında başarılı bir yeniden üretim içermek zorunda değildir. Bir bulguyu ancak kanıtları iddia edilen sorunu desteklediğinde düzeltme için seçin.

Paylaşırken veya arşivlerken tarama dizininin bütünlüğünü koruyun. Dizin, raporun ve destekleyici çıktıların yanı sıra scan-manifest.json, findings.json ve coverage.json içerir. Tam dizin yapısı için Tarama çıktıları bölümüne bakın.

Kaydedilmiş bir taramayı yeniden inceleme

Depoya ait taramaları listeleyin:

npx @openai/codex-security scans list "$REPOSITORY"

Sonuçlardan bir tarama kimliği kopyalayın:

npx @openai/codex-security scans show SCAN_ID

Bulgular içeren etkileşimli bir tarama tamamlandıktan sonra CLI ayrıca bir bulgu gezgini sunar. Bir düzeltme seçmeden önce kanıtları burada inceleyin. Kayıtlı bulgular için doğrulama ve yama komutlarını kullanın.

Sonraki taramayı seçin

Amaç Kılavuz
Seçilen yolları veya bir farkı tarama Tarama hedefini seçme
Derin taramaları kullanma veya çalışma sürelerini sınırlama Derin taramaları yapılandırma
Mimari veya güvenlik politikaları sağlama Güvenlik bağlamı ekleme
Modeli veya akıl yürütme çabasını değiştirme Çalışma zamanını yapılandırma
Tahmini maliyet sınırı belirleme Çıktı ve politika seçenekleri
Birden çok depoyu tarama Toplu taramalar
GitHub çekme isteklerini tarama veya zamanlanmış taramalar çalıştırma GitHub Actions kılavuzu
Başka bir CI sağlayıcısı seçme CI/CD'ye genel bakış

Kimlik doğrulama sorunları, tekrarlanan taramalar arasındaki farklılıklar veya yanlış pozitif bildirimleri için CLI SSS bölümüne bakın.