Kötü amaçlı PyPI ve npm paketlerinin akışıyla çalınan SSH anahtarları


Paketler

Platformlardaki yazılım geliştiricilerden çok çeşitli hassas verileri çalan bir dizi kötü amaçlı npm ve PyPi paketi bulundu.

Kampanya 12 Eylül 2023’te başladı ve ilk olarak analistleri npm’de 14 kötü amaçlı paket ortaya çıkaran Sonatype tarafından keşfedildi.

Phylum, 16 ve 17 Eylül’deki kısa bir operasyonel aradan sonra saldırının yeniden başladığını ve PyPI ekosistemine yayıldığını bildirdi.

Saldırganlar, saldırının başlangıcından bu yana npm (40) ve PyPI’ye (5) 45 paket yüklediler; koddaki değişkenler, saldırıda hızlı bir evrime işaret ediyor.

Kötü amaçlı paketler

Bu kampanyada dağıtılan kötü amaçlı paketlerin tam listesi Phylum’un raporunun alt kısmında bulunabilir.

Bununla birlikte, aşağıdaki paketlerin meşru popüler paketlere benzemek için yazım hatası kullandığını ve geliştiricilerin onları yüklemeleri için kandırılabileceğini belirtmekte fayda var:

  • Shineouts ve @dynamic-form-components/shineout – popüler React kütüphanesi “Shineout”u taklit eder
  • apm-web-vitals – Google’ın web performansını ölçen “web-vitals” kitaplığı için “APM” (uygulama performansı izleme) olarak geçebilir
  • eslint-plugin-shein-soc-raw ve @spgy/eslint-plugin-spgy-fe – ESLint eklentileri gibi davranıyorlar
  • ssc-concurrent-log-handler & sc-concurrent-log-handler – meşru günlük kaydı yardımcı programları gibi davranıyor

Phylum’a göre en az yedi farklı saldırı dalgası ve birkaç aşamada, gizliliği artırmak ve daha spesifik hedefleme eklemek için kod değişiklikleri yapıldı.

İlk saldırı dalgaları 12-15 Eylül tarihleri ​​arasında gerçekleşti ve tehdit aktörleri her gün yeni paket setleri yükleyerek toplam 33 pakete ulaştı.

Daha sonraki saldırı dalgaları 18 Eylül’de (üç paket), 20 Eylül’de (beş paket) ve 24 Eylül’de (4 paket) meydana geldi.

İlk dalgalarda paketler, veri toplama kodunu dahili olarak düz metin biçiminde içeren sabit kodlu veri toplama ve dışarı çıkarma rutinlerine sahipti, bu da onları tespit edilmeye açık hale getiriyordu.

Ortadaki yinelemeler, veri toplayan bash komut dosyasının harici bir etki alanından alınması ve çalıştırılması gibi daha karmaşık mekanizmaları tanıttı.

Bash betiğini harici bir kaynaktan alma
Bash betiğini harici bir kaynaktan alma (Filum)

Ayrıca yazarlar, kurulum sırasında kötü amaçlı JavaScript’in otomatik olarak çalıştırılması için bir “ön kurulum” kancası eklediler.

En yeni paketler, analizden kaçınmak için base64 kodlamasını kullandı ve bu daha sonra çift base64 kodlamasına yükseltildi.

Saldırganlar genel olarak sürekli bir kod testi ve iyileştirme süreci yürüttüler ve hatta veri toplamanın bazı yönlerinde diğerlerinden daha fazla uzmanlaşmış paketler bile sundular.

Bilgi çalma tehdidi

Paketlerin çaldığı veriler arasında hassas makine ve kullanıcı bilgileri yer alıyor.

Toplanan makine ve kullanıcı ayrıntıları arasında ana bilgisayar adı, kullanıcı adı, geçerli yol, işletim sistemi sürümü, harici ve dahili IP adresleri ve PyPI paketleri için Python sürümü yer alır.

~/.ssh/id_rsa dosyasındaki kubeconfig dosyalarında ve SSH özel anahtarlarında saklanan bu ayrıntılar ve Kubernetes yapılandırmaları, bir metin dosyasına (ConceptualTest.txt) yazılarak saldırganların sunucularına gönderilir.

Bash betiğinin içeriği
Bash betiğinin içeriği (Filum)

Çalınan bilgiler, geliştiricilerin gerçek kimliklerini ortaya çıkarmak ve saldırganlara, çalınan SSH özel anahtarları aracılığıyla erişilebilen sistemlere, sunuculara veya altyapıya yetkisiz erişim sağlamak için kullanılabilir.

Çalınan Kubernetes yapılandırmaları kümelere erişim için kimlik bilgileri içeriyorsa, saldırganlar dağıtımları değiştirebilir, kötü amaçlı kapsayıcılar ekleyebilir, kümede depolanan hassas verilere erişebilir, yanlara doğru hareket edebilir veya fidye yazılımı saldırısı başlatabilir.

PyPI ve npm gibi kod dağıtım platformlarının kullanıcılarının, bu ekosistemlerde sürekli bir kötü amaçlı yazılım akışı olduğundan, sistemlerine hangi paketleri indirip başlattıklarına dikkat etmeleri önerilir.



Source link