npm paketleri, TurkoRAT kötü amaçlı yazılımını NodeJS EXE gibi görünen bir şekilde gizler


npm

Araştırmacılar, NodeJS kitaplıklarının adını taşıyan ve hatta NodeJS’ye benzeyen ancak bunun yerine uğursuz bir truva atı bırakan bir Windows yürütülebilir dosyasını paketleyen birden fazla npm paketi keşfettiler.

Gizlilikleri ve çok düşük tespit oranları göz önüne alındığında bu paketler, araştırmacılar tarafından tespit edilmeden önce iki aydan fazla bir süredir npm’de bulunuyordu.

Aradığınız düğüm değil

Yazılım güvenlik firması ReversingLabs’teki araştırmacılar, iki aydan fazla bir süredir npmjs.com kayıt defterinde gizlenen üç npm paketini analiz ettiler.

Toplamda 1.200’den biraz fazla indirilen bu paketlerin isimleri:

paket Versiyonlar Toplam İndirme
nodejs-encrypt-agent 6.0.2, 6.0.3, 6.0.4, 6.0.5 521
nodejs-cookie-proxy-aracı 1.1.0, 1.2.0, 1.2.1, 1.2.2, 1.2.3, 1.2.4 678
eksen-proxy 1.7.3, 1.7.4, 1.7.7, 1.7.9, 1.8.9, 1.9.9 23

“İlk olarak iki aydan daha uzun bir süre önce yayınlandı, nodejs-encrypt-agent ReversingLabs araştırmacıları raporlarında ilk bakışta meşru bir paket gibi görünüyor” dedi.

“Ancak, tutarsızlıklar araştırmacılarımıza kırmızı bayraklar çıkardı. Buna rağmen, ilk düşüncemiz yine de bu paketin kötü amaçlı olamayacağıydı. Öyle olsaydı, kesinlikle npm yöneticileri tarafından fark edilir ve kaldırılırdı.”

Rağmen nodejs-encrypt-agent başlangıçta alarm vermedi ve hatta meşru paketlerin işlevselliğini yansıttı. ajan tabanı, daha fazlası da vardı, araştırmacılar keşfetti.

kötü niyetli paket nodejs-encrypt-agent için npm sayfası
kötü amaçlı paket için npm sayfası nodejs-encrypt-agent (Geri Dönüş Laboratuvarları)

“Ancak, küçük ama çok önemli bir fark vardı: nodejs-encrypt-agent paketi, ReversingLabs tarafından analiz edildiğinde kötü amaçlı olduğu bulunan taşınabilir bir yürütülebilir (PE) dosya içeriyordu” diye yazıyor araştırmacılar.

Bahsedilen PE dosyası, hemen şüpheli görünmeyebilecek yaklaşık 100 MB boyutunda bir Windows çalıştırılabilir ‘lib.exe’ dosyasıdır.

nodejs-encrypt-agent npm paketinde bulunan lib.exe
nodejs-encrypt-agent npm paketinde bulunan lib.exe (bilgisayarın sesi)

Dosya, PE başlıkları ve meta verileri, kodu ve işlevselliği açısından gerçek NodeJS uygulamasına çok benzer. Aslında, BleepingComputer ‘lib.exe’ çalıştırılabilirlerinin varyantlarının belirli sürümlerde mevcut olduğunu gözlemledi. nodejs-encrypt-agent çok düşük tespit oranı vardı:

lib.exe için Düşük VirusTotal Algılama Oranı
Belirli ‘lib.exe’ dosyaları için düşük VirusTotal algılama oranı (Virüs Total)

için de aynı durum söz konusudur. lib.exe ReversingLabs tarafından özel olarak analiz edilmiştir. VirusTotal analizi, yürütülebilir dosyanın Node.js’yi nasıl taklit ettiğini ve meşru uygulamadan aynı meta verileri içerdiğini ortaya çıkarır.

Kötü amaçlı paketi analiz eden ReversingLabs araştırmacısı Igor Kramarić, içinde bir veya daha fazla JavaScript dosyası olduğunu tespit etti. nodejs-encrypt-agent meşru işlevsellik içeriyordu, ancak aynı zamanda paketlenmiş ‘lib.exe’yi sessizce çalıştıran koda da sahipti:

EXE, npm paketi içinden çalışır
paketlenmiş ‘lib.exe’yi çalıştıran npm paketi (Geri Dönüş Laboratuvarları)

ReversingLabs’ten Lucija Valentić, “Yukarıda gözlemlediğimiz gibi: npm paketinde keşfedilen PE’nin kötü niyetli olduğuna dair çok az şüphe vardı” diyor.

Söz konusu kötü amaçlı yürütülebilir dosya, TurkoRAT bilgi hırsızı olarak adlandırılan, özelleştirilebilir bir “kapıcı” ve tespit edilmesi zor olan kimlik bilgileri hırsızını çalıştırıyordu.

“Gözlemlenen kötü niyetli veya şüpheli davranışların listesi uzundu; kullanıcı oturum açma kimlik bilgileri ve kripto cüzdanları dahil olmak üzere virüslü sistemlerden hassas bilgileri çalmak için tasarlanmış özelliklerin yanı sıra kötü amaçlı dosyaları analiz etmek için kullanılan korumalı alan ortamlarını ve hata ayıklayıcıları yanıltın veya bozguna uğratın.”

TurkoRAT Kodu
EXE (ReversingLabs) içinde paketlenmiş bir TurkoRAT kod parçacığı

Beğenmek nodejs-encrypt-agentsürümleri nodejs-cookie-proxy-aracı ayrıca bu truva atını düşürdü, ancak tespit edilmekten kaçınmak için arada ek bir adım attı.

‘lib.exe’yi doğrudan içinde paketlemek yerine, nodejs-cookie-proxy-aracı listelenmiş eksen-proxy bir bağımlılık olarak ve önceki paket bir kullanıcı tarafından her kurulduğunda çekilecek olan kötü amaçlı yürütülebilir dosyayı içeren ikincisidir.

“Bu kez, saldırganlar bunu bir bağımlılık olarak gizledi, eksen-proxyiçinde bulunan her dosyaya aktarıldı nodejs-cookie-proxy-aracı 1.1.0, 1.2.0, 1.2.1 ve 1.2.2″ sürümleri, araştırmacıları ortaya koyuyor.

Tüm kötü amaçlı paketler, ReversingLabs tarafından tespit edildikten kısa bir süre sonra npm kayıt defterinden kaldırıldı. Ancak, bunların iki aydan fazla bir süredir npm’de kalması gerçeği, incelenmemiş açık kaynak paketlerinin yazılım tedarik zinciri güvenliği için oluşturabileceği devam eden riski vurguluyor, araştırmacıları uyarıyor.



Source link