Axios NPM Tedarik Zinciri Saldırısı Nasıl Çalışır? (API Projelerinizi Nasıl Korursunuz?)

Ashley Innocent

Ashley Innocent

1 April 2026

Axios NPM Tedarik Zinciri Saldırısı Nasıl Çalışır? (API Projelerinizi Nasıl Korursunuz?)

Kurumsal Apidog

Şirket İçi Dağıtım

SSO & RBAC

SOC 2 Uyumlu

Apidog Enterprise'ı Keşfet

TL;DR

31 Mart 2026'da, haftalık 83 milyon indirme sayısıyla en popüler JavaScript HTTP istemcisi olan Axios'un ana sürüm yöneticisinin npm hesabı saldırganlar tarafından ele geçirildi. Saldırganlar, geliştirici makinelerinden kimlik bilgilerini, SSH anahtarlarını ve bulut tokenlerini çalan platformlar arası bir RAT (Uzaktan Erişim Truvası) içeren kötü niyetli sürümler (1.14.1 ve 0.30.4) yayınladı. Derhal Axios 1.14.0 sürümüne düşürün, tüm gizli bilgilerinizi değiştirin ve sisteminizde ihlal göstergeleri olup olmadığını tarayın.

Giriş

Axios, diğer tüm JavaScript kütüphanelerinden daha fazla HTTP isteği işler. Son beş yılda bir API istemcisi oluşturduysanız, uç noktaları test ettiyseniz veya bir ön ucu bir arka uca bağladıysanız, muhtemelen onu kullandınız.

31 Mart 2026'da, UTC 00:21'de, bir tehdit aktörü ele geçirilmiş bir sürüm yöneticisi hesabı aracılığıyla Axios sürüm 1.14.1'i yayınladı. Paket, yasal sürüme tıpatıp benziyordu. Fark cerrahiydi: 86 dosya arasında sadece package.json değişmişti. Ancak bu tek dosya, npm install çalıştıran her makineye bir uzaktan erişim truva atı dağıtan plain-crypto-js adlı hayalet bir bağımlılık enjekte etti.

Kötü niyetli sürümler, npm onları kaldırmadan önce yaklaşık iki ila üç saat boyunca aktif kaldı. Haftalık 83 milyon indirme arasında iki ila üç saat.

💡
Eğer API'ler oluşturuyor veya test ediyorsanız, bu saldırı doğrudan araç zincirinizi hedef aldı. Apidog'un yerleşik HTTP istemcisi, API test iş akışınızda üçüncü taraf HTTP kütüphanelerine olan ihtiyacı ortadan kaldırarak bu tüm saldırı yüzeyini kaldırır. Aşağıdaki güvenlik denetimi adımlarını takip etmek için Apidog'u ücretsiz indirin.
Düğme

Bu makale, saldırının nasıl işlediğini, sistemlerinizin güvenliğinin ihlal edilip edilmediğini nasıl tespit edeceğinizi ve API ekiplerinin gelecekteki bağımlılık yönetimleri hakkında neler değiştirmesi gerektiğini ayrıntılarıyla ele almaktadır.

Axios tedarik zinciri saldırısı nasıl gelişti

Zaman çizelgesi

Saldırgan bu operasyonu 18 saatlik bir pencerede hassasiyetle gerçekleştirdi:

Hesap nasıl ele geçirildi

Saldırgan, birincil Axios sürüm yöneticisi olan jasonsaayman npm hesabını ele geçirdi. Kayıtlı e-postayı ifstap@proton.me olarak değiştirdiler. Ana adli kanıtlar:

Bu ayrım önemlidir. Kuruluşunuz npm paketleri yayınlıyorsa, bir sürümde OIDC bağlamasının ve CI/CD kaynağının olmaması, otomatik kontroller için dikkat edilmesi gereken bir kırmızı bayraktır.

Bağımlılık enjeksiyon tekniği

Bu saldırıyı bu kadar incelikli yapan şey buydu. Saldırgan Axios kaynak kodunu değiştirmedi. Sadece package.json dosyasındaki tek bir satırı değiştirerek plain-crypto-js@^4.2.1'i çalışma zamanı bağımlılığı olarak ekledi. Bu paket, Axios kod tabanında hiçbir yerde içe aktarılmadı. Sadece npm install sırasında postinstall kancasını tetiklemek için vardı.

