Türkçe

Güvenlik bulgularını düzeltme ve doğrulama

Kabul edilen bulguları, odaklı regresyon kanıtları içeren asgari yamalara dönüştürün.

Kabul edilen bir güvenlik bulgusunu odaklı ve doğrulanmış bir yamaya dönüştürmek için Codex Security'yi kullanın. Security çalışma alanında çalışabilir veya düzeltme iş akışını bir istemden, komut satırından ya da CI/CD içinden çalıştırabilirsiniz. Codex sorunu doğrular ve test güvenli ve uygulanabilir olduğunda, düzeltmeden önce başarısız olup sonrasında geçen odaklı bir regresyon testi ekler. Ayrıca meşru davranışın çalışmaya devam ettiğini kontrol eder. Regresyon testi güvenli değilse veya uygulanabilir değilse Codex kanıt boşluğunu kaydeder ve bunun yerine tekrarlanabilir en güçlü doğrulama yapıtını sağlar.

Yamanın ve doğrulamanın kalitesini değerlendirebilmek için kabul edilen tek bir bulguyu düzelterek başlayın. İş akışı standartlarınızı karşıladıktan sonra her bulguyu ayrı bir görev veya CI/CD işinde işleyerek daha fazla kabul edilmiş bulguya ölçekleyin. Her düzeltmenin kapsamını sınırlı tutmak, kod değişikliklerinin ve kanıtların incelenmesini kolaylaştırır.

Kullanıcı arayüzünde bir bulguyu düzeltme

Findings bölümünden veya Scans içindeki tamamlanmış bir taramadan kabul edilen bir bulguyu açın. Kanıtlarını inceleyin; ardından odaklı tek bir düzeltmeyi oluşturmak, incelemek, uygulamak ve doğrulamak için Patch öğesini kullanın.

  1. Odaklı bir yama oluşturma

    Bulguyu açın, Patch sekmesini ve ardından Generate patch öğesini seçin. Codex mümkün olduğunda sorunu doğrular veya yeniden üretir ve seçili checkout'u değiştirmeden bir yama

yapıtı yazar.

  1. Önerilen diff'i inceleme

    Değiştirilen her kaynağı, regresyon testini ve doğrulama yapıtını okuyun. Geniş yeniden düzenlemeleri, ilgisiz temizliği veya başka bir güvenlik denetimini zayıflatan değişiklikleri reddedin.

  2. Yamayı yerel olarak uygulama

    Apply patch öğesini yalnızca diff kabul edilebilir olduğunda seçin. Codex, oluşturulan yamayı çalışma ağacına birebir uygular ve bu durumu kaydeder. Devam etmeden önce çalışma ağacı diff'ini inceleyin.

  3. Düzeltmeyi doğrulama

    Verify fix öğesini seçin. Codex, özgün yeniden üreticiyi veya mevcut en güçlü istismar kontrolünü yeniden çalıştırır. Bir regresyon testi güvenli ve uygulanabilir olduğunda Codex, testin düzeltmeden önce başarısız, düzeltmeden sonra başarılı olduğunu kontrol eder. Test

güvenli değilse veya uygulanabilir değilse Codex, kanıt boşluğunu kaydeder ve bunun yerine tekrarlanabilir en güçlü doğrulama yapıtını sağlar. Ayrıca meşru davranışı, yakındaki atlatma yollarını ve ilgili depo testlerini kontrol eder.

  1. Bulguyu bilinçli olarak kapatma

    Doğrulama, bir bulguyu otomatik olarak kapatmaz. Komutları, sonuçları ve kalan kanıt boşluğunu inceleyin; ardından bulguyu doğru bir

gerekçeyle kapatın veya daha fazla çalışma için açık tutun.

İncelemeye hazır, oluşturulmuş Codex Security yaması
Oluşturulan güvenlik düzeltmesini checkout'unuza uygulamadan önce inceleyin.

CLI üzerinden bir bulguyu düzeltme

Tarama, kayıt, duyuru, ifşa, güvenlik değerlendirmesi veya dahili incelemeden gelen bir bulgunuz zaten varsa Codex CLI'ı kullanın:

