Belgeler / Güvenlik

Güvenlik Merkezi

Kodunuzu hiçbir yere göndermeden bağımlılıkların, kodun, bellek sızıntılarının ve yarış koşullarının yerel analizi.

Güvenlik Merkezi, kodunuzu hiçbir yere göndermeden projenin yerel bir analizini yapar. Çevrimiçi kaynaklar ve yapay zekâ incelemesi isteğe bağlıdır ve ayrıca etkinleştirilir.

Nasıl açılır

  • Sağ ray → Daha fazla araç → Güvenlik Merkezi («Bulgular ve gizli bilgiler»).
  • Komut paleti (Ctrl+Shift+A): Güvenlik Merkezi (açıklar, sızıntılar, yarışlar).
  • Kalite panelinin Önleme sekmesinden.

İlk seferde Projeyi tara, değişikliklerden sonra Yeniden tara düğmesine basın.

Sekmeler

Sekme Ne gösterir
Özet Genel durum ve en önemli bulgular.
Bağımlılıklar Bilinen açıkları olan veya desteği sona ermiş kitaplıklar.
Kod Proje kodundaki güvenlik açıkları.
Bellek ve eşzamanlılık Kaynak sızıntıları ve yarış koşulları.
Lisanslar Bağımlılıkların lisansları.
Yapay zekâ incelemesi Yapay zekâ incelemesi ile sizin etkinleştirdiğiniz, modelle yapılan isteğe bağlı bir analiz.

Bağımlılıklar

Açık kaynakları

Seçenekler → Açık kaynakları bölümünde:

Kaynak Durum Ne gönderir
Yuli yerel veritabanı Her zaman etkin Hiçbir şey. Yaygın Java kitaplıklarının (Struts, Log4j, commons, Spring, Jackson…) bilinen CVE'leri, desteği sona ermiş bileşenler ve lisanslarla çevrimdışı çalışır.
OSV.dev Varsayılan olarak kapalı Her bağımlılığın yalnızca grubu, artifact'ı ve sürümü.
OWASP Dependency-Check İsteğe bağlı Yerel bir kurulum kullanır.

Yalnızca yerel veritabanıyla analiz tamamen çevrimdışıdır. GitHub Advisory ve NVD'yi de sorgulamak istiyorsanız OSV.dev'i etkinleştirin.

Kapsam

  • Test kodunu dahil et.
  • Sunucu jar’larını dahil et.

Kod

Kod analizi Java, JSP, web.xml ve Hibernate tanımlayıcılarını kapsar.

Kategori Örnekler
Enjeksiyon İstek verileriyle oluşturulan SQL.
XSS JSP veya servlet'lerde kaçışlanmamış çıktı.
Güvensiz serileştirmeden çıkarma Güvenilmeyen kaynaklardan okunan nesneler.
XXE Korumasız XML ayrıştırıcıları.
Zayıf kriptografi Eskimiş algoritmalar.
TLS Her sertifikaya güvenen yöneticiler.
Açık yönlendirmeler İstekten alınan hedefler.
Gizli bilgiler Koda yazılmış veya günlüklere yazdırılmış kimlik bilgileri.

Metot bazında bir kirlenme (taint) modeli, istekten (getParameter, getHeader, çerezler) ve Struts ActionForm'larından gelen değerleri izler. Bir bulgu kullanıcı verisi aldığında güveni ve önem derecesi artar.

Bellek ve eşzamanlılık

Sızıntılar

  • Kapatılmamış JDBC bağlantıları veya akışlar.
  • remove() çağrılmayan ThreadLocal.
  • Sınırsız büyüyen statik önbellekler.
  • Hiç durmayan iş parçacıkları.

Yarış koşulları

  • Servlet'lerde, Struts Action'larında ve singleton'larda paylaşılan durum.
  • Statik SimpleDateFormat.
  • Double-checked locking.
  • Check-then-act kalıpları.

Çalışma sırasında bir sızıntıyı doğrulamak için JVM panelini kullanın: tekrarlanan bir bellek histogramı hangi sınıfların büyüdüğünü gösterir. Bkz. Çalıştırma ve hata ayıklama.

Raporlar nerede saklanır

Projenin, Yuli'nin Git dışında tuttuğu .yuli/security/ klasöründe.

Düzenleyicide önleme

Güvenlik Merkezi'ne ek olarak Yuli, siz yazarken ve ajanın her düzenlemesinden sonra her dosyayı canlı denetler: OWASP Top 10, CWE, performans, sağlamlık ve erişilebilirlik. Bulgular, başvurusu ve nasıl düzeltileceğiyle birlikte altı çizili görünür. Bkz. N−1'e karşı ölçüm.

SBOM ve tedarik zinciri

Malzeme listesi (SBOM), Yönetişim Merkezi'nin Tedarik zinciri sekmesinde SBOM yaz ile üretilir. Biçimler: CycloneDX 1.5 JSON ve SPDX 2.3 JSON. Bkz. Gate ve Yönetişim Merkezi.

Ajanla birlikte

Ajan Güvenlik Merkezi'ni yuli_security_center ve yuli_security_scan araçlarıyla sorgulayabilir ve diğer her değişiklik gibi değişiklik penceresinden geçen düzeltmeler önerebilir.