· kaynak dev.to (home feed)
Axios multipart header enjeksiyonu CVE-2026-42037 olay müdahale kontrol listesi getirdi
Axios'un multipart parça başlıklarındaki CRLF enjeksiyonu (CVE-2026-42037), 1.0.0 sürümünden 1.15.1 öncesi yayınlara kadar etki ediyor. Dev.to'daki bir kontrol listesi, bu açığı somut bir olay müdahale prosedürüne dönüştürüyor.

Axios multipart işleme yönelik CRLF enjeksiyonu
dev.to'da yayınlanan bir kontrol listesi, olay müdahale ekiplerine yaygın kullanılan JavaScript HTTP kütüphanesi Axios'taki başlık enjeksiyonu açığı CVE-2026-42037 konusunda yol gösteriyor. Makaleye göre kusur, Axios'un 1.0.0 sürümünden 1.15.1 öncesi yayınlara kadar olan sürümleri etkiliyor ve güvenilmeyen dosya metadatasına gömülü satır başı (CR) ve satır sonu (LF) karakterlerinin multipart form parçalarının başlıklarına kadar ulaşmasına imkân tanıyor. Açık, CVSS 3.1 puanı 5.3 olan CWE-93 olarak sınıflandırıldı. Temel aldığı GitHub duyurusu GHSA-445q-vr5w-6q77 bir kavram kanısı (proof of concept) içeriyor; CISA zenginleştirme verisi sömrüyü poc aşamasında etiketliyor ve sorunu otomatikleştirilebilir olarak işaretlemiyor. Yazar bir KEV kaydı ve doğrulanmış aktif sömürü bulamadı; ayrıca ZoomEye sorgusunun 5.548.145 Node.js parmak izi döndürdüğünü ama CVE filtresinde eşleşme olmadığını belirtiyor — bu sayılar etkilenen dağıtımların bir ölçüsü değil, arka plan bilgisi olarak sunuluyor.
Makalenin çerçeveye koyduğu müdahale, sırasıyla yanıtlanan üç soruya dayanıyor: etkilenen bir Axios derlemesi gerçekten çalışıyor muydu, güvenilmeyen Blob veya File metadatası bu koda ulaştı mı ve aşağı akıştaki bir parser enjekte edilmiş bir başlık üzerine harekete mi geçti? Tek başına bir paket uyarısı bunlardan hiçbirini yanıtlamıyor.
Kanıt toplama önce gelir
Ekipler, Blob veya File benzeri değerleri Axios FormData üzerinden aktaran yükleme (upload) rotalarını haritalayarak başlamalı. Saklama penceresi içinde makale, istek başına metadata toplamayı öneriyor: zaman damgası, rota, kimlik doğrulama durumu, kaynak adres, bildirilen MIME türü, dosya adı, aşağı akış servisi, yanıt durumu ve parser hataları. Dosya içerikleri yalnızca politika ve hukuki inceleme izin verdiği yerde kaydedilmeli.
Dağıtım bilgileri trafik verileri kadar önemli: rota başına kesin paket sürümü, image digest ve derleme zamanı. Yalnızca dış HTTP başlıklarını loglayan bir proxy enjekte edilmiş bir parça satırını tamamen kaçırabileceğinden, yazar alıcı tarafı parser loglarını ve uygulama serileştirme tanılamalarını, ayrıca mümkünse multipart boundary ve parça başlığı temsilini çekmeyi tavsiye ediyor.
Kendi derlemeniz üzerinde yeniden üretin
Makale ısrarla testin kontrollü bir ortamda, kuruluşun kendi dağıtımına karşı yapılması gerektiğini söylüyor — asla üçüncü taraflara veya üretim sistemlerine karşı değil. Yordam, dağıtılan Axios sürümünü, sentetik bir Blob benzeri değer ve yerel bir alıcı kullanarak CR ve LF karakterlerinin bir parça başlığına kadar hayatta kalıp kalmadığını kontrol ediyor. Testin uygulamanın doğrulama katmanı etkin şekilde Axios 1.15.1 veya sonraki bir sürümde tekrarlanması, dış yan etkiler yaratmadan savunmasız bir derlemeyi yamalanmış olandan ayırıyor.
Bir bozuk istek ne zaman sömürü sayılır
Duyuruda sayılan olası sonuçlar arasında Content-Type tabanlı filtrelerin atlatılması, parser kafa karışıklığı ve beklenmeyen form alanlarının ortaya çıkması var. Müdahale ekiplerinden alıcı loglarında sürpriz parça başlıkları, bozuk multipart istekleri ve yüklenen tür ile aşağı akıştaki bir kararı belirleyen tür arasındaki uyumsuzlukları aramaları, ardından aşağı akış servisinin gerçekte ne yaptığını belirlemeleri isteniyor: isteği mi reddetti, sakladı mı, ileri mi yönlendirdi, yoksa bir erişim kararı için mi kullandı.
Yazara göre sömürü iddiaları eksiksiz bir zincir gerektiriyor: saldırgan kontrolü, savunmasız kod, bir parser tepkisi ve sonuç doğuran bir çıkış. Ardından gelen bir eylemin olmadığı bir parser hatası bir filtre atlatma değildir; ayrıca negatif bulgular da olumlu bulgular kadar belgelenmeyi hak eder.
Yama ve geçici hafifletmeler
Çözüm, Axios'un 1.15.1 veya sonraki bir sürüme yükseltilmesi ve etkilenen artefaktların yeniden derlenmesi. Makalede atıf yapılan sürüm notları, multipart başlıklarından CRLF karakterlerinin temizlenmesini anlatıyor; pull request #10758 ise Blob.type üzerinden CR ve LF kaldırılmasını, varsayılan işlemeyi sıkılaştırılmasını ve dosya adı kodlamasının düzeltilmesini belgeliyor.
Anında yükseltmenin mümkün olmadığı yerlerde makale, yükleme sınırında MIME değerlerinde ve dosya adlarında CR ve LF karakterlerinin reddedilmesini, beklenen biçim kümesi biliniyorsa izinli (allowlist) bir iç tür kullanılmasını ve güvenlik kararları için parça metadatasına güvenmek yerine alıcı tarafında doğrulama yapılmasını öneriyor. Kimlik bilgileri yalnızca kanıt, veri veya istek bütünlüğünün etkilendiğini gösteriyorsa döndürülmeli: duyuru düşük bütünlük etkisi puanlıyor ve gizlilik ya da erişilebilirlik etkisi yok, ama aşağı akıştaki bir parser gerçek sonucu değiştirebilir.
Soruşturmanın kapanması, etkilenen servislerin, sürümlerin, erişilebilir rotaların, incelenen logların ve aşağı akış sonuçlarının belgelenmesini, dağıtımdan sonra üretimdeki sürümün doğrulanmasını ve Blob türündeki CR, LF ve CRLF için regresyon testleri eklenmesini, geçerli bir MIME testinin de yerinde kalmasını kapsıyor. Son kontrol: yeni bir bozuk istek artık multipart sözdizimine girmeden önce reddedilir mi? Bu yanıt hâlâ teorik kalıyorsa, olay kaydı bunu böyle belirtmeli.
Neden önemli
Axios, JavaScript ekosisteminin en yaygın kullanılan HTTP istemcilerinden biri; dolayısıyla 1.0.0'dan 1.15.1 öncesine uzanan bir açık, uzun bir maruz kalma izi bırakıyor. Kontrol listesinin gerçek değeri yordamsal: bir CVE uyarısını doğrulanabilir bir karar yoluna dönüştürüyor — dağıtılan sürümü doğrula, metadatanın savunmasız koda ulaşıp ulaşmadığını kanıtla, bir parser'ın bunun üzerine harekete geçip geçmediğini belirle — sonra da kapsamayı tırmandır. Ayrıca şiddet puanları etrafında bir disiplin modelliyor: orta düzey bir 5.3 puanı, Content-Type filtresi atlatmasının belirli bir iş hattı içinde neler yapabileceği hakkında pek bir şey söylemiyor. İstemci tarafından sağlanan MIME türlerinin bir güvenlik kararını etkilemesine izin veren her ekip için ders bu tek kütüphanenin ötesine genelleniyor: yamalanmış olsun ya da olmasın, o metadatayı alıcı tarafında doğrulayın.
- #axios
- #security
- #node-js
- #incident-response
- #vulnerability