Y­a­z­ı­l­ı­m­ ­T­e­d­a­r­i­k­ ­Z­i­n­c­i­r­i­n­i­z­i­ ­G­ü­v­e­n­c­e­y­e­ ­A­l­m­a­k­ ­İ­ç­i­n­ ­P­r­a­t­i­k­ ­R­e­h­b­e­r­

Y­a­z­ı­l­ı­m­ ­T­e­d­a­r­i­k­ ­Z­i­n­c­i­r­i­n­i­z­i­ ­G­ü­v­e­n­c­e­y­e­ ­A­l­m­a­k­ ­İ­ç­i­n­ ­P­r­a­t­i­k­ ­R­e­h­b­e­r­


Yazılım üreten kuruluşların tedarik zincirlerini güvence altına almaları ve yazılımlarının bütünlüğünü sağlamaları konusunda artan düzenleyici ve yasal baskılar sürpriz olmamalıdır. Son birkaç yılda yazılım tedarik zinciri, saldırılarını büyük mertebelerde zorla çoğaltma fırsatlarını gören saldırganlar için giderek daha çekici bir hedef haline geldi. Örneğin, 2021’deki Log4j ihlalinden başka bir yere bakmayın; burada Log4j (Apache tarafından sağlanan ve sayısız farklı uygulamada kullanılan açık kaynaklı bir günlük kaydı çerçevesi), binlerce sistemi riske sokan güvenlik açıklarının köküydü.

Log4j’nin iletişim işlevselliği savunmasızdı ve bu nedenle bir saldırganın, daha sonra sistemde yürütülebilecek günlüklere kötü amaçlı kod eklemesi için bir açıklık sağladı. Güvenlik araştırmacıları, keşfedildikten sonra, çoğu başarılı hizmet reddi (DoS) saldırılarına dönüşen milyonlarca saldırı girişimi gördü. Gartner’ın son araştırmalarından bazılarına göre, kurumsal kuruluşların yarısına yakını 2025 yılına kadar bir yazılım tedarik zinciri saldırısının hedefi olacak.

Peki yazılım tedarik zinciri nedir? Yeni başlayanlar için, bir kuruluşun hem içinde hem de dışında yazılım eserlerinin geliştirilmesine ve sunulmasına katkıda bulunan tüm kodların, kişilerin, sistemlerin ve süreçlerin toplamı olarak tanımlanır. Yazılım tedarik zincirinin güvenliğini sağlamayı bu kadar zorlaştıran şey, modern uygulamalar geliştirmenin karmaşık ve yüksek oranda dağıtılmış doğasıdır. Kuruluşlar, uygulamalarını oluşturmak ve dağıtmak için kullanılan geniş kapsamlı kod depoları ve yapı kayıtları, CI/CD işlem hatları ve altyapı kaynaklarının yanı sıra eşi benzeri görülmemiş sayıda açık kaynak bağımlılığına güvenen küresel geliştirici ekiplerini kullanır.

Güvenlik ve uyumluluk, kurumsal kuruluşlar için sürekli olarak en önemli endişe kaynağı olsa da, kuruluşun yazılım tedarik zincirlerini güvence altına alma zorluğu giderek daha da büyüyor. Pek çok kuruluş DevSecOps uygulamalarını operasyonel hale getirme konusunda maddi ilerleme kaydediyor ancak bunların büyük bir kısmı hâlâ ne yapacaklarını anlamanın ilk aşamalarında kendilerini buluyor.

Bu makaleyi tam olarak bu yüzden bir araya getirdik. Aşağıdakiler hiçbir şekilde kapsamlı bir liste olmasa da, yazılım tedarik zinciri güvenliği çabalarınızın doğru yönde ilerlemesini sağlamak için burada dört yol gösterici ilke bulunmaktadır.

Güvenliği Uygularken Yazılım Tedarik Zincirinizin Tüm Yönlerini Düşünün

Kod tabanlarının %80’inden fazlasının en az bir açık kaynak güvenlik açığına sahip olduğu göz önüne alındığında, OSS bağımlılıklarının yazılım tedarik zinciri güvenliğinin merkezi odağı olması mantıklıdır. Bununla birlikte, modern yazılım tedarik zincirleri, güvenlik duruşları gözden kaçırılan veya kuruluş içinde uygun şekilde yönetilecek kadar geniş bir şekilde anlaşılmayan diğer varlıkları da kapsar. Bu varlıklar, her biri güvenlik kontrolleri ve düzenli uyumluluk değerlendirmesi gerektiren kod depoları, CI ve CD işlem hatları, altyapı ve yapı kayıtlarıdır.

Gibi çerçeveler CI/CD için OWASP İlk 10 Ve CIS Yazılım Tedarik Zinciri Güvenlik Karşılaştırması. Bu çerçevelere bağlı kalmak, yalnızca birkaçını saymak gerekirse, en az ayrıcalık ilkesinin uygulanması, kapsayıcıların ve kod olarak altyapının güvenlik açıkları ve yanlış yapılandırmalar için taranması, yapıların yalıtılması, uygulama güvenlik testlerinin entegre edilmesi ve sırların uygun şekilde yönetilmesi gibi ayrıntılı RBAC gerektirecektir.

