Signal Teknoloji, her gün
Son güncelleme: 21 Eylül 2026 English
← Tüm haberler
Güvenlik

Kötü amaçlı indexed-btree, npm’in kurulum kontrollerini çalıştırma anında aşıyor

sorted-btree’yi taklit eden indexed-btree ve dokuz ilişkili paket, yükleme aşamasını temiz gösterip zararlı kodu yalnızca çalışma sırasında tetikleyerek milyonlarca indirme sonrası tespit edildi.

Checkmarx araştırmacıları, meşru sorted-btree kütüphanesini taklit eden kötü amaçlı indexed-btree paketini ortaya çıkardı; bu paket yaklaşık 2 milyon haftalık indirmeye ulaşmış durumda. Saldırganlar ayrıca benzer şekilde konumlandırılmış dokuz ek npm paketiyle birlikte toplamda yüz binlerce indirme rakamına erişti.

GitHub’ın Haziran 2026’da duyurduğu npm güvenlik önlemleri, preinstall, install ve postinstall gibi lifecycle script’lerini açık onay olmadan çalıştırmayı engelliyor. Bu modelde, bağımlılıkların kurulum aşamasında zararlı script çalıştırması sınırlandırılıyor ve kullanıcıdan onay isteniyor.

indexed-btree ise herhangi bir kurulum script’i tanımlamıyor; bunun yerine loader kodunu BTree.prototype.set() metoduna gizliyor. Zararlı yük yalnızca bu fonksiyon belirli bir anahtar değeriyle çağrıldığında, yani çalışma zamanında tetikleniyor. Böylece paket, kurulum sırasında temiz görünerek npm v12’nin onay mekanizmalarını ve birçok statik taramayı atlatıyor.

Checkmarx, malware loader’ın doğrudan kullanıcıların en çok çağırdığı BTree.prototype.set fonksiyonu içine gömüldüğünü belirtiyor. Bu fonksiyon, sharedLoad.min.js adlı, ilk aşama olarak çalışan ve standart taint analizi ile statik analiz araçlarından saklanacak şekilde karmaşıklaştırılmış bir dosyayı tetikliyor.

Kötü amaçlı kod çalıştığında, sistem mimarisi, hostname, CPU, bellek ve uptime gibi barındırma ortamına dair bilgiler toplayabiliyor ve bunları sabitlenmiş Slack ve Telegram kanallarına dışarıya aktarabiliyor. Ardından Ethereum Sepolia test ağındaki bir akıllı sözleşmeyi komuta kontrol bilgisi için sorguluyor; burada X25519 ile bir AES anahtarı türetip, sözleşme içinde tutulan ikinci aşama payload’ı bu anahtarla şifre çözerek alıyor.

Operatörler saldırıyı sonlandırmak istediklerinde, malware’e kendi dosyalarını silme ve paketin kaynak kodundan tetikleyici kısmı kaldırma komutu verebiliyor. Bu da geriye dönük adli analiz yapmayı ve bulaşma izlerini bulmayı zorlaştırıyor.

Saldırganlar, proje güvenilir görünmesi için düzenli commit geçmişine sahip, özenle hazırlanmış bir GitHub deposu ve geliştirici hesabı oluşturdu. Checkmarx, aynı operasyonla bağlantılı dokuz ek npm paketini daha tespit etti; bunlar da anlamlı indirme sayılarına ulaştıktan sonra npm’den kaldırıldı.

Bu ek paketler arasında ordered-kv-index, btree-leaderboard, priority-slot-queue, btree-range-store, btree-core, btree-time-index, btree-lru-cache, neighbor-key-map ve sliding-score-window yer alıyor; her biri yüz binlerce indirmeye ulaşmış durumda.

Neden önemli

Bu kampanya, npm’in yeni kurulum odaklı savunmalarının tek başına yeterli olmadığını ve saldırganların zararlı kodu paketlerin çalışma zamanı yollarına taşıyarak bu engelleri aşabildiğini gösteriyor. indexed-btree ve ilişkili paketlerin milyonlarca indirmeye ulaşması, sahte ama bakımlı GitHub projelerinin ve yüksek indirme sayılarının artık başlı başına güven sinyali sayılamayacağını ortaya koyuyor. Toplanan sistem bilgileri ve ikinci aşama yüklerin blok zinciri üzerinden gizlice yönetilmesi, tespiti ve soruşturmayı zorlaştırıyor. Geliştirici ekosistemi için sonuç, bağımlılık seçerken sadece kurulum script’lerine ve temel statik analizlere güvenmek yerine, çalışma zamanı davranışını izleyen ek kontrollerin zorunlu hale gelmesi.

Kaynaklar