1 puan yazan GN⁺ 2025-11-25 | 1 yorum | WhatsApp'ta paylaş
  • Shai Hulud 2.0, npm ekosistemini yeniden hedef alarak Zapier, ENS Domains, AsyncAPI, PostHog, Postman gibi büyük projelerin paketlerini enfekte etti
  • Kötü amaçlı yazılım, kurulum sürecinde otomatik olarak çalışarak geliştirici sistemleri ve bulut ortamlarındaki gizli bilgileri çalıyor
  • Enfekte sistemlerde TruffleHog kullanarak API anahtarları, token'lar, parolalar vb. bilgileri bulup herkese açık GitHub depolarına yüklüyor
  • Bu saldırı öncekiye göre genişleyerek en fazla 100 paketi enfekte etti ve kimlik doğrulama başarısız olursa home dizinindeki dosyaları silme işlevi içeriyor
  • npm ekosisteminin güven modelini tehdit eden büyük ölçekli bir tedarik zinciri saldırısı olarak, tüm geliştirme ekiplerinin gizli bilgileri denetleyip değiştirmesi gerekliliğini öne çıkarıyor

Shai-Hulud kampanyasına genel bakış

  • Shai-Hulud, npm ekosisteminde kendini kopyalayan solucan tipi bir kötü amaçlı yazılım ve enfekte geliştirici ortamları üzerinden hızla yayılıyor
    • Enfeksiyon sonrasında TruffleHog kullanarak API anahtarları, token'lar ve benzeri sızmış gizli bilgileri arıyor
    • Toplanan bilgiler herkese açık GitHub depolarına gönderiliyor, ardından yayılmak için npm'e yeni kötü amaçlı paketler yayımlanıyor
  • Saldırganlar bu saldırıyı “Second Coming” olarak adlandırdı
  • Saldırı, npm'in 9 Aralık'ta eski token'ları devre dışı bırakacağını duyurduğu dönemde yeniden başladı

Saldırı zaman çizelgesi

  • 27 Ağustos: S1ngularity kampanyası raporu yayımlandı
  • 16 Eylül: İlk Shai-Hulud saldırısı gerçekleşti
  • 18 Eylül: Teknik analiz ve payload davranışı raporlandı
  • 24 Kasım: npm token iptalinden hemen önce ikinci saldırı (Second Coming) gerçekleşti
Reklam

Saldırı yöntemindeki değişiklikler

  • Bu saldırıda setup_bun.js dosyası üzerinden Bun runtime kuruluyor ve ardından bun_environment.js çalıştırılıyor
  • Çalınan verileri yüklemek için rastgele isimli GitHub depoları oluşturuluyor
  • Enfekte edilen hedef paket sayısı 20'den 100'e çıktı
  • GitHub veya npm kimlik doğrulaması başarısız olursa kullanıcının home dizininin tamamını silme işlevi bulunuyor

Enfekte paketler

  • Toplam 492 npm paketi enfekte oldu ve aylık indirme sayısı 132 milyona ulaşıyor
  • Başlıca etkilenen projeler: Zapier, ENS Domains, AsyncAPI, PostHog, Postman, Browserbase
  • Örnek paketler: @zapier/zapier-sdk, @ensdomains/ensjs, @asyncapi/cli, posthog-js, @postman/pm-bin-linux-x64 vb.

Gizli bilgi sızıntısı

  • Kötü amaçlı yazılım, “Sha1-Hulud: The Second Coming” açıklamasını içeren GitHub depolarına gizli bilgileri yüklüyor
  • Şu ana kadar 26.300'den fazla deponun açığa çıktığı doğrulandı

Saldırganın hatası

  • Bazı paketlerde yalnızca setup_bun.js bulunuyor ve bun_environment.js eksik olduğu için solucan tam olarak çalışmıyor
  • Bu nedenle saldırının yayılım kapsamı sınırlı kaldı
Reklam

Enfeksiyon yolu ve ilk bulaşma noktası

  • İlk enfeksiyon 24 Kasım 2025 03:16:26 GMT+0 tarihinde go-template ve AsyncAPI ile ilişkili 36 pakette başladı
  • Ardından PostHog(04:11:55) ve Postman(05:09:25) yönünde yayıldı
  • AsyncAPI CLI deposunda kötü amaçlı dal oluşturulduktan sonra dağıtılan kod tespit edildi

