Gelişmiş bir tedarik zinciri saldırısı, JavaScript geliştirici topluluğu için endişe verici bir gelişmede her hafta yaklaşık 45.000 indirme alan tanınmış NPM paketi Rand-User-Agent’ı hedef aldı.
WebScrapingapi tarafından korunan bu paket, oluşum sıklığına göre randomize, gerçek dünya kullanıcı-ajanı dizeleri oluşturmak için tasarlanmıştır.
Bununla birlikte, son analizler, en son sürümlerinin birçoğuna gömülü kötü amaçlı kodu ortaya çıkardı ve güvenilir bir yardımcı programı, sistemleri uzlaştırabilen ve hassas verileri püskürtebilen gizli bir uzaktan erişim Truva Access Trojan’a (sıçan) dönüştürdü.
.png
)

Enjekte edilen kötü amaçlı kod
Saldırı ilk olarak güvenlik araştırmacıları şüpheli kodları tespit ettiğinde ortaya çıktı. dist/index.js
Paketin 2.0.83, 2.0.84 ve 1.0.110 sürümlerinin dosyası.
Yedi ay önce 2.0.82 sürümüne karşılık gelen GitHub deposuna yapılan son halka açık güncellemenin aksine, NPM’deki bu sonraki sürümler kaynak kodunda bulunmayan gizli, gizlenmiş komut dosyaları içeriyordu.
Bu tutarsızlık, NPM kayıt defterinin projenin resmi deposunu atlayarak doğrudan kurcalandığını şiddetle göstermektedir.
Başlangıçta yatay kaydırma çubuklarının ve gizleme katmanlarının arkasına gizlenen kötü amaçlı kod, komut ve kontrol (C2) sunucuları ile gizli iletişim kanallarını oluşturan bir yükü ortaya çıkarır.
Bir soket uç noktasına bağlanır. http://85.239.62.36:3306
kullanma socket.io-client
Gerçek zamanlı komut alımı için ve dosyaları yükler http://85.239.62.36:27017/u/f
tarafından kolaylaştırılan HTTP Post istekleri aracılığıyla axios
.
Her iki bağımlılık da yoksa dinamik olarak kurulur, .node_modules
Tespitten kaçınmak için kullanıcının ana dizinindeki klasör.
Sıçan yükü uzaktan kumanda sağlar
Yürütme üzerine, sıçan, benzersiz bir istemci kimliği (ana bilgisayar adı ve kullanıcı adını birleştirerek), işletim sistemi türü ve işlem kimliğini C2 sunucusuna aktararak tehlikeye atılan sistemi tanımlar.
Rapora göre, saldırganların dizinleri değiştirmesini, keyfi kabuk komutlarını yürütmesini ve tek tek dosyaları veya tüm dizinleri belirlenen bir uç noktaya yüklemesini sağlayan bir dizi komutu destekler.
Özellikle sinsi bir özellik, hazırlanmış bir yol hazırlayarak Windows sistemlerini hedefler.%LOCALAPPDATA%\Programs\Python\Python3127
-Yol ortam değişkenine.
Bu ince kaçırma, kötü niyetli ikili dosyaların meşru Python araçları olarak maskeli baloya yapmasına izin verebilir ve Python’un yaygın olarak kullanıldığı ortamlardan yararlanabilir.
Bu yetenekler saldırganlara enfekte sistemlere derin erişim sağlar ve ciddi bir veri hırsızlığı ve yetkisiz kontrol riski oluşturur.
Etkilenen sürümleri yükleyen geliştiricilerin, tanımlanan C2 uç noktalarına beklenmedik ağ trafiği de dahil olmak üzere sistemlerini uzlaşma göstergeleri için derhal denetlemeleri istenir.
İyileştirme adımları arasında uzlaşmış paketi kaldırma, ilişkili modüllerin temizlenmesi ve çevre değişkenlerinde veya dosya yüklemelerinde yetkisiz değişikliklerin izlenmesini içerir.
Bu olay, yaygın olarak kullanılan paketlere olan güvenin yıkıcı etki ile silahlandırılabileceği açık kaynaklı ekosistemlerde sürekli tedarik zinciri saldırıları tehdidinin altını çizmektedir.
Daha geniş sonuçlar, bu tür ihlallerin tekrarlanmasını önlemek için NPM salınımlarının arttırılmış incelemesini ve sağlam doğrulama mekanizmalarını gerektirir.
Uzlaşma Göstergeleri (IOC)
Gösterge Türü | Değer | Tanım |
---|---|---|
Kötü niyetli sürümler | 2.0.83, 2.0.84, 1.0.110 | Etkilenen Paket Sürümleri |
Soket bağlantısı | http://85.239.62.36:3306 | Komut Denetimi için C2 Sunucusu |
Dosya Yükle Hedef | http://85.239.62.36:27017/u/f | Veri açığa çıkması için uç nokta |
SOC ekibini kurmak mı? -SOC ekibiniz için ücretsiz Ultimate SIEM Fiyatlandırma Kılavuzu’nu (PDF) indirin -> Ücretsiz İndir