Yazılımın Her Zaman Eksik Olan Besin Değeri Etiketi
9 Aralık 2021'de bir güvenlik araştırmacısı, Log4j adlı bir Java kütüphanesinde bir açık buldu. 72 saat içinde yüz milyonlarca sistem risk altına girdi.
Sorun sadece güvenlik açığı değildi. Sorun görünürlüktü. Çoğu şirket, Log4j'nin kendi yazılımlarının içinde olup olmadığını bilmiyordu.
Bu an, Yazılım Malzeme Listesi'ni (SBOM - Software Bill of Materials) şirket yönetim kurulları için bir öncelik haline getirdi.
SBOM, yazılımınızdaki her bir bileşenin envanteridir. Kod için bir besin değeri etiketi gibi çalışır. Açık kaynaklı kütüphaneleri, üçüncü taraf paketleri ve dahili parçaları listeler. Sürümleri ve lisansları içerir.
Modern yazılım karmaşıktır. Tek bir uygulama genellikle 500 ila 1.500 arasında üçüncü taraf parça kullanır. Bunları manuel olarak takip edemezsiniz.
Bugün iki ana standart bulunmaktadır:
• SPDX: Lisans uyumluluğuna odaklanır. Hukuk ekipleri için uygundur. • CycloneDX: Güvenliğe odaklanır. DevSecOps ekipleri için uygundur.
Yanıt verme hızınız SBOM'unuza bağlıdır. Log4j krizi sırasında, SBOM'u olan şirketler risklerini saatler içinde tespit etti. SBOM'u olmayan şirketler ise manuel denetimlerle haftalarca uğraştı.
XZ Utils gibi son saldırılar bu boşluğun hâlâ var olduğunu kanıtlıyor. Saldırganlar yaygın kütüphanelerin içine arka kapılar (backdoors) gizliyor. Otomasyon olmadan bunları göremezsiniz.
Düzenlemeler de değişiyor:
• ABD Başkanlık Kararnamesi 14028: Federal tedarikçiler SBOM sağlamalıdır. • FDA Rehberliği: Tıbbi cihazlar SBOM gerektirir. • AB Siber Dayanıklılık Yasası: 2027 yılına kadar AB'deki yazılımlar için SBOM gerektirir.
Nasıl başlanır:
- Bir standart seçin. Güvenlik için CycloneDX veya lisanslar için SPDX kullanın.
- Oluşturma işlemini otomatize edin. İmajlar için Syft veya boru hatları (pipelines) için Snyk gibi araçlar kullanın.
- Veritabanlarına bağlayın. Listenizi NIST NVD veya OSV'ye bağlayın.
- Bir takvim belirleyin. Her derleme (build) ile birlikte bir SBOM oluşturun.
Tüm portföyünüzü aynı anda düzeltmeye çalışmayın. Tek bir uygulama ile başlayın.
Unutmayın, SBOM bir teşhis aracıdır. Size neye sahip olduğunuzu söyler. Sorunu sizin yerinize çözmez. Eğer bir SBOM 23 güvenlik açığı gösteriyorsa, bunları yamalamak (patch) için hâlâ bir plana ihtiyacınız vardır.
En iyi şirketler sadece araçlara sahip değildir. Bir süreçleri vardır. Bir kriz yaşanmadan önce bir bağımlılığın (dependency) kime ait olduğunu bilirler.
Kaynak: https://dev.to/spicykim/the-nutrition-label-that-software-always-lacked-213 Tüm detaylar: lucas8.com/what-is-sbom-software-bill-of-materials
