Kodlama güvenlik açıkları
Gömülü bir sistemdeki işletim sistemi yazılımı, uygulama yazılımı veya ürün yazılımı, herhangi bir dijital altyapının temel bileşenleridir. Ancak, dijitalleşme projelerinde artan hızlanma ve son teslim tarihi baskısı genellikle zorunlu bilgi güvenliği hususlarının ihmal edilmesine yol açmaktadır. Yazılım geliştirme gereksinimleri genellikle işlev merkezlidir ve yapıcı yönleri vurgular, böylece potansiyel güvenlik açıklarının yıkıcı görünümü çoğunlukla gerçek geliştirme hedefleriyle taban tabana zıttır: Birçok programcı da siber güvenlik konusunda yapılandırılmış ve keskinleştirilmiş bir görüşten yoksundur.
Bu koşullar altında, kar amacı gütmeyen MITRE Corporation'ın her yıl CVE (Common Vulnerabilities and Exposures) listesinde yayınladığı çok sayıda güvenlik açığının da gösterdiği gibi, geliştirme ekipleri yazılımlarının kodlamasını sürekli olarak gözden geçirmekte ve tutarlı bir şekilde güvence altına almakta zorlanmaktadır. Tanınmış yazılım üreticilerinin bile düzenli güvenlik yamaları, güvenlikle ilgili hataları piyasaya sürülmeden önce tespit etmek bir yana, bunları kapatmanın ne kadar zor bir iş olduğunun göstergesidir.
Açık kaynak kodu - özel bir durum
Kendi geliştirdikleri yazılımları kodlarken, programcılar açık kaynak kodlu kütüphanelere ve modüllere başvurmayı severler. Bunun pratik avantajları açıktır: Tekerleği tekrar tekrar icat etmek zorunda kalmazsanız, bu teknoloji artışından, hızlı geliştirmeden, daha düşük geliştirme maliyetlerinden, açık kaynak kodu aracılığıyla daha fazla şeffaflıktan ve açık standartlar ve arayüzler aracılığıyla daha yüksek birlikte çalışabilirlikten faydalanırsınız.
Açık kaynak kodun yüksek derecede güvenlik sunduğu da sıklıkla söylenir çünkü kod birçok kullanıcı tarafından doğrulanmıştır ve açık kaynak topluluğunun sürü zekası hızlı ve etkili hata düzeltmeye olanak tanır.
Pratikte, bu güven artık farklılaştırılmış ve kritik bir şekilde değerlendirilmelidir. Bunun en ciddi örneği, Kasım 2021'de keşfedilen, Java uygulamaları için yaygın olarak kullanılan loglama kütüphanesi Log4J'deki sıfır gün güvenlik açığı Log4Shell'dir. Alman Federal Bilgi Güvenliği Ofisi (BSI) tarafından Log4Shell için yayınlanan kırmızı alarm seviyesini duymuş olabilirsiniz. Apache Vakfı aracılığıyla güvenilir bir şekilde işleyen yarı standart olarak dağıtılan Log4J kütüphanesi, 2013 yılından bu yana Amazon AWS gibi tanınmış web hizmetleri de dahil olmak üzere birçok sistemde kendini kanıtlamıştır.
Bu iyi geliştirilmiş ve aynı zamanda bakımı yapılan kütüphanelerin karmaşıklığı, içe aktaran bir geliştiricinin kendi birleşik yeni geliştirmesinde genellikle farkında olmadığı, ancak saldırganlar tarafından istismar edilebilecek güçlü işlevleri dolaylı olarak sağlar.
Açık kaynak bileşenlerinin bir diğer güvensizlik faktörü de tedarik zinciri saldırıları olarak adlandırılan, yani açık kaynak topluluğunun bir parçası gibi davranan ve kod geliştirmeye yardımcı olan kötü niyetli aktörler tarafından amaçlanan yerleşik güvenlik açıklarıdır. Böyle bir güvenlik açığı, bilgisayar korsanlarının çok sayıda alt kullanıcı kuruluşa saldırması için son derece etkili bir yoldur. O halde bu saldırı vektörünün hızla büyümesine şaşmamak gerekir: Sonatype tarafından yapılan bir çalışmada 2020 ve 2021 yılları karşılaştırıldığında %650'lik bir artış tespit edilmiştir.