Yayına giren bileşenleri doğrulayın
TamamlandıBağımlılıkları, derleme girdilerini ve artefaktın kökenini inceleyin. İncelenen kaynak kodunu üretime ulaşan yazılımla ilişkilendirin.
Yayımlayan TaigaNasıl yazıyoruz?
Anladığınızı kontrol edinBir bağımlılık taraması bilinen güvenlik açığı olmadığını bildiriyor. Bu neyi ortaya koyar?Alıştırmayı yapın
Neler öğreneceksiniz?
- Bağımlılık envanterini güvenlik kanıtından ayırt edin.
- Paket adının ve başarılı kurulumun neden yeterli olmadığını açıklayın.
- Bir artefaktı kaynak koduna ve derleme sürecine kadar izleyin.
Bağımlılığın gerekli olup olmadığını sorgulayın
Bir ajan, sorunu çözüyor gibi görünen bir paket önerebilir. Öneri, paketin var olduğunun veya uygun olduğunun kanıtı değildir. Kurulumdan önce kayıt deposunu, yayıncıyı, paket adını ve sürümü tam olarak doğrulayın.
Kurgusal bir CSV dışa aktarma işlevi için çalışma ortamı gerekli davranışı zaten sağlayabilir. Yeni bir paket yine de uygun olabilir, ancak bakım yükü ve kod yürütme yolları ekler. Uygulama geliştirme çabasını, bağımlılığın sürekli sorumluluklarıyla karşılaştırın.
Lisansı ve desteklenen çalışma ortamını inceleyin. Bakım faaliyetlerini ve ilgili güvenlik duyurularını kontrol edin. Tanıdık bir ad, başka bir kayıt deposunda farklı bir paketi ifade edebilir. Başarılı kurulum yalnızca kurulumun tamamlandığını gösterir.
Kurulum ve derleme davranışını inceleyin
Bağımlılıklar kurulum veya derleme sırasında kod çalıştırabilir. Bu ortamlarda erişim bilgilerini ve ağ erişimini sınırlandırın. Güvenilmeyen bir pull request’i işleyen işe üretim gizli bilgilerini açmayın.
Ekosistem destekliyorsa Git’e kaydedilmiş bir lockfile kullanın. Derlemenin bu dosyaya uymasını zorunlu kılın. Beklenmedik dolaylı bağımlılıklar dahil, lockfile değişikliklerini kaynak kodu değişikliğiyle birlikte inceleyin. Sürümü sabitlemek tekrar üretilebilirliği iyileştirir; güvenlik açığı olan bir sürümü güvenli yapmaz.
NIST SSDF, yazılımın korunmasını ve yaşam döngüsü boyunca geliştirme uygulamalarını kapsar. Derleme ortamını tasarlarken bu geniş bakış açısını kullanın. Çerçeveyi okuyun.
Envanteri köken bilgisinden ayırın
Yazılım bileşen listesi, yani SBOM, yazılımdaki bileşenleri kaydeder. Bir bileşen kaygı yarattığında etkilenen yayınları belirlemenize yardımcı olur. Bileşenlerin güvenli olduğunu tek başına kanıtlamaz.
Köken bilgisi, bir artefaktın nasıl üretildiğini ele alır. SLSA, derleme ve girdileri hakkında bilgi içeren bir köken kaydı biçimi tanımlar. Doğrulama, bu bilgiyi güvenilen bir üreticiye ve kullanmayı planladığınız artefakta bağlamalıdır. “Provenance” adlı bir dosya yeterli değildir. SLSA köken bilgisi.
Dışa aktarma hizmeti için inceleyebileceğiniz bir zincir kaydedin:
- İncelenen commit, kabul edilen kaynak kodunu tanımlar.
- Derleme, girdilerini ve yürütme ortamını tanımlar.
- Artefaktın sabit bir özet değeri vardır.
- Kontroller, inceledikleri artefaktı veya kaynak kodunu tanımlar.
- Dağıtım, hedef ortama yerleştirilen artefaktı kaydeder.
Tanımlı bir doğrulama süreci olmadan, onaydan sonra farklı biçimde yeniden derlemeyin. latest gibi değiştirilebilir bir etiket daha sonra farklı bir imaja işaret edebilir.
Bir bulgunun ne anlama geldiğine karar verin
Güvenlik açığı bulgusu bağlam gerektirir: etkilenen sürüm, erişilebilen davranış, maruziyet, mevcut düzeltme ve sonuç. Geçici bir istisnanın dayandığı kanıtı kaydedin. İstisnaya sorumlu, son geçerlilik tarihi ve inceleme tetikleyicisi atayın.
Bir bulgu uygulanabilir değil diye tarayıcının tamamını devre dışı bırakmayın. Tarama tamamlanamadığında temiz sonuç elde edildiğini söylemeyin. Zaman aşımı, desteklenmeyen paket veya erişilemeyen güvenlik duyurusu akışı, kanıt eksikliğidir.
Son olarak, yayın sonrası güncellemeleri planlayın. Yeni güvenlik duyuruları, dün kabul edilmiş artefaktı etkileyebilir. Hizmet sorumlusunun envantere, müdahale sürecine ve düzeltilmiş bir yayın üretme kapasitesine ihtiyacı vardır.
Tekrarlanan taramaları doğrulanmış üretim düzeltmelerine bağlamak için sürekli güvenlik açığı yönetimi dersiyle devam edin.
Alıştırmayı yapın
Bir paket ekleyen kurgusal CSV dışa aktarma değişikliği seçin. Gerekliliği, tam paket kimliğini, sürümü, lisansı, bakımı, güvenlik açığı bulgularını ve kurulum davranışını kapsayan bir kabul notu yazın. İncelenen commit'ten dağıtılan artefakta uzanan yolu çizin.
Çalışma sayfasını indir (Markdown)Bu seçimi kaldırmak, bu tarayıcıda kaydedilmiş tüm ilerlemeyi siler.
İlerleme bu tarayıcıda kalır. Hesap ve takip yok.