Microsoft bünyesindeki GitHub, npm paket yöneticisinin 12. sürümünü duyurarak yazılım tedarik zinciri saldırılarına karşı önemli adımlar atıyor. 9 Haziran'da yayınlanan blog yazısında, npm geliştirici ekibi, paket yöneticisini örtülü güven modelinden açık onay modeline geçirecek üç güvenlik odaklı kırıcı değişikliği açıkladı. Temmuz 2026'dan itibaren kullanıma sunulacak bu değişiklikler, ekosistemin bağımlılıkları ele alma biçiminde köklü bir dönüşüm anlamına geliyor.
npm v12'de varsayılan olarak değiştirilecek üç izin verici ayar bulunuyor: kurulum betiklerinin otomatik çalıştırılmasının engellenmesi, özel Git URL'lerinden bağımlılık çözümlemenin engellenmesi ve resmi olmayan kaynaklardan paket indirilmesinin yasaklanması. Geliştiriciler bu geçişe hazırlanmak için npm 11.16.0 veya daha yeni sürüme yükselterek uyarıları alabilir ve yeni 'npm approve-scripts' komutuyla bağımlılıklarını denetleyerek yerel bir izin listesi oluşturabilir.
Güvenlik uzmanları bu adımı desteklemekle birlikte uyarılarda da bulunuyor. Semgrep CEO'su Isaac Evans, yazılım tedarik zinciri saldırılarının ekonomisinin değiştiğini belirterek yapısal savunmaların önemine vurgu yaptı. Ancak kamu paket yöneticileri bu kapıları kapatırken saldırganların Artifactory ve Nexus gibi özel kurumsal depolara yönelebileceği uyarısında bulundu. Güvenlik araştırmacısı Paul McCarty (6mile) ise güncellemelerin geliştirici sürtünmesine yol açabileceğini ve birçok geliştiricinin uyarıları görmezden gelerek betikleri körü körüne onaylayabileceğini belirtti.
Nasıl Önlem Alınmalı?
McCarty ayrıca, masum paket bakımcılarının yeni engelleri aşmak için şüpheli geçici çözümlere başvurabileceğini, bunun da güvenlik araştırmacıları için meşru ve kötü niyetli paketleri ayırt etmeyi zorlaştıracağını vurguladı. Bu durum, zararsız paketlerin tuhaf görünümlü davranışları ile kötü niyetli paketlerin birbirine benzediği bir ortam yaratarak saldırganlara daha iyi bir gizlenme alanı sağlayabilir. GitHub'ın bu adımı, yazılım tedarik zinciri güvenliğinde önemli bir ilerleme olsa da, geliştirici alışkanlıkları ve güvenlik farkındalığı konusunda daha fazla çalışma gerektiğini ortaya koyuyor.