Giriş
Yeni bir siber güvenlik tehdidi olan Shai-Hulud kampanyası, npm ve PyPI üzerindeki yüzlerce paketin tehlikeye atılmasına neden oldu. Bu saldırı, geliştiricilerin kimlik bilgilerini hedef alarak, tedarik zinciri saldırılarının önemini bir kez daha gözler önüne seriyor.
Saldırı Nasıl Çalışıyor?
Shai-Hulud kampanyası, geçerli OpenID Connect (OIDC) jetonlarını ele geçirerek, kanıtlanabilir kaynak gösterimi (SLSA Build Level 3) ile zararlı paket versiyonları yayınladı. Saldırının, TeamPCP tehdit grubuna atfedildiği bildirilmektedir ve başlangıç noktası TanStack ve Mistral AI paketlerindeki ihlaller olmuştur.
Saldırganlar, 42 TanStack paketinde toplamda 84 zararlı versiyon yayımlayarak, geçerli kaynaklar ve GitHub Actions imzalarıyla birlikte gerçekçi bir görünüm yarattılar. Geliştiriciler açısından, bu paketler kriptografik olarak otantik görünmekteydi ve bir ihlalin herhangi bir işareti yoktu.
Etkilenen Sistemler
Shai-Hulud kampanyası, aşağıdaki sistem ve projeleri etkilemiştir:
- TanStack
- Mistral AI
- Guardrails AI
- UiPath
- OpenSearch
- Bitwarden CLI
- Resmi SAP paketleri
Saldırganlar, çeşitli alanlarda kimlik bilgilerini hedef alarak, şunları çalmaktadır:
- GitHub Actions OIDC jetonları ve PAT’lar
- Git kimlik bilgileri
- npm publish jetonları
- AWS Secrets Manager ve IAM görevi kimlik bilgileri
- Kubernetes hizmet hesabı jetonları
- HashiCorp Vault jetonları
- SSH anahtarları
- Claude Code konfigürasyonları
- VS Code görevleri
- .env dosyaları
Çözüm ve Korunma
Etkilenen geliştiricilerin, aşağıdaki adımları atarak kendilerini korumaları önerilmektedir:
- Etkilenen paket versiyonlarını kontrol edin.
- Geliştirici makinelerinde kalıcılığı kontrol edin.
- Tüm kimlik bilgilerini (GitHub jetonları, npm jetonları, AWS kimlik bilgileri vb.) yenileyin.
- IDE dizinlerinde zararlı dosyaları denetleyin (örneğin, router_runtime.js veya setup.mjs).
- Saldırganın komut ve kontrol alt yapısını (api.masscan.cloud, git-tanstack.com ve *.getsession.org) DNS veya proxy düzeyinde engelleyin.
Snyk araştırmacıları, bu tür saldırılardan korunmak için, saldırgan tarafından üretilen geçerli SLSA Build Level 3 kanıtlarını doğrulamak ve yükleme sırasında bir davranış analizi katmanı eklemeyi önermektedir. Uzun vadede ise, yalnızca kilit dosyasıyla yüklemeyi zorunlu kılmak, otomatik paket güncellemelerini önleyebilir.