İkili analiz, cerrahi hassasiyeti doğruladı: paketteki 86 dosyanın tamamında, temiz 1.14.0 sürümü ile tehlikeye atılmış 1.14.1 sürümü arasında yalnızca package.json farklıydı.

Kötü niyetli yük ne yapıyor

Bırakıcı mekanizması

plain-crypto-js içindeki postinstall kancası, setup.js adlı 4.2 KB'lık gizlenmiş bir dosyayı çalıştırdı. İki katmanlı gizleme kullandı:

  1. Katman 1: "OrDeR_7077" dizesinden türetilen bir anahtar kullanan XOR şifresi
  2. Katman 2: Karakter ters çevirme ile Base64 kodlaması

Çözümlendiğinde, bırakıcı ana bilgisayar işletim sistemini tanımladı ve platforma özel yükleri çalıştırdı.

Platforma özel saldırı yolları

macOS:

AppleScript'i /tmp/6202033 dizinine yazar
osascript aracılığıyla yürütür
Yükü /Library/Caches/com.apple.act.mond dizinine indirir

Windows:

PowerShell'i %PROGRAMDATA%\wt.exe adresine kopyalar (kalıcılık yapıtı)
cscript aracılığıyla VBScript bırakıcısını yürütür

Linux:

Python RAT'ını /tmp/ld.py adresine indirir
nohup python3 aracılığıyla yürütür

Her üç dal da komuta-kontrol sunucusuyla platforma özel POST gövdeleriyle iletişime geçti:

RAT yetenekleri

Dağıtılan uzaktan erişim truva atı şunları destekler:

Basitçe söylemek gerekirse: saldırgan, geliştirme makinenizin tam uzaktan kontrolünü ele geçirir. .env dosyalarınızı okuyabilir, API anahtarlarınızı çalabilir, SSH anahtarlarınızı kopyalayabilir ve bulut sağlayıcı belirteçlerini toplayabilir.

Adli tıp karşıtı: kendi kendini temizleyen yük

Yürütüldükten sonra, bırakıcı üç temizleme adımı gerçekleştirdi:

  1. setup.js dosyasının kendisini sildi
  2. Kötü niyetli package.json dosyasını sildi
  3. Önceden hazırlanmış bir package.md (sürüm 4.2.0 bildiren) dosyasını package.json olarak yeniden adlandırdı

Bu, npm list'in yükü yürüten 4.2.1 sürümü yerine 4.2.0 sürümünü bildirdiği bir yanıltma katmanı oluşturdu. Bir geliştirici, daha sonra bağımlılıklarını kontrol ettiğinde yanlış bir şey görmeyecekti.

Bu saldırının arkasında kim var?

Google Tehdit İstihbarat Grubu, Axios saldırısını şüpheli bir Kuzey Kore tehdit aktörü olan UNC1069'a atfetti. macOS kötü amaçlı yazılımı, Mandiant'ın Şubat 2026'da takip ettiği WAVESHAPER adlı bir C++ arka kapı ile "önemli ölçüde örtüşüyor".

Kuzey Kore devlet destekli grupların tedarik zinciri saldırıları konusunda derin deneyimleri var. Geçmişte, kripto para çalmak için ele geçirilmiş geliştirici araçlarını kullandılar ve bu operasyon da aynı yolu izliyor: binlerce kuruluştaki kimlik bilgilerine ve bulut altyapısına erişim sağlamak için yaygın olarak kullanılan bir geliştirici aracını ele geçirmek.

Saldırının karmaşıklık düzeyi dikkat çekicidir. İki aşamalı bağımlılık enjeksiyonu, çok platformlu RAT dağıtımı ve adli tıp karşıtı temizleme, tümü iyi kaynaklara sahip bir operasyona işaret ediyor. Bu, bir kripto madencisi düşüren bir script kiddie değil. Geliştirici iş istasyonlarını hedef alan bir istihbarat operasyonu.

Etkilenip etkilenmediğinizi nasıl kontrol edersiniz?

Adım 1: Axios sürümünüzü kontrol edin

Axios kullanan her projede şunu çalıştırın:

npm list axios 2>/dev/null | grep -E "1\.14\.1|0\.30\.4"

