CodeCrucible: LLM Tabanlı SAST için Yeniden Kullanılabilir Şablon
Block'un CodeCrucible aracı, parça bazlı taramalar yerine tüm depoyu analiz eden LLM tabanlı SAST için yeniden kullanılabilir bir tasarım şablonu sunuyor.
Block, LLM destekli statik uygulama güvenliği testi (SAST) aracı CodeCrucible'ı yayımladı; ancak asıl değer aracın kendisinden çok, arkasındaki tasarım şablonunda yatıyor. Ekip, LLM tabanlı SAST sistemlerini dört temel karar etrafında tanımlıyor: kod tabanının bağlam penceresine nasıl sığdırılacağı (sıkıştırma), zafiyetlerin nasıl tespit edileceği, gerçek bulguların nasıl ayıklanacağı (alaka taraması) ve deterministik olmayan çıktının bir pipeline'da nasıl kullanılabilir hale getirileceği (determinizm).
CodeCrucible, CodeQL veya Semgrep gibi geleneksel analiz motorlarının aday bulgular çıkarıp LLM'in yalnızca doğrulayıcı rolü üstlendiği yaygın mimarinin tersine, tüm depoyu tek seferde modele veren bir yaklaşım kullanıyor. Bu sayede LLM, önceden filtrelenmiş parçalar yerine dosyalar arası bağlamı doğrudan değerlendirebiliyor.
Bu yaklaşım, Snyk'in CodeReduce makalesi gibi kodu agresif biçimde sıkıştırıp modele yalnızca ilgili kesiti gösteren yaygın görüşe ters düşüyor. Ekip, büyük bağlam pencerelerinin ve kodun metne göre çok daha iyi sıkışabilmesinin tüm depo analizini pratikte uygulanabilir kıldığını, ölçeklenme sorunlarının ise parçalama ve token bütçelemesiyle mühendislik düzeyinde çözülebileceğini savunuyor.
Mühendisler için asıl kazanım, spesifik araç değil; kendi güvenlik boru hatlarına uyarlanabilecek tasarım kararları, ödünleşimler ve referans uygulamadır.
Bu sentez, kaynağından yapay zeka tarafından üretildi; insan editör ya da elle onay adımı yoktur. Nasıl çalışıyoruz