Açık kaynak ekosistemindeki kötü amaçlı paketler, geleneksel yazım hatası avı (typosquatting) taktiklerinin çok ötesine geçti. Sonatype'ın son analizine göre, incelenen 4309 kötü amaçlı paketin %91'i, klasik typosquatting yerine isim varyasyonu taktikleri kullanıyor. Yalnızca %9'u, geleneksel savunma mekanizmalarının yakalamak üzere tasarlandığı yazım hatalarına dayanıyor. Bu değişim, tehdidin artık masum benzerliklerden ibaret olmadığını gösteriyor.
Saldırganlar, güvenilir bir proje adını harf harf kopyalamak yerine, meşru bir projeye bitişik görünen isimler oluşturuyor. Sonatype, en yaygın taktik olarak sonek ekleme (%43,6) kaydederken, önek ekleme, hedef terimleri gömme, bağımlılık karışıklığı desenleri ve sürüm taklidi gibi yöntemler de kullanılıyor. Bu taklit paketler, geliştiricilerin iş akışına doğal olarak uyan eklentiler, yapılandırmalar ve yardımcı araçlar gibi görünüyor.
Bu paketlerin en yaygın davranışları arasında ana bilgisayar ve sırların dışarı sızdırılması (exfiltration) yer alıyor. Bunu, dropper ve backdoor yüklemeleri takip ediyor. Rutin bir kurulum, böylece kimlik bilgisi hırsızlığı ve ardından gelen sistem ihlalleri için bir yol haline geliyor. Geliştiricilerin farkında olmadan bu tuzaklara düşmesi, tüm yazılım tedarik zincirini riske atıyor.
Önemli Gelişmeler
Gerçek kod dilini ödünç alan bu saldırılar, geleneksel güvenlik araçlarını atlatmakta oldukça başarılı. Örneğin, bir paket adına eklenen '-helper' veya '-config' gibi son ekler, geliştiricilere tanıdık gelen bir yapı sunuyor. Aynı şekilde, popüler bir kütüphanenin adını alıp önüne 'py-' veya 'node-' gibi bir önek eklemek de yaygın bir yöntem. Bu taklitler, otomatik tarama araçlarının çoğu tarafından fark edilmiyor.
Sistem Güvenliği
Bağımlılık karışıklığı (dependency confusion) desenleri de sıklıkla kullanılıyor. Saldırganlar, özel bir paket adını alıp aynı adı kamuya açık bir depoda yayınlıyor. Geliştiricilerin derleme sürecinde yanlışlıkla kamuya açık olanı tercih etmesiyle kötü amaçlı kod devreye giriyor. Sürüm taklidi ise, meşru bir paketin yeni bir sürümü gibi görünen ancak aslında kötü amaçlı kod içeren paketler oluşturmayı içeriyor.
Nasıl Önlem Alınmalı?
Bu yeni tehdit karşısında geliştiricilerin ve kuruluşların alabileceği önlemler bulunuyor. İlk olarak, yalnızca resmi ve güvenilir kaynaklardan paket indirmeye özen gösterilmeli. İkinci olarak, paket adlarını dikkatlice incelemek ve beklenmedik varyasyonları sorgulamak önemli. Üçüncü olarak, yazılım tedarik zinciri güvenliği için otomatik araçlar kullanmak ve düzenli bağımlılık denetimleri yapmak gerekiyor. Ayrıca, açık kaynak topluluklarının şüpheli paketleri raporlama mekanizmalarını aktif kullanması teşvik edilmeli.
Sonatype'ın bu çalışması, açık kaynak güvenliğinde yeni bir dönemin habercisi. Artık sadece yazım hatalarına odaklanan savunmalar yetersiz kalıyor. Geliştiricilerin ve güvenlik ekiplerinin, daha karmaşık ve gerçekçi taklitlere karşı hazırlıklı olması gerekiyor. Bu bağlamda, sürekli eğitim, güncel tehdit istihbaratı ve çok katmanlı güvenlik yaklaşımları hayati önem taşıyor.
Kaynak: infosecurity-magazine.com