Bu, sonuç döndürürse, projeniz tehlikeye atılmış bir sürüm yüklemiştir.

Adım 2: Kötü niyetli bağımlılığı kontrol edin

ls node_modules/plain-crypto-js 2>/dev/null && echo "POTANSİYEL OLARAK ETKİLENMİŞ"

Bırakıcı kendini temizlediyse bile, dizinin varlığı yükün çalıştığını doğrular.

Adım 3: Sisteminizde RAT yapılarını kontrol edin

macOS:

ls -la /Library/Caches/com.apple.act.mond 2>/dev/null

Linux:

ls -la /tmp/ld.py 2>/dev/null

Windows (PowerShell):

Test-Path "$env:PROGRAMDATA\wt.exe"

Adım 4: Ağ göstergelerini kontrol edin

Şu bağlantıları engelleyin ve tarayın:

Adım 5: CI/CD derleme günlüklerini kontrol edin

31 Mart UTC 00:21 ile UTC 03:15 arasındaki tüm CI/CD işlem hattı çalışmalarını inceleyin. Bu pencere sırasında Axios'u çözen herhangi bir npm install veya npm ci çalıştırması, derleme ortamınızda bırakıcıyı çalıştırmış olabilir.

Acil iyileştirme adımları

Herhangi bir ihlal göstergesi bulursanız, etkilenen sistemi tamamen ele geçirilmiş olarak kabul edin. İşte öncelik listesi:

1. Axios'u hemen düşürün

npm install axios@1.14.0

Veya 0.x dalı için:

npm install axios@0.30.3

2. package.json dosyanıza sürüm geçersiz kılmaları ekleyin

Kötü niyetli sürümlere geçişli çözümü engelleyin:

{
  "overrides": {
    "axios": "1.14.0"
  }
}

Yarn için:

{
  "resolutions": {
    "axios": "1.14.0"
  }
}

3. Kötü niyetli paketi kaldırın

rm -rf node_modules/plain-crypto-js

4. Tüm kimlik bilgilerini değiştirin

Bırakıcı makinenizde çalıştıysa, aşağıdakilerin ele geçirilmiş olduğunu varsayın:

Her şeyi değiştirin. RAT'ın aktif penceresi sırasında neyi dışarı sızdırdığını bilmek mümkün değil.

5. Ağa seviyesinde C2'yi engelleyin

Ana bilgisayar dosyanıza veya güvenlik duvarı kurallarınıza ekleyin:

echo "0.0.0.0 sfrclak.com" | sudo tee -a /etc/hosts

6. Yapıtlar bulunursa, makineyi yeniden oluşturun

Kabuk yürütme ve dosya sistemi erişimine sahip bir RAT her şeyi değiştirebilir. Adım 3'ten yapıtlar bulduysanız, sisteme güvenmeyin. Bilinen iyi bir durumdan yeniden oluşturun.

API geliştirme ekipleri için uzun vadeli savunmalar

Kilit dosyaları kullanın ve kesin sürümleri sabitleyin

Axios saldırısı, ^ semver aralıklarını istismar etti. Eğer package.json dosyanız "axios": "^1.14.0" diyorsa, npm, saldırı penceresi sırasında en son uyumlu sürüm olan 1.14.1'i çözdü.

{
  "dependencies": {
    "axios": "1.14.0"
  }
}

Kesin sürümleri sabitleyin. Her zaman package-lock.json veya yarn.lock dosyanızı commit'leyin. Kilit dosyası çözümünü zorlamak için CI/CD'de npm install yerine npm ci çalıştırın.

CI/CD'de postinstall betiklerini devre dışı bırakın

Saldırının tamamı, npm install sırasında postinstall kancalarının yürütülmesine bağlıydı. Bunu devre dışı bırakabilirsiniz:

npm ci --ignore-scripts

Bu, yerel derleme gerektiren bazı paketleri bozar. Önce yapılarınızı test edin, ardından .npmrc kullanarak bunlara ihtiyaç duyan paketler için betikleri seçerek izin verin:

ignore-scripts=true

Bağımlılıkları düzenli olarak denetleyin

npm audit
npx socket-security/cli audit

Bunları CI/CD'de bir engel olarak çalıştırın. Herhangi bir kritik veya yüksek güvenlik açığı derlemeyi engellemelidir.