Aşağıdaki komutlar, Codex Security'nin codex exec tarafından kullanılan CODEX_HOME içine zaten kurulduğunu varsayar. Yeni bir CI çalıştırıcısında pazar eklentileri varsayılan olarak kurulu değildir.

Use $codex-security:fix-finding to fix finding <finding-id> from <report-path>. Validate the issue, make the smallest safe change, and add a focused regression test that fails before the fix and passes after it. If that test is unsafe or infeasible, record the proof gap and provide the strongest repeatable validation artifact instead. Verify that the issue no longer reproduces.

Bilinen kaynağı, hedefi, saldırgan girdisini, etkiyi, beklenen değişmezi, yeniden üreticiyi, etkilenen dosyaları ve doğrulama komutunu ekleyin. Codex, eksik teknik ayrıntılar için depoyu inceleyebilir; ancak ürün ilkesi veya amaçlanan güvenlik değişmezi hakkında tahminde bulunmadan önce sormalıdır.

Otomatik bir çalıştırma için kodu checkout ettikten, bulgu raporunu kullanılabilir hâle getirdikten ve eklentiyi ilgili CODEX_HOME içinde hazırladıktan sonra istemi codex exec öğesine aktarın:

codex exec --sandbox workspace-write 'Use $codex-security:fix-finding to fix finding <finding-id> from <report-path>. Validate the issue, make the smallest safe change, and add a focused regression test that fails before the fix and passes after it. If that test is unsafe or infeasible, record the proof gap and provide the strongest repeatable validation artifact instead. Verify that the issue no longer reproduces.'

CI/CD içinde bulguları tarama ve düzeltme

Bu becerileri çağırmadan önce Codex Security'yi çalıştırıcının CODEX_HOME konumunda hazırlayın. Aşağıdaki komut kurulu eklentiyi kullanır; eklentiyi kendisi kurmaz.

CI/CD içinde değişiklik taramasını düzeltmeden ayırın ve taramanın checkout'u değiştirmemesini zorunlu kılın. Tamamlanan tarama dizinini iş yapıtı olarak koruyun, bulguları inceleyin ve düzeltme için kabul edilen her bulgu için ayrı bir Codex görevi veya işi başlatın.

Hem değişiklik taramasını hem düzeltmeyi --sandbox workspace-write ile çalıştırın. Tarama, geçici yapıtları kaydetmek için bu izne ihtiyaç duyar; ancak istemi yine de Do not modify the checkout gerektirmelidir. Düzeltme, odaklı yamayı ve doğrulama kanıtlarını yazmak için aynı izne ihtiyaç duyar.

  1. Değişiklik için temel ve uç revizyonları çözümleyin.
  2. Checkout'u değiştirmeden bu diff üzerinde $codex-security:security-diff-scan çalıştırın.
  3. Tam tarama dizinini koruyun ve düzeltilecek bulguları seçin.
  4. Kabul edilen her bulgu için $codex-security:fix-finding öğesini bir kez çağırın.
  5. Odaklı tek bir yama ile düzeltmeden önce başarısız olup sonrasında geçen bir regresyon testi oluşturun veya bu testin neden güvenli ya da uygulanabilir olmadığını kaydedin.
  6. Özgün sorunu ve meşru davranışı bağımsız olarak doğrulayın.

Önce checkout'u değiştirmeden değişikliği tarayın:

codex exec --sandbox workspace-write 'Use $codex-security:security-diff-scan to review changes from <base-revision> to <head-revision> for security regressions. Do not modify the checkout.'

Ardından tamamlanan taramadaki kabul edilmiş bir bulguyu düzeltin:

codex exec --sandbox workspace-write 'Use $codex-security:fix-finding to fix finding <finding-id> from <completed-scan-directory>. Validate the finding, generate one minimal patch, and add a focused regression test that fails before the fix and passes after it. If that test is unsafe or infeasible, record the proof gap and provide the strongest repeatable validation artifact instead. Verify that the issue no longer reproduces.'

Kalan her kabul edilmiş bulgu için ikinci komutu bağımsız bir görev veya işte yineleyin. Doğrulamadan sonra her yamayı normal kod inceleme ve sürüm süreciniz aracılığıyla birleştirin.