Dördüncü bölüm “Ülkenin Siber Güvenliğinin İyileştirilmesine İlişkin Yönetici Emri” teknoloji alanında pek çok kişiye “Yazılım Tedarik Zinciri” kavramını ve bunun güvence altına alınmasını sağladı. Yazılım yaparsanız ve onu bir veya daha fazla federal kuruma satmayı düşünüyorsanız, sahip olmak buna dikkat etmek. Hiçbir zaman bir devlete satış yapmayı planlamasanız bile, Yazılım Tedarik Zincirinizi anlamak ve onu nasıl güvence altına alacağınızı öğrenmek, daha güçlü bir güvenlik temeline ve sağladığı faydalara fayda sağlayacaktır. Bu makale, enerjinizi güçlendirmenin üç yolunu inceleyecek Yazılım Tedarik Zinciri Güvenliği.
Yazılım Tedarik Zinciriniz nedir? Temelde bir yazılım parçası oluşturmaya yönelik her şeydir: geliştiricinin kod yazdığı IDE’den üçüncü taraf bağımlılıklara, derleme sistemlerine ve komut dosyalarına, üzerinde çalıştığı donanım ve işletim sistemine kadar. Kararsızlıklar ve güvenlik açıkları, kötü niyetli olsun ya da olmasın, başlangıçtan dağıtıma ve hatta ötesine kadar ortaya çıkabilir.
1: Sırlarınızı Gizli Tutun
2023’ün en büyük siber güvenlik olaylarından bazıları kötü aktörler yüzünden meydana geldi kurmak düz metindeki sırlar. Bu bağlamda sırlar, kullanıcı adı ve şifre kombinasyonları, API anahtarları, imzalama anahtarları ve daha fazlası gibi şeylerdir. Kurumsal krallıkların anahtarları, bulunmamaları gereken yerlerde ortalıkta bulundu.
Sourcegraph ele geçirildi Sabit kodlanmış bir erişim belirteci içeren genel bir örneğe kod yayınladıklarında. Token, başka hesaplar oluşturmak ve insanlara Sourcegraph API’sine ücretsiz erişim sağlamak için kullanıldı. Bir bilgisayar korsanı grubu Microsoft’un dahili hata ayıklama ortamına erişim sağladı ve Kilitlenme dökümünde bir imzalama anahtarı buldum e-posta kimlik bilgileri oluşturmalarına olanak tanır.
GitGuardian gibi araçlar, hem eski hem de son teknoloji kodunuzu, yanlışlıkla yayınlanan gizli sırlara veya bunları yayınlama girişimlerine karşı kontrol etmenize olanak tanır. Hangi sırların açığa çıkmış olabileceğini bilmek ve bunları düzeltmek, ayrıca diğer anahtarların dışarı çıkmamasını sağlamak için otomatik araçlar ve kod incelemeleri şeklinde koruma önlemleri almak da önemlidir.
2: Malzeme Listenizi Oluşturmanıza Yardımcı Olmak İçin SCA’yı Kullanın
Üretimde Malzeme Listesi (BOM), bir ürün veya hizmetin yapımı, üretimi veya onarımı için gerekli tüm hammaddeleri, bileşenleri ve yönergeleri içeren kapsamlı bir envanterdir. Hem siber güvenlik düzenlemeleri hem de en iyi uygulamalar, yazılımınızı oluştururken kullanılan tüm parçaların şeffaflığını ve kaynağını sağlayan bir yazılım ürün reçetesi fikrini benimsiyor.
Ancak beyan edilen bağımlılıklar listenizden bir Malzeme Listesi oluşturamazsınız.
NPM, PyPI gibi paket depoları ve açık kaynak çerçeveleri ile kitaplıkların birleştirilmesi, tekerlekleri yeniden icat etmeye gerek kalmadan yazılım geliştirmeyi daha verimli hale getirdiği için övgüyle karşılandı. Bunun yerine geliştiriciler ihtiyaç duydukları işlevselliği uygulayan ücretsiz paketler bulabilir ve bunları yazılımlarına kolayca dahil edebilirler.
Ayrıca geliştiricileri büyüyen bir bağımlılıklar ağına maruz bıraktılar. ” gibi hissettirdiğini görebilirsiniz.baştan aşağı kaplumbağalar“bağımlılıklarınızın bağımlılıkları olan bağımlılıkları olduğu için… Aynı paketin her biri farklı güvenlik açıklarına sahip dört farklı sürümünde alt bağımlılıklarınız bile olabilir.
Yazılım Kompozisyon Analizi araçları, projenizin kod tabanını otomatik olarak tarar ve kullandığınız tüm harici bileşenleri, gidebildikleri en alttaki kaplumbağalar da dahil olmak üzere tanımlar. Daha sonra bu bileşenlerin güncel, güvenli ve lisans gereksinimlerine uygun olduğundan emin olmak için kontroller gerçekleştirirler.
Bu yalnızca hangi bağımlılıkların bilinen istismarlara sahip olduğunu belirlemenize yardımcı olmakla kalmaz, böylece bunları güncelleyebilir veya değiştirebilirsiniz, aynı zamanda potansiyel müşteriler ve düzenleyiciler tarafından incelenmek üzere temiz bir ürün reçetesi oluşturmanız gerektiğinde de büyük bir yardımdır.
3: Gidin Kendinizi Hackleyin
Etik hackleme, en yeni CS mezunlarından daha eskidir. Belirtildiği gibi etik hackleme üzerine yeni bir web semineri“Bilgisayar sistemlerindeki veya ağlarındaki güvenlik açıklarını belirli bir alanda tanımlamak ve kullanmaktır.” sorumlu ve yasal “Sorumlu” ve “yasal” ifadelerine yapılan vurguya dikkat edin.
Temel olarak etik hackerların kullandığı en Bir sistemdeki güvenlik açıklarını bulmak ve bunlardan yararlanmak için “siyah şapkalı” bilgisayar korsanlarının kullandığı tekniklerin aynısını kullanır. Yeterince vurgulanamayacak fark, bunu izin alarak yapmalarıdır. Kendilerine hackleme izni verilen sistemlere sadık kalırlar, ardından her şeyi belgeleyerek keşiflerinin, rapor ettikleri ekip/müşteri tarafından çoğaltılıp analiz edilebilmesini sağlarlar.
Bu genellikle geliştirme sürecinin daha sonraki bir aşamasında ortaya çıksa da önemlidir. Bağımlılıklarınızı belirleyebilirlerse ve savunmasız bağımlılıkları belirleyen kendi SCA’larını yapabilirlerse oyun biter. Korumasız bir giriş noktası bulabilirlerse oyun biter. Bir web uygulamasını test ederler ve konsolda gizli çıktı veren hata ayıklama kodunu bulurlarsa oyun biter. Bazı güvenlik açıkları dikkat çekici olabilir, bazılarının ise yalnızca bir satır hata ayıklama kodunu kaldırması gerekebilir.
Etik korsanlığı sürüm sürecinin bir parçası haline getirmek, hata ödül programlarına katılmak ve daha fazlası, sorunlar için özür dilemeden, bunları düzenleyicilere bildirmeden ve temizlik yapmadan önce düzelttiğinizden emin olmanızı sağlayabilir.
Özet
İster düzenleyicileri ister müşterileri memnun etmeye çalışıyor olun, Yazılım Tedarik Zinciri Güvenliğinizi güçlendirmek, yazılımınızı satmaya daha fazla, bunun için özür dilemeye daha az zaman ayırmanıza olanak tanır. Bu üç ipucu size iyi bir temel sağlarken, SLSA güvenlik çerçevesinde çok daha fazlasını bulabilirsiniz. Çerçeveyi çalıştırmak ve tedarik zincirinizi güvence altına almak, şu şekilde elde edersiniz (SLSA sitesinin ifadesiyle) “‘yeterince güvenli’den, zincirin herhangi bir halkasında mümkün olduğu kadar dayanıklı olmaya.”