Olası etki

  • Kurulum sırasında otomatik olarak çalıştığı için geliştiricinin yerel ortamına, build sistemlerine ve bulut kimlik bilgilerine erişebiliyor
  • Çalınan gizli bilgiler üzerinden ek hesap ihlali ve yeni kötü amaçlı paket yayımlama ihtimali bulunuyor
  • npm ekosistemindeki güvene dayalı tedarik zinciri güvenliği için ciddi bir tehdit oluşturuyor

Güvenlik müdahalesi önerileri

  • Zapier ve ENS ile ilgili npm bağımlılıklarının tamamını gözden geçirin
  • GitHub, npm, bulut ve CI/CD gizli bilgilerini tamamen değiştirin
  • GitHub'da açıklamasında “Sha1-Hulud: The Second Coming” geçen depoları arayın
  • CI ortamlarında npm postinstall script'lerini devre dışı bırakın
  • Paket sürümlerini sabitleyin ve MFA'yı etkinleştirin; Safe-Chain gibi araçlarla kötü amaçlı paketleri engelleyin

Sonuç

  • Shai-Hulud 2.0, npm tedarik zincirini hedef alan büyük ölçekli bir yeniden saldırı olup
    yüzlerce popüler paket ile binlerce GitHub deposunu etkiledi
  • Tüm geliştirme ekipleri bağımlılık doğrulama, gizli bilgi değiştirme ve otomatik kurulum script'lerini engelleme adımlarını derhal atmalı

1 yorum

 
GN⁺ 2025-11-25
Hacker News görüşleri
  • Bubblewrap(bwrap) bahsetmeye değer. Bu araç, npm/node ortamında ortaya çıkabilecek saldırı vektörlerinin çoğunu ortadan kaldırabilir ya da en azından rastgele kod çalıştırma durumunda zararı sınırlayabilir
    Mükemmel bir çözüm değil, ancak basit bir sarmalayıcı betikle birlikte kullanıldığında rootless Podman container'ından çok daha iyi olduğunu düşünüyorum
    Bubblewrap GitHub bağlantısı

  • Python ile yazılmış bir betik paylaşılıyor. Bu betik, depolarım arasında pnpm veya npm lock dosyalarında bozulmuş paket bulunup bulunmadığını kontrol ediyor
    betik bağlantısı

  • İlk başta tekrar (Dup) gibi görünüyordu, ama aslında farklı bir haberdi
    ilgili bağlantı

    • İlgili yorumların tek bir başlık altında birleştirildiği açıklanıyor. Bağlantılar farklı olsa bile tartışma konusu fiilen aynıysa birleştirme ölçütüne uyuyor. İkinci bağlantıda ek bilgi olduğu için kaynak metnin üst kısmında birlikte gösterildiği söyleniyor
    • Bu haberde oldukça fazla ek bilgi olduğu belirtiliyor
    • Aynı bağlantının yeniden gönderimlerinde “Dup”, farklı bağlantı olsa da aynı olayla ilgili yazılarda ise “See also” kullanılmasının önerildiği söyleniyor
    • Bunun tekrar değil, aynı olayı ele alan ama içeriği farklı bir haber olduğu vurgulanıyor
    • Referans olarak Shai-Hulud Returns: Over 300 NPM Packages Infected (helixguard.ai) de sunuluyor
  • Tekrarlanan tartışmanın burada sürdüğü bildiriliyor

  • Başlıkta yazım hatası olduğu belirtiliyor. Mevcut HN başlığı

    SHA1-Hulud the Second Comming – Postman, Zapier, PostHog All Compromised via NPM
    olsa da doğru yazım Shai-Hulud

    • Ancak gerçekten gizli bilgilerin yüklendiği deponun adı Sha1-Hulud: The Second Coming olduğu için karışıklık çıkmış gibi görünüyor
    • Solucanın kendisi de gizli bilgileri GitHub'a sha1-hulud adıyla yayımlıyor
      ilgili GitHub arama bağlantısı
    • “coming” kelimesinin yazımında da yalnızca bir tane m olması gerektiği söyleniyor; bunun kasıtlı bir kelime oyunu olup olmadığı da soruluyor
    • Neden eksi oy aldığını bilmediğini söyleyerek, gerçek saldırının SHA1 algoritmasıyla ilgili olmadığını ve adın da böyle bir parodi amacı taşımadığını açıklıyor