17 puan yazan GN⁺ 2025-11-25 | Henüz yorum yok. | WhatsApp'ta paylaş
  • NPM kayıt defterinde 1.000’den fazla bileşen, birkaç saat içinde aynı yöntemle enfekte edildi ve kötü amaçlı kod içeren yeni sürümler yayımlandı
  • Kötü amaçlı paketler, Bun runtime kurulum betiği gibi davranarak setup_bun.js ve obfuscate edilmiş bun_environment.js dosyasını ekledi; çalıştırıldığında TruffleHog kullanarak yerel kimlik bilgilerini çaldı
  • Toplanan AWS/GCP/Azure·GitHub·NPM token’ları gibi hassas bilgiler, SHA1HULUD adlı bir GitHub Action runner üzerinden dışarı aktarıldı
  • Kötü amaçlı betik, npm publish komutunu otomatik çalıştırarak solucan benzeri kendi kendini çoğaltma gerçekleştirdi; sonuç olarak 27.000’den fazla GitHub deposu enfekte oldu
  • Bu olay, açık kaynak ekosisteminin geneline yayılan tedarik zinciri güvenliği tehdidini yeniden gündeme getiren bir örnek olarak değerlendiriliyor

Saldırıya genel bakış

  • 24 Kasım 2025’te HelixGuard, NPM kayıt defterinde 1.000’den fazla paketin birkaç saat içinde aynı yöntemle enfekte edildiğini tespit etti
    • Yeni sürümler, Bun runtime ekliyormuş gibi davranıyor ve preinstall: node setup_bun.js betiğini içeriyordu
    • Birlikte dağıtılan bun_environment.js dosyası obfuscate edilmiş kötü amaçlı koddu; çalıştırıldığında TruffleHog’u indirip yürütüyordu
  • TruffleHog, yerel ortamda NPM token’ları, AWS/GCP/Azure kimlik bilgileri, ortam değişkenleri gibi verileri tarayarak çaldı
  • Çalınan bilgiler, SHA1HULUD adlı GitHub Action runner’ı oluşturup Sha1-Hulud: The Second Coming. açıklamasına sahip bir GitHub deposu üzerinden dışarı sızdırıldı
  • HelixGuard, bu saldırının Eylül 2025’te yaşanan “Shai-Hulud” olayıyla aynı saldırgan tarafından gerçekleştirilmiş olabileceğine işaret ediyor

Kötü amaçlı kodun çalışma analizi

  • Örnek olarak @asyncapi/specs paketi incelendiğinde, NPM’de yayımlanan sürümün enfekte olduğu ancak GitHub’daki kaynak deponun güvenli olduğu görüldü
  • Saldırgan, package.json dosyasını değiştirerek setup_bun.js ekledi ve bu betiğin bun_environment.js dosyasını çağırmasını sağladı
  • bun_environment.js, 10 MB’tan büyük yüksek derecede obfuscate edilmiş bir JavaScript dosyası ve başlıca işlevleri şunlar:
    • Ortam değişkenlerinden bulut kimlik bilgileri ve token toplama
    • TruffleHog kullanarak gizli anahtar taraması yapma
    • GitHub Actions üzerinden veri sızdırma
  • Ayrıca package.json dosyasını değiştirip enfeksiyon kodunu ekliyor ve npm publish komutunu otomatik çalıştırarak solucan benzeri yayılma gerçekleştiriyordu

GitHub enfeksiyonu ve veri sızdırma

  • Kötü amaçlı betik, .github/workflows/formatter_123456789.yml dosyasını oluşturup SHA1HULUD runner’ını kaydediyor
  • Bu workflow, deponun gizli anahtarlarını çift Base64 kodlamasıyla actionsSecrets.json dosyası halinde paketliyor
  • Ardından Sha1-Hulud: The Second Coming. açıklamasına sahip rastgele adlı bir GitHub deposu oluşturup verileri yüklüyor
  • HelixGuard, 27.000’den fazla GitHub deposunun enfekte olduğunu doğruladı
  • Çalınan gizli bilgiler arasında AWS_ACCESS_KEY_ID, SLACK_WEBHOOK_URL, CODECOV_TOKEN, WEBFLOW_TOKEN gibi çeşitli hizmet kimlik bilgileri bulunuyor

Enfekte paketlerin listesi

  • HelixGuard, yüzlerce NPM paketinin enfekte olduğunu bildirdi
    • Bunlar arasında @asyncapi, @ensdomains, @posthog, @zapier, @postman, @voiceflow gibi önemli kuruluşların paketleri de yer alıyor
    • Her paket içinde birden fazla sürümün enfekte olduğu görüldü (ör. @asyncapi/specs@6.8.2, @postman/csv-parse@4.0.5)
  • Enfekte paketlerin çoğu meşru açık kaynak projeleri gibi görünüyordu ve otomatik dağıtım sürecine kötü amaçlı kod enjekte edilmişti

Güvenlik açısından çıkarımlar

  • Bu saldırı, tedarik zinciri güvenliğindeki zayıflıkları istismar ederek büyük ölçekli açık kaynak ekosistemini enfekte eden bir vaka
  • NPM·GitHub·bulut kimlik bilgileri dahil geliştirme altyapısının genelinde güvenlik yönetiminin güçlendirilmesi gerekliliğini ortaya koyuyor
  • HelixGuard, enfekte paketlerin kurulumunun derhal durdurulmasını ve ilgili token’lar ile kimlik bilgilerinin hemen iptal edilmesini tavsiye ediyor

Henüz yorum yok.

Henüz yorum yok.