Kötü amaçlı bir npm paketinin, JavaScript ekosisteminin en yaygın kullanılan oluşturma araçlarından birinin kimliğine büründüğü tespit edildi. Benzer paket, geliştirici makinelere yapılan bir tedarik zinciri saldırısında çok aşamalı bir Windows uzaktan erişim truva atını (RAT) gizledi.
JFrog'un yeni analizi, postcss-minify-selector-parser adlı paketin ayrıntılarını verdi. Bu takma adın amacı, paketin haftalık 150 milyondan fazla indirmeye sahip son derece popüler bir kitaplık olan postcss-selector-parser gibi görünmesine olanak sağlamaktı.
Yasa dışı paket, bu yazının yazıldığı sırada npm kayıt defterinde hâlâ mevcuttu.
Bağımlılık İncelemesinden Geçmek İçin Tasarlandı
JFrog, paket adının gerçek pakete yeterince yakın olması nedeniyle hızlı bir bağımlılık incelemesi sırasında makul göründüğünü söyledi.
Önemli Gelişmeler
Aynı postcss, selector ve parser anahtar kelimelerini kullandı ve orijinal postcss-selector-parser'ı kendi bağımlılıkları arasında listeledi.
JFrog aynı kümede bağımlılıklarla bağlantılı iki paket daha buldu: postcss-minify-selector ve aes-decode-runner-pro. Abdrizak adını kullanan bir yayıncının izini sürüyordu. İki paketteki kodu çözülen veriler aynı Windows saldırı zincirine yol açtı.
Nasıl Önlem Alınmalı?
Paket kimliğine bürünme hakkında daha fazlasını okuyun: Saldırganlar Yazım Yazmayı Aşarak Gerçekçi Paket Kimliğine Bürünmeye Geçiyor
Npm İçe Aktarma'dan Windows Yüküne
Kötü amaçlı kod, paket içe aktarılır aktarılmaz çalıştırıldı. JFrog, onu içe aktarmanın ayrıştırıcı mantığını barındırması gereken bir dosyaya çekildiğini buldu. Bunun yerine dosya büyük bir şifrelenmiş blob ve bir AES-256-GCM kod çözücü taşıyordu. Kodu çözüldükten sonra, bir damlalık görevi görerek diske bir PowerShell betiği yazıp çalıştırdı.
Uzmanların Görüşleri
PowerShell betiği daha sonra sürücü sitesi gibi görünen bir etki alanından, nvidiadriver[.]net adlı bir veri yükünü indirdi. Windows yaması gibi görünen bir ZIP arşivi indirdi ve onu geçici klasöre açtı.
Arşivde paketlenmiş bir Python çalışma zamanı ve Nuitka tarafından derlenmiş birkaç modül bulunuyordu. Bir VBScript önyükleyici, RAT'ı başlatmak için bunları başlattı.
RAT, Tarayıcı Girişlerini Çalmak İçin Geliştirildi
Sonuç ve Değerlendirme
Kötü amaçlı yazılım, çalıştırıldıktan sonra şifreli HTTP üzerinden komut sunucusuyla iletişim kurdu. Bir kayıt defteri çalıştırma anahtarı aracılığıyla kalıcılığı ayarlar.
Ayrıca ana bilgisayarın profilini çıkardı ve bir sanal makine içinde çalışıp çalışmadığını kontrol etti. JFrog, RAT'ın uzak bir kabuk açabileceğini, dosyaları makineye ve makineden taşıyabileceğini ve kurbandan veri çalabileceğini söyledi.
Teknik Analiz
Kötü amaçlı yazılım aynı zamanda Google Chrome'u da hedef aldı. JFrog, kayıtlı oturum açma bilgilerini çalmak ve tarayıcının daha yeni uygulamaya bağlı şifrelemesini yenmek için tasarlandığını söyledi.
Firma, paketleri yükleyen herkesin bunları kaldırmasını, geçici klasörü ve kayıt defteri izlerini kontrol etmesini ve ardından depolanan kimlik bilgilerini döndürmesini istedi.
Gelecekte Ne Bekleniyor?
JFrog, kümeyi bir paket kimliğine bürünme saldırısı olarak tanımladı: "Savunuculara yönelik önemli ders, benzer yapı bağımlılıklarını yalnızca zararsız adlandırma gürültüsü olarak değil, potansiyel dağıtım mekanizmaları olarak ele almaktır."