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.
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.
Ö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.
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.
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.
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.
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.
- Değişiklik için temel ve uç revizyonları çözümleyin.
- Checkout'u değiştirmeden bu diff üzerinde
$codex-security:security-diff-scançalıştırın. - Tam tarama dizinini koruyun ve düzeltilecek bulguları seçin.
- Kabul edilen her bulgu için
$codex-security:fix-findingöğesini bir kez çağırın. - 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.
- Ö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.