Kötü amaçlı NuGet paketleri, kötü amaçlı yazılım yüklemek için MSBuild’i kötüye kullanıyor


Kötü amaçlı Nuget paketleri

Yeni bir NuGet yazım hatası kampanyası, kodu yürütmek ve kötü amaçlı yazılımları gizlice yüklemek için Visual Studio’nun MSBuild entegrasyonunu kötüye kullanan kötü amaçlı paketleri gönderiyor.

NuGet, geliştiricilerin projeleri için çalışmaya hazır .NET kitaplıklarını indirmelerine ve dahil etmelerine olanak tanıyan açık kaynaklı bir paket yöneticisi ve yazılım dağıtım sistemidir.

Npm ve PyPI gibi yazılım dağıtım sistemlerini hedef alan tehdit aktörleri, son dönemde ağırlıklı olarak Windows kullanıcılarını hedef alan ve yazılım geliştiriciler arasında oldukça popüler hale gelen NuGet’e ilgi gösteriyor.

MSBuild ile kodu gizleme

En son NuGet kampanyası, 15 Ekim 2023’te ReversingLabs tarafından tespit edildi ve kötü amaçlı yazılım yüklemek için farklı yazım hatası paketleri kullanıldı.

Bu kampanyada görülen paketlerden bazıları şunlardır:

  • CData.NetSuite.Net.Framework
  • CData.Salesforce.Net.Framework
  • Chronos.Platformlar
  • DiscordsRpc
  • Kraken.Değişim
  • KucoinExchange.Net
  • MinecraftPocket.Sunucu
  • Monero
  • Pathoschild.Stardew.Mod.Build.Config
  • SolanaCüzdan
  • ZendeskApi.Client.V2

Bu kampanyadaki yeni unsur, indiricileri kurulum komut dosyalarına dahil etme şeklindeki standart yaklaşımı kullanmak yerine, bu paketlerin kod yürütme için NuGet’in MSBuild entegrasyonunu kullanmasıdır.

NuGet’in MSBuild entegrasyonları, yerel projeleri desteklemek, derleme ve test sürecini otomatikleştirmek ve geliştiricilere özel eylemler tanımlama ve bağımlılıkları çözme yeteneği vermek amacıyla NuGet v2.5’te sunulan bir özelliktir.

NuGet ‘\build’ klasörü içeren bir paket yüklediğinde otomatik olarak bir MSBuild ekler öğesini projeye ekleyin ve o klasördeki .targets ve .props dosyalarına başvurun. Derleme işlemi bu dosyaları yapılandırmaları, özellikleri veya özel görevleri ayarlamak için kullanır.

Yazılım projelerinin oluşturma ve paketleme sürecini geliştirmek için eklenmesine rağmen bu yeni NuGet entegrasyonu, bir paket yüklendiğinde komut dosyalarını otomatik olarak çalıştırmak için yeni bir yöntem eklemesi nedeniyle getirdiği güvenlik etkileriyle ilgili endişeleri artırdı.

ReversingLabs tarafından tespit edilen vakada, kötü amaçlı kod, “build” dizinindeki .targets dosyasını Paketlerin önceki sürümlerinde kullanılan PowerShell betiklerinin işlevselliğini uygulayan özellik.

'Hedefler' dosyasının içindeki kötü amaçlı kod
‘Hedefler’ dosyasının içindeki kötü amaçlı kod (ReversingLab’lar)

Çalıştırıldıktan sonra kod, harici bir adresten yürütülebilir bir dosya alır ve onu yeni bir süreçte çalıştırır.

Kod yürütme süreci
Kod yürütme ve kötü amaçlı yazılım yükleme işlemi (ReversingLab’lar)

Bu teknik ilk olarak 2019 yılında bir güvenlik araştırmacısı tarafından, NuGet paketleri yüklendiğinde MSBuild işleminin kod çalıştırmak için nasıl kötüye kullanılabileceğini göstermek amacıyla tanıtıldı.

ReversingLab’dan Karlo Zanki, BleepingComputer ile paylaşılan bir raporda “Öncelikle, dosyanın ilk satırındaki ‘IAmRootDemo’ dize yapısı bizi bu yürütme tekniğinin köküne götürdü” diye açıklıyor.

“Birkaç yıl önce, 2019’da IAmRoot paketi C. Augusto Proiete tarafından yayınlandı. Paketin amacı: ‘Herhangi bir NuGet paketinin makinenizde rastgele kod çalıştırabileceğini göstermek.'”

Ancak bu, tehdit aktörlerinin kötü amaçlı NuGet paketlerinde bu özelliği kullandığı belgelenen ilk vakadır.

Mevcut kampanyaların gelişimi

ReversingLabs, tespit ettikleri ve kaldırılan NuGet paketlerinin Ağustos 2023’te başlayan ve devam eden bir kampanyanın parçası olduğunu bildirdi.

Ancak Ekim ortasına kadar MSBuild entegrasyonlarını kötüye kullanmadı.

Önceki sürümler, kötü amaçlı yazılım yükünü GitHub deposundan almak için PowerShell komut dosyalarını (‘init.ps1’) kullanıyordu.

Bu, saldırganların saldırılarını daha gizli hale getirmek için tekniklerini sürekli olarak geliştirdiklerini gösteriyor.

Analistler ayrıca Phylum tarafından ayın başında bildirilen ve saldırganların kripto projelerini taklit etmek ve SeroXen RAT sunmak için yazım hatası kullandığı bir kampanyayla güçlü bağların gözlemlendiğini de bildirdiler.

ReversingLabs, tehdit aktörlerinin önceki paketler kaldırıldıktan hemen sonra yeni paketler yüklemeye çalıştığını ve kampanyayı sürdürme niyetini gösterdiğini bildirdi.



Source link