“SBOM nedir?” diye soruyorsanız hızlı bir şekilde yetişmeniz gerekecek. Yazılım malzeme listesi, bilgisayar korsanlarının içeri girmesine izin veren, ağınıza açılan kilitli olmayan arka kapılar gibi pusuda bekleyebilecek yazılım güvenlik açıklarına karşı ilk savunma hattıdır.
Bir SBOM, herhangi bir malzeme listesi gibi, listeler Bitmiş ürünün bileşenleri, böylece bir sorun olması durumunda, geliştiriciler nedene odaklanabilir ve mümkün olduğunca az kesinti ile sorunu çözebilir. SBOM’lar, tedarik zinciri güvenliğinin temel taşıdır ve daha dirençli ağları sürdürmek için daha güvenli DevOps ve daha iyi tehdit istihbaratı sağlar.
Bir fidye yazılımı çetesinin bir boru hattı operatörüne saldırarak ABD’deki yakıt dağıtımlarını aksatmasından iki yıl sonra, tedarik zinciri saldırıları hala bir tehdit olmaya devam ediyor. güvenlik uzmanları için birincil derecede rahatsız edicidir. Saldırının ve Log4J güvenlik açığının keşfedilmesinin ardından, güvenlik profesyonelleri gelecekteki saldırıları önlemek için mücadele ederken SBOM’lar ana akım haline geldi.
SBOM’lerin Yükselişi ve Federal Yönerge
SBOM’lar bir an. Yakın tarihli RSA konferansında, federal hükümetin Siber Güvenlik ve Altyapı Güvenliği Dairesi (CISA), mevcut farklı SBOM türleri ve bunların kullanımı hakkında bir kılavuz yayınladı.
CISA, özellikle { 5}İcra Emri 14028 ve Federal hükümete hizmet veren yazılım geliştiriciler için bir raporlama formunun geliştirilmesini gerektiren Yönetim ve Bütçe Ofisi’nin M-22-18 notu. CISA, CBOM gelişimini desteklemek için sektör türlerini bir araya getiren SBOM-a-Rama toplantıları düzenler.
CISA belgesi, 2018’de başlayan bir grup çalışmasının ürünüdür ve benzerleri birçok grup çabası, hantal büyüyebilir. Belgenin girişi, “SBOM verilerinin toplanabileceği farklı yollar göz önüne alındığında, araç çıktıları değişebilir ve farklı kullanım durumlarında değer sağlayabilir.” Bunu göz önünde bulundurarak, bir kuruluş için hangisinin en yararlı olabileceğini netleştirmeye yardımcı olması için mevcut SBOM türlerini ve bazı potansiyel kullanım durumlarını ayrıntılı olarak incelemek faydalı olacaktır.
6 Ana SBOM Türünün Kodunu Çözme
{1 }Yazılım geliştirme yaşam döngüsünün aşamalarında ilerlerken günümüzde kullanılan altı ana SBOM türü vardır:
-
• Tasarım: Bu türden bir SBOM ileriye yönelik veya planlanan yazılımlar için oluşturulur ve var olabilecek veya olmayabilecek bileşenleri içerir. Genellikle bir RFP’ye, konsepte veya spesifikasyonlara dayalı olarak geliştirilir. Teorik olarak mümkün olsa da, bunun nasıl yardımcı olabileceğini ve federal hükümetin desteklediği standartları karşılayan, makine tarafından okunabilir bir belgeyi nasıl oluşturabileceğini hayal etmek zor.
bu tür bir SBOM, nihai ürünün fikri mülkiyetini veya dağıtımını etkileyecek belirli bileşenlerin kullanılması düşünüldüğünde ortaya çıkabilecek lisanslama sorunları konusunda geliştiricileri uyarmak içindir. Bu SBOM, geliştirme ekibinin uyumsuz öğeleri satın alınmadan önce belirlemesine ve onaylanan ve önerilen bileşenlerin bir listesini tanımlamasına yardımcı olabilir. Bu SBOM türü, ekibin iş açısından en iyi açık kaynak bileşenlerini tedarik etmesini de sağlayabilir.
-
• Kaynak: Derleme türüne çok benzer SBOM, bu, geliştirme ortamında oluşturulur ve bir eser oluşturmak için gereken tüm kaynak dosyaları ve bağımlılıkları içerir, ancak oluşturma aracını sürecin dışında tutar. Genellikle yazılım bileşimi analizi (SCA) aracı tarafından üretilir ve bazı açıklamalar manuel olarak eklenir.
Daha yaygın olan yapı türü SBOM yerine bu türün kullanım durumunu görmek zordur. Yine de bu SBOM, dağıtımdan sonra asla çalıştırılmayan savunmasız bileşenleri tespit ederek ekibe dahil edilen bileşenlerin bağımlılık ağacını görme olanağı tanır. Bu nedenle, bilinen güvenlik açıklarının geliştirme sürecinin başlarında kaynağında düzeltilmesini sağlar.
Olumsuz tarafı, çalışma zamanı, eklenti veya dinamik bileşenler dahil olmak üzere diğer SBOM türlerinin bazı ayrıntılarından yoksun olabilir, uygulama sunucusu kitaplıkları gibi.
-
• Derleme: En sık kullanılan SBOM türü olan bu, oluşturma sürecinin bir parçası olarak oluşturulan daha eksiksiz bir envanterdir. son eseri çalıştıracak yazılım. Bu yaklaşım, kaynak dosyalar, bağımlılıklar, oluşturulmuş bileşenler, oluşturma işlemi geçici verileri ve önceki tasarım ve kaynak SBOM’ler gibi verileri kullanır. Yapı sistemindeki tüm bağımlılıkları çözmeye ve bunları yapı makinesinde taramaya dayanır.
Gerçek dosyalar tarandığından, bu tür SBOM, her dosya hakkında zengin verilerle daha eksiksiz bir kayıt oluşturur. karma ve kaynak. Kaynak kodundan elde edilenin ötesinde daha fazla görünürlük sağlamak, SBOM’un geliştirme sürecini doğru bir şekilde temsil ettiğine dair güven oluşturur. Bu güven, SBOM ile bitmiş ürünün aynı iş akışına entegre edilmesinden kaynaklanır.
Olumsuz tarafı, bu SBOM, SBOM’u üretmek için bazen değişmesi gerekebilen yapı ortamına oldukça bağımlıdır.{ 2}
-
• Analiz edildi: Buna bazen “Üçüncü Taraf SBOM” veya ikili SCA denir. Bileşenlerini çözmek için eseri teslim edildiği şekliyle taramaya dayanır; ve paketler, kapsayıcılar ve sanal makine görüntüleri gibi yapıtları analiz etmek için üçüncü taraf araçları kullanır. Derleme ortamına erişmesi gerekmez ve SBOM oluşturma araçlarının gözden kaçırdığı gizli bağımlılıkları bulmak için diğer kaynaklardan gelen SBOM verilerini iki kez kontrol edebilir.
Aslında yapının bileşenlerini tersine mühendislikle işlediğinden, bir SBOM’ye sahip olmayan veya mevcut bir SBOM’yi doğrulayabilen yazılım tüketicileri için yararlı bir araç.
Olumsuz tarafı, bu tür SBOM, bileşenleri test etmek için genellikle daha gevşek buluşsal yöntemlere veya bağlama dayalı risk faktörlerine dayanır . Bu nedenle testler bazı yanlış pozitif sonuçlar verebilir. Ancak OpenSSL libc veya SBOM’ler oluşturan diğer kişiler gibi geliştirme ekibinin farkına varmadan ortamdan bağlanan kitaplıkların bulunması da daha olasıdır.
-
• Dağıtıldı : Adından da anlaşılacağı gibi bu, sistemde dağıtılan yazılımların bir envanteridir ve genellikle kurulu yapıların SBOM’ları ve yapılandırma bilgilerinin derlenmesiyle oluşturulur. Konuşlandırılmış bir ortamda yapılandırma seçeneklerinin analizini ve yürütme davranışının incelemesini birleştirebilir. Bir uygulamayı çalıştıran diğer yapılandırmalar ve sistem bileşenleri de dahil olmak üzere yazılım bileşenlerini incelemek yararlıdır.
Bu tür bir SBOM oluşturmak, yükleme ve dağıtma süreçlerinin değiştirilmesini gerektirebilir ve bu, yapının çalışma zamanı ortamını her zaman yansıtmayabilir çünkü bazıları bileşenlere erişilemeyebilir. Ancak bu tür SBOM’nin geniş kapsamı onu cazip bir seçenek haline getiriyor.
-
• Çalışma Zamanı: Bazen “Enstrümanlı” veya “Dinamik” SBOM olarak adlandırılan bu tür dağıtılan SBOM’lardaki kör noktayı çözer. Bu durumda, araçlar sistemle etkileşime girer ve çalışan bir ortamda kullanılan ve yürütme sırasında belleğe yüklenen yapıtları kaydeder. Bu süreç, kullanılmayan bileşenlerden kaynaklanan hatalı pozitif sonuçların önlenmesine yardımcı olur.
Bu tür bir SBOM, geliştiricilere dinamik olarak yüklenen bileşenler ve harici bağlantılar hakkında görünürlük sağlar ve onlara hangi bileşenlerin etkin, hangi bölümlerinin kullanımda olduğu hakkında ayrıntılar verebilir. Sistemin çalışırken analiz edilmesi gerektiğinden, ağın ek yüküne katkıda bulunur. Tam işlevselliğini kullanması için bir süre çalışıyor olması gerektiğinden, ayrıntılı bilgi toplamak biraz zaman alabilir.
SBOM’ları Seçmeyle İlgili Son Düşünceler
Bunları dikkate alırken ayrıntılara göre, kuruluşunuzun ihtiyaçlarını karşılamak için doğru SBOM türünü veya kombinasyonunu seçmek, yalnızca uygunluk amaçları doğrultusunda mevcut olan ilk SBOM oluşturma aracını seçmekten daha fazla düşünmeyi gerektirir.
Federal hükümetin desteği göz önüne alındığında, SBOM şüphesiz buradadır sağlam bir temel oluşturabilir ve yazılım ürünlerinin güvenliğini sağlamak için ara sıra kaotik olan sürece düzen getirebilir.
Leave a Reply