SBOM’lar Sıfır Günleri ve Diğer Bileşen Sorunlarını Düzeltmek İçin Önemlidir

Beyaz Saray tarafından 2021 ortalarında ülkenin siber güvenlik duruşunu güçlendirmek amacıyla yayınlanan 14028 sayılı Yönetici Kararı’nın bir kısmı, yazılım üreticilerinin federal müşterilerine bir yazılım malzeme listesi (SBOM’lar) sağlamasını zorunlu kılıyor. SBOM’lar aslında bir yazılım parçasını oluşturan tüm bileşenlerin görünürlüğünü sağlamayı amaçlayan resmi kayıtlardır. Yazılımın oluşturulmasında kullanılan tüm açık kaynak ve üçüncü taraf kitaplıkları, bağımlılıkları ve bileşenleri listeleyen ayrıntılı, makine tarafından okunabilir bir envanter sağlarlar.

Bir kuruluşun EO 14028’e tabi olup olmadığına bakılmaksızın, yazılım eserleri için SBOM’lar oluşturmak ve yönetmek değerli bir uygulamadır. SBOM’lar, bileşen sorunlarını veya sıfır gün güvenlik açıklarını düzeltmek için vazgeçilmez bir araçtır. Aranabilir bir depoda depolandığında, SBOM’lar belirli bir bağımlılığın nerede mevcut olduğuna dair bir harita sağlar ve güvenlik ekiplerinin güvenlik açıklarını etkilenen bileşenlere kadar hızlı bir şekilde izlemesine olanak tanır.

Yazılım Geliştirme Yaşam Döngüsünü Kod Olarak Politika ile Yönetin

Modern uygulama geliştirme dünyasında, kaya gibi sağlam korkuluklar, güvenlik ve uyumluluğu tehlikeye atan hataları ve kasıtlı eylemleri ortadan kaldırmak için önemli bir araçtır. Yazılım tedarik zinciri boyunca doğru yönetim, kuruluşun doğru şeyleri yapmayı kolaylaştırdığı ve yanlış şeyleri yapmayı son derece zorlaştırdığı anlamına gelir.

Birçok platform ve araç, hızlı bir şekilde uygulanabilen kullanıma hazır politikalar sunarken, Açık Politika Aracısı endüstri standardını temel alan kod olarak politika, tamamen özelleştirilebilir politikaların yazılmasına ve uygulanmasına olanak tanır. Tedarikçi, sürüm, paket URL’si ve lisans gibi kriterlere dayalı olarak erişim ayrıcalıklarından OSS bağımlılıklarının kullanımına izin verilmesine veya reddedilmesine kadar her şeyi yöneten politikalar.

SLSA’yı Kullanarak Yazılım Eserlerinize Olan Güveni Doğrulayabilir ve Sağlayabilirsiniz

Kullanıcılar ve tüketiciler bir yazılımın güvenilir olduğunu nasıl bilebilirler? Bir yazılım eserinin güvenilirliğini belirlerken kodu kimin yazdığı, kimin oluşturduğu ve hangi geliştirme platformunda oluşturulduğu gibi şeyleri bilmek istersiniz. İçinde hangi bileşenlerin bulunduğunu bilmek de bilmeniz gereken bir şey olacaktır.

Yazılıma güvenip güvenmeme kararı, menşei (yazılımın kökenleri ve gözetim zinciri kaydı) doğrulanabildiğinde mümkündür. Bunun için, Yazılım Eserleri (SLSA) çerçevesi için Tedarik Zinciri Seviyeleri yaratıldı. Yazılım üreten kuruluşlara, yazılım tedarik zincirinin herhangi bir yönü hakkında bilgi toplama, yapay yapıların ve bunların yapılarının özelliklerini doğrulama ve güvenlik sorunları riskini azaltma yeteneği verir. Uygulamada, yazılım üreten kuruluşların SLSA çerçeve gereksinimlerini benimsemeleri ve bunlara uymaları ve yazılım tedarik zincirleri boyunca yazılım eserleri hakkında kimliği doğrulanmış ifadeler (meta veriler) olan yazılım kanıtlarını doğrulamak ve oluşturmak için bir araç uygulaması esastır.

Modern yazılım tedarik zincirini güvence altına almanın büyüklüğü ve karmaşıklığı göz önüne alındığında, yukarıdaki kılavuz yalnızca yüzeyseldir. Ancak modern uygulamalar oluşturma ve devreye alma dünyasındaki diğer her şey gibi bu uygulama da hızla gelişiyor. Başlamanıza yardımcı olması için okumanızı öneririz Yazılımı Güvenli Şekilde Nasıl Teslim Edersiniz? – Güvenlik duruşunuzu güçlendirmek ve işinize yönelik riski en aza indirmek için tasarlanmış en iyi uygulamalarla dolu bir e-kitap.



siber-2

Popular Articles

Latest Articles