Tensorlake uygulamaları, sanal alanları ve bulut hizmetleri için geliştirilen TypeScript yazılım geliştirme kiti (SDK) olan "tensorlake" npm paketi, ChainDrop/Shai-Hulud tedarik zinciri saldırısının bir parçası olarak ele geçirildi.
Güvenlik şirketi Socket'e göre zararlı 0.5.144 sürümü, "kimlik bilgilerini toplayan, gizli verileri dışarı sızdıran, sistemde kalıcılık sağlayan ve uzaktan gönderilen kodu çalıştıran gizlenmiş bir zararlı yazılım" içeriyor. Söz konusu sürüm artık npm paket deposundan indirilemiyor.
Ele geçirilen sürümün incelenmesi, paketin kurulum öncesi (preinstall) bir kancayla "package/lib/setup.mjs" adlı JavaScript dosyasını çalıştırdığını ortaya koydu. Gizlenmiş bu yükleyici, Bun çalışma ortamını kullanarak asıl kimlik bilgisi hırsızı ve kendi kendine yayılan solucanı ("package/lib/Math_Symbol.js") devreye sokuyor.
Hırsızlık yapan zararlı yazılım; yerel dosyalar, CI ortamları, Kubernetes ve Vault kaynaklarındaki kimlik bilgilerini toplayacak şekilde tasarlanmış. Ayrıca HackBrowserData aracını sisteme bırakıyor, topladığı verileri dışarı sızdırıyor, sistemde kalıcılık kuruyor ve uzaktan gönderilen kodun çalıştırılmasını sağlıyor.
Socket, "Bu kombinasyon riski tek bir çalınmış API anahtarının ötesine taşıyor" diyor ve ekliyor: "Çalışan sürecin erişebildiği tüm gizli veriler açığa çıkabilir; kalıcılık sayesinde etkilenen bağımlılık kaldırıldıktan sonra bile saldırganın erişimi sürebilir."
Zararlı yazılımın çaldığı veri türleri şöyle:
Amazon Web Services (AWS) kimlik bilgileri ve gizli verileri
Mesajlaşma uygulaması verileri
Anthropic Claude, Cursor, Kiro, Windsurf ve Zed ile ilişkili yapılandırma ve MCP dosyaları
Solucanın yayılma yöntemini Socket şöyle anlatıyor: "Yayılmak için kurbanın yayınlama kimliğiyle ilişkili paketleri sıralıyor, Sigstore köken kanıtı oluşturuyor ve ele geçirilmiş sürümleri yeniden yayınlıyor. Sahte bir Copilot/Dependabot iş akışına gönderme yapan dizgiler, GitHub Actions iş akışları da yerleştirdiğini gösteriyor."
Zararlı yazılım, komuta kontrol (C2) sunucusunu ("iseekaigogo[.]com") çözümlemek için bir Ethereum sözleşmesinden yararlanıyor. Yedek mekanizma olarak ise GitHub devreye giriyor: Şifrelenmiş çalınmış veriler, "Shai-Hulud: Here We Go Again" açıklamalı herkese açık bir depoda saklanıyor.
Bir de "rehin token" bileşeni var. Bu bileşen, PowerShell izleyicisiyle çalınan GitHub token'ını kullanarak "api.github.com/user" adresini sürekli yokluyor ve token'ın hâlâ geçerli olup olmadığını kontrol ediyor. Kurban token'ı iptal etmeye kalkarsa izleyici, "Invoke-Expression" komutuyla saldırganın sağladığı bir işleyiciyi çalıştırıyor; bu da büyük olasılıkla yıkıcı bir rutini tetikleyecek PowerShell kodunu devreye sokuyor. Bu taktik, daha önceki Shai-Hulud dalgalarında da görülmüştü.
StepSecurity'ye göre zararlı dosyalar, tensorlakeai/tensorlake deposunun ana dalına bir bakımcının adıyla gönderildi; paket de aynı depodan yayınlandı. İlk şüpheli işlem 7 Ekim 2026'da TSİ 04.20'de gerçekleşti. Bir gün sonra deponun yayın iş akışı, 0.5.144 sürümünü npm'e gönderdi.
StepSecurity'den Ashish Kurmi, "Zararlı yazılım ayrıca erişebildiği depolara .claude/settings.json ve .vscode/tasks.json dosyalarını yazıyor; böylece biri projeyi Claude Code ya da VS Code'da açtığında yeniden çalışıyor" dedi.
ChainDrop ilk kez ağustos 2026 başında, aralarında Keyv ve Cacheable'ın da bulunduğu yüzlerce npm paketinin ele geçirilmesiyle gündeme geldi. Bu paketlerde, gizlenmiş Bun tabanlı bir JavaScript yüküyle dağıtılan, kendi kendine yayılan kimlik bilgisi hırsızı bir Mini Shai-Hulud varyantı bulunmuştu.
Son gelişme, tedarik zinciri saldırısını yapay zekâ ajanı altyapısına kadar genişletiyor ve tehdit aktörlerinin şirketlerden değerli veri çalmak için yapay zekâ araç ve hizmetlerini giderek daha fazla hedef aldığını bir kez daha gözler önüne seriyor. Zararlı sürümü kuran kullanıcıların paketi derhal kaldırması ve kimlik bilgilerini yenilemesi öneriliyor.