HTTP istemci bağımlılık yüzeyinizi azaltın

Bu saldırının ortaya koyduğu daha derin soru şudur: API test iş akışınız neden ele geçirilebilecek üçüncü taraf bir HTTP kütüphanesine bağımlı?

Apidog, API testi, hata ayıklama ve dokümantasyon için yerleşik bir HTTP istemcisi sağlar. Test yığınızda Axios, node-fetch veya got'a ihtiyacınız yoktur. HTTP istemcisi, tehlikeye atılacak üçüncü taraf bağımlılıkları olmayan platformun bir parçasıdır.

Özellikle API testi için, HTTP isteklerinizi Apidog'a taşımak tüm saldırı yüzeyini ortadan kaldırır:

API iş akışınızdan HTTP kütüphanesi bağımlılıklarını kaldırmanın tedarik zinciri riskinizi nasıl azalttığını görmek için Apidog'u ücretsiz deneyin.

Paket kaynağını doğrulayın

npm artık Sigstore aracılığıyla paket kaynağını destekliyor. Bağımlı olduğunuz paketlerin bunu kullanıp kullanmadığını kontrol edin:

npm audit signatures

Kötü niyetli Axios sürümleri OIDC kaynağına sahip değildi. CI/CD işlem hatlarından gelen meşru sürümler, derleme kaynaklarının kriptografik tasdikini içerir. Eğer yeni bir sürüm kaynak belirtmeden ortaya çıkarsa, şüpheyle yaklaşın.

Bu, JavaScript ekosistemi için ne anlama geliyor?

Güven modeli bozuldu

npm'in güven modeli, sürüm yöneticisi hesap güvenliğine bağlıdır. Tek bir ele geçirilmiş kimlik bilgisi, bir saldırgana her hafta 83 milyon projenin yüklediği bir paket üzerinde kontrol sağlar. İki faktörlü kimlik doğrulama yardımcı olur, ancak uzun ömürlü erişim belirteçleri ele geçirilmiş geliştirme ortamlarından hala çalınabilir.

Topluluk, çeşitli yapısal değişiklikleri tartışıyor:

Tedarik zinciri saldırıları yavaşlamıyor

Bu saldırı, RubyGems kırılma olayı ve devam eden PyPI bağımlılık endişelerinin olduğu günlerde gerçekleşti. Her dil ekosistemindeki paket kayıtları sürekli saldırı altında. API geliştiricilerinin bağımlılık ağaçlarını bir kolaylık olarak değil, bir saldırı yüzeyi olarak düşünmeleri gerekiyor.

Reddit tartışması duyguyu iyi yakaladı: "NPM bugün internetin en büyük zayıflığıdır ve yine de devasa bir felakete yol açacaktır." Aşırı abartılı olup olmadığına katılmasanız da, Axios saldırısı etki alanının gerçek olduğunu gösteriyor.

Karşılaştırma: HTTP istemci bağımlılık yaklaşımları

Yaklaşım Tedarik zinciri riski Bakım yükü Test yeteneği
Axios + özel betikler Yüksek (üçüncü taraf bağımlılığı) Yüksek (sürüm yönetimi) Manuel kurulum gerekli
Node.js yerel fetch Düşük (çalışma zamanına yerleşik) Düşük Sınırlı test özellikleri
Apidog yerleşik istemci Yok (npm bağımlılığı yok) Yok (platform tarafından yönetilir) Tam test, sahteleme, dokümanlar
curl/httpie betikleri Düşük (sistem düzeyinde araç) Orta Sınırlı otomasyon

Sıkça Sorulan Sorular

Axios'u şimdi kullanmak güvenli mi?

Evet. Sürümler 1.14.0 ve 0.30.3 temizdir. Ele geçirilmiş sürümler (1.14.1 ve 0.30.4) yaklaşık üç saat içinde yayından kaldırıldı. Yüklü sürümünüzü npm list axios ile doğrulayın ve güvenli bir sürümde olduğunuzu onaylamak için kilit dosyanızı kontrol edin.

RAT'ın makinemde çalıştığını nasıl anlarım?

Platforma özel yapıları kontrol edin: macOS'ta /Library/Caches/com.apple.act.mond, Linux'ta /tmp/ld.py veya Windows'ta %PROGRAMDATA%\wt.exe. Ayrıca projelerinizden herhangi birinde node_modules/plain-crypto-js olup olmadığını kontrol edin. Bırakıcı kendini temizlediği için, tehlikeye atılmış sürümü yüklediyseniz, yapıların olmaması güvende olduğunuzu garanti etmez.

Axios'u tamamen kullanmayı bırakmalı mıyım?

Şart değil. Axios, güçlü bir geçmişe sahip, iyi bakımı yapılan bir kütüphane olmaya devam ediyor. Ancak bu saldırı, üçüncü taraf bir HTTP istemcisine gerçekten ihtiyacınız olup olmadığını değerlendirmeniz için sizi teşvik etmeli. Node.js 18+ yerel fetch içerir. API testi için Apidog gibi platformlar, bu bağımlılığı ortadan kaldıran yerleşik HTTP istemcileri sağlar.

Projelerimde tedarik zinciri saldırılarını nasıl önleyebilirim?

Kesin bağımlılık sürümlerini sabitleyin, kilit dosyalarını commit'leyin, CI/CD'de npm ci --ignore-scripts çalıştırın, bağımlılıkları düzenli olarak denetleyin, npm audit signatures ile paket kaynağını doğrulayın ve bağımlılık ağacınızı minimize edin. API test iş akışlarını, HTTP iletişimi için npm paketlerine güvenmeyen entegre platformlara taşımayı düşünün.

Bu saldırı Claude Code kaynak sızıntısıyla ilgili miydi?

Her iki olay da aynı gün (31 Mart 2026) meydana geldi, ancak birbirleriyle ilişkili değiller. Axios saldırısı, devlet destekli bir tehdit aktörü tarafından kasıtlı bir tedarik zinciri ihlaliydi. Claude Code sızıntısı, Bun derleme aracındaki üretimde kaynak haritalarını gönderen bir hatadan kaynaklandı. Zamanlamanın rastlantısallığı, genel olarak npm kayıt güvenliği hakkındaki tartışmaları körükledi.

Axios saldırısının arkasında kim vardı?

Google Tehdit İstihbarat Grubu, saldırıyı şüpheli bir Kuzey Kore tehdit aktörü olan UNC1069'a atfetti. macOS kötü amaçlı yazılımı, Mandiant tarafından takip edilen bir arka kapı olan WAVESHAPER ile önemli ölçüde örtüşüyor. Kuzey Koreli gruplar, genellikle geliştirici kimlik bilgilerini ve kripto para birimi altyapısını hedef alan tedarik zinciri saldırıları konusunda kapsamlı deneyime sahiptir.

Kaç geliştirici etkilendi?

Kötü niyetli sürümler yaklaşık iki ila üç saat boyunca aktifti. Haftalık 83 milyon indirme ile potansiyel maruziyet önemli. npm resmi etki sayılarını yayınlamadı. StepSecurity'nin çalışma zamanı tespiti, bırakıcının npm install başladığı andan itibaren 1.1 saniye içinde C2 ile iletişime geçtiğini, bağımlılık çözümlemesi tamamlanmadan önce doğruladı.

Apidog tedarik zinciri saldırılarını önlemeye yardımcı olabilir mi?

Apidog, API testi, hata ayıklaması ve dokümantasyonu için yerleşik bir HTTP istemcisi sağlayarak büyük bir saldırı vektörünü ortadan kaldırır. Test iş akışınızda Axios, node-fetch veya diğer HTTP kütüphanelerini yüklemenize gerek yoktur. Bu, npm bağımlılık yüzeyinizi azaltır ve API geliştirme sürecinizi etkileyen tehlikeye atılmış HTTP istemci paketlerinin riskini ortadan kaldırır.

Temel Çıkarımlar

Axios saldırısı bir uyandırma çağrısıdır. node_modules'daki her bağımlılık bir güven kararıdır. Bu kararları varsayılan olarak değil, bilinçli olarak verdiğinizden emin olun.

Düğme

API Tasarım-Öncelikli Yaklaşımı Apidog'da Uygulayın

API'leri oluşturmanın ve kullanmanın daha kolay yolunu keşfedin

Axios NPM Tedarik Zinciri Saldırısı Nasıl Çalışır? (API Projelerinizi Nasıl Korursunuz?)