Açık kaynak yazılımlar modern teknolojinin temel yapı taşlarından biri. Ancak son günlerde yazılım ekosisteminde yayılan yeni bir tehdit, bu temelin ne kadar kırılgan olabileceğini gösterdi. Güvenlik araştırmacıları, Shai-Hulud adı verilen kendini çoğaltabilen kötü amaçlı bir yazılımın (worm) NPM ekosisteminde yüzlerce pakete sızdığını ve bulaştığı sistemlerde hızla yayılabildiğini ortaya koydu.
Yazılım Tedarik Zincirinde Yeni Bir Evre
Bugüne dek gördüğümüz pek çok tedarik zinciri saldırısında saldırganlar tek tek paketleri hedef alırken, Shai-Hulud farklı: bir solucan gibi davranıyor. Bulaştığı sistemlerde depolanmış NPM kimlik bilgilerini çalıyor, ardından bu bilgileri kullanarak başka paketlere kötü amaçlı güncellemeler yayıyor. Böylece tehdit, sadece bir noktadan değil, zincirleme biçimde ekosistemin farklı köşelerine yayılabiliyor.
Araştırmalara göre kimi analizler 180 paket, kimileri ise 700’den fazla paketin etkilendiğini gösteriyor. Bu belirsizlik, tehditin tespit edilmesini ve kapsamının netleşmesini daha da zorlaştırıyor.
Neden Tehlikeli?
Açık kaynak paketleri modern yazılım geliştirme süreçlerinin kalbinde. Birçok kurum, farkında olmadan yüzlerce dependency’yi projelerine entegre ediyor. Bu dependency’lerden yalnızca biri dahi tehlikeli hale geldiğinde, etki zincirleme bir şekilde tüm kurumun altyapısına yayılabiliyor.
Shai-Hulud’un en kritik yönü ise güvenilir görünen paket güncellemeleri üzerinden kendini gizleyebilmesi. Yani geliştirici ekipler olağan bir versiyon yükseltmesi yaptığını düşünürken, aslında sisteme zararlı kod enjekte etmiş oluyorlar.
Unit42’nin Teknik Bulguları
Palo Alto Networks Unit42 araştırmacılarının paylaştığı teknik analizler, solucanın nasıl işlediğini daha net ortaya koyuyor:
-
NPM kimlik bilgilerini ele geçiriyor. Böylece meşru geliştirici hesapları üzerinden yeni, zararlı sürümler yayımlanabiliyor.
-
Kendini kopyalıyor. Tek bir paketi etkilemekle kalmıyor, bulduğu kimlik bilgileriyle yeni paketlere bulaşarak zincirleme bir yayılım sağlıyor.
-
Hedef seçmeden yayılıyor. Belli başlı kritik paketler değil, çok sayıda küçük bağımlılık da bu saldırının parçası olabiliyor.
Unit42 ayrıca, etkilenen kurumların credential rotasyonu, paket bütünlüğü kontrolleri ve bağımlılık taramaları gibi acil adımlar atması gerektiğini vurguluyor.
Ne Yapmalı?
Quasys olarak önerimiz:
-
Kullanılan tüm açık kaynak dependency’lerini tarayın, SBOM (Software Bill of Materials) yaklaşımını benimseyin.
-
Paket güncellemelerinde otomatik geçiş yerine kontrollü, imzalı ve doğrulanmış süreçler uygulayın.
-
NPM kimlik bilgilerini yenileyin, mümkünse en az ayrıcalık (least-privilege) prensibine göre yeniden yapılandırın.
-
Geliştirici hesaplarında 2FA zorunlu hale getirin.
Shai-Hulud, yazılım tedarik zinciri saldırılarının geldiği noktayı net biçimde gösteriyor: artık “sızma” kadar, “yayılma” da işin bir parçası. Açık kaynak, inovasyonun itici güçlerinden biri olmaya devam edecek; ancak güvenlik önlemleri alınmadığında aynı zamanda en zayıf halka haline gelebiliyor. Tüm korunma adımları için en iyi çözüm ve danışmanlık konusunda Quasys’in deneyimli uzmanlarına her zaman info@quasys.com.tr’den ulaşabilirsiniz.