Güvenlik araştırmacısı Paul McCarty, npm ekosistemini hedef alan devasa bir koordineli spam kampanyasını ortaya çıkardı. En az 11 kullanıcı hesabında yayınlanan 43.000’den fazla kötü amaçlı paketten oluşan IndonesianFoods solucanı, tespit edilene kadar yaklaşık iki yıl boyunca kayıt defterinde aktif kaldı.
Kampanya, ayırt edici adını benzersiz paket adlandırma şemasından alıyor. Yerleşik kötü amaçlı komut dosyası, Endonezce adları (“andi”, “budi”, “cindy”, “zul”) Endonezya yemek terimleriyle (“rendang”, “sate”, “bakso”, “tapai”) rastgele birleştirir, 1-100 arasında rastgele sayılar ekler ve “-kyuki” veya “-breki” gibi son ekler ekler.
Bu adlandırma modeli, “zul-tapai9-kyuki” ve “andi-rendang23-breki” gibi paket adları üretir.
Bu, tüm NPM ekosisteminin %1’inden fazlasını temsil ediyor ve mevcut tedarik zinciri güvenlik önlemlerindeki önemli boşlukları gösteriyor.
Npm’nin yinelenen sürüm tespitini atlamak için “2.3.1” veya “4.1.3” gibi rastgele bir sürüm numarası.


Bu kampanyayı özellikle sinsi yapan şey, paketlerin ilk incelemede meşru görünmesidir.
Hackerlar NPM Ekosistemine Nasıl Sızdı?
Her biri, uygun yapılandırma dosyalarına, meşru bağımlılıklara (React, Next.js, Tailwind CSS) ve profesyonel belgelere sahip standart bir Next.js proje yapısı içerir.
“auto.js” veya “publishScript.js” adlı kötü amaçlı komut dosyası bileşeni, paket yapısında referanssız olarak kalır ve manuel olarak çalıştırılana kadar hareketsiz kalır.
Kurulum sırasında otomatik olarak tetiklenen ve paketlerin otomatik güvenlik tarayıcılarından kaçmasına olanak tanıyan kurulum sonrası kancalar veya yaşam döngüsü komut dosyaları yoktur.
Betik çalıştırıldığında sonsuz bir döngüde üç koordineli eylem gerçekleştirir. İlk olarak, yanlışlıkla herkese açık yayınlamayı önleyen korumaları atlamak için package.json’daki “özel” bayrağını kaldırır.


İkincisi, npm’nin yinelenen sürüm tespitini atlatmak için rastgele sürüm numaraları üretir. Üçüncüsü, kayıt defterine rastgele adlarla yeni paketler yayınlar.
Tek bir infaz, dakikada yaklaşık 12, saatte 720 veya günde 17.000 paket yayınlıyor; bu da ya birden fazla kurbanın ya da doğrudan saldırganın sele karıştığını gösteriyor.
Kampanya, bağımlılık zincirleri aracılığıyla solucan benzeri yayılma yetenekleriyle çalışıyor. Bu spam paketleri birbirlerine bağımlılık olarak atıfta bulunarak kendi kendini kopyalayan bir ağ oluşturur.
Tek bir paketin yüklenmesi, 8-10 ek spam paketinin otomatik olarak indirilmesini tetikleyebilir, bu da kayıt defteri bant genişliği kullanımını katlanarak artırır ve temizleme çalışmalarını karmaşık hale getirir.
Araştırmacılar, saldırganların kontrol ettiği birçok paketin, TEA hesaplarını listeleyen “tea.yaml” dosyalarını içerdiğini keşfetti; bu, açık kaynak katkıları için tasarlanmış blockchain ödül sistemlerindeki tokenlar aracılığıyla kampanyadan para kazanma girişimini ortaya çıkardı.


Bu, basit kayıt defteri spam’ından kripto para biriminden para kazanma planlarına kadar gelişen karmaşık, çok aşamalı bir saldırıyı temsil ediyor.
En az bir paket sağlayıcının, kendilerini Endonezyalı bir yazılım mühendisi olarak tanımlayan ve operasyonun bölgesel özelliğini açıklayan bir LinkedIn profiline sahip olduğu görülüyor.
Kampanya birden fazla adlandırma çeşidi kullandı; bazı paketler, kasıtlı operasyonel evrimi öneren “able_crocodile-notthedevs” gibi alternatif modeller oluşturmak için meşru “unique-names-generator” npm paketini kullanıyordu.
Kuruluşlar, güvenliği ihlal edilmiş on bir hesaba karşı bağımlılıklarını derhal doğrulamalıdır: voinza, yunina, noirdnv, veyla, vndra, vayza, bipyruss, sernaam.by, jarwok, doaortu ve rudiox.
Özellikle bazı paketler haftalık 2.000’den fazla indirme işlemi gerçekleştirerek gelecekte kötü amaçlı kod yerleştirmeye yönelik potansiyel vektörler oluşturdu.
IndonesianFoods kampanyası, tedarik zinciri saldırı stratejilerindeki sıkıntılı değişime dikkat çekiyor. Saldırganlar, anında etki yaratmak için yüksek profilli paketleri hedeflemek yerine, binlerce düşük profilli paketle hacim tabanlı bir yaklaşım kullanarak olasılığın kendi lehlerine çalışmasına izin verdi.
Bu, kalıcılığın, ölçeğin ve stratejik düşünmenin, kurulum sırasında teknik açıdan karmaşık saldırıları yakalamak için tasarlanan geleneksel güvenlik önlemlerini atlatabileceğini gösteriyor.
NPM ekosistemi acil savunma iyileştirmeleri gerektirir: yayıncılar için daha sıkı hız sınırlaması, toplu kampanyalar için otomatik kalıp algılama ve yüksek hacimli yayınlama için daha sıkı hesap doğrulama. Ek olarak, TEA projesinin yetkisiz token kazançlarının devam etmesini önlemek için rahatsız edici hesapları ve cüzdanları devre dışı bırakması gerekiyor.
Anında Güncellemeler Almak ve GBH’yi Google’da Tercih Edilen Kaynak Olarak Ayarlamak için bizi Google Haberler, LinkedIn ve X’te takip edin.