CVE-2024-32971
Açıklama
Apollo Router, Apollo Federation 2 kullanan federasyonel bir süpergrafı çalıştırmak için Rust ile yazılmış yapılandırılabilir bir grafik yönlendiricidir. Apollo Router'ın etkilenen sürümleri, sınırlı koşullar altında beklenmedik işlemlerin yürütülmesine yol açabilen ve istenmeyen verilere veya etkilere neden olabilen bir hata içermektedir. Bu durum yalnızca dağıtık sorgu planı önbelleğe alma (distributed query plan caching) özelliğini kullanacak şekilde yapılandırılan Router örneklerini etkilemektedir. Bu kusurun temel nedeni, Apollo Router'ın önbellek getirme mantığındaki bir hatadır: Bu kusur mevcut olduğunda ve dağıtık sorgu planlama önbelleğe alma etkinleştirildiğinde, Router'dan bir işlemin (bir sorgu, mutasyon veya abonelik fark etmeksizin) yürütülmesini istemek, o işlemin beklenmedik bir varyasyonunun yürütülmesiyle veya beklenmedik hataların oluşmasıyla sonuçlanabilir. Sorun, sorgu planı alttaki önbellekte (özellikle Redis) saklanan, daha önce yürütülmüş bir işlemin yanlışlıkla değiştirilmiş bir versiyonunun yürütülmesinden kaynaklanmaktadır. İşlemin türüne bağlı olarak sonuç değişebilir. Bir sorgu için, talep edilenle eşleşmeyen sonuçlar getirilebilir (örneğin, `fetchUsers(type: ENTERPRISE)` çalıştırmak yerine Router, `fetchUsers(type: TRIAL)` çalıştırabilir). Bir mutasyon için bu durum, alttaki altgraf sunucularına yanlış mutasyonların gönderilmesiyle sonuçlanabilir (örneğin, bir altgrafa `deleteUser(id: 10)` göndermek yerine Router, `deleteUser(id: 12)` çalıştırabilir). Dağıtık sorgu planı önbelleğe alma özelliğini kullanan kullanıcıların, Apollo Router sürümünü 1.45.1 veya üzerine yükseltmeleri ya da 1.43.2 sürümüne düşürmeleri önerilir. Apollo Router 1.44.0 veya 1.45.0 sürümlerinin kullanımı önerilmemektedir ve bu sürümler geri çekilmiştir. Yükseltme yapamayan kullanıcılar, bu sorunu hafifletmek için dağıtık sorgu planı önbelleğe alma özelliğini devre dışı bırakabilirler.
Nasıl düzeltilir
Kaynaklarda bu zafiyet için düzeltilmiş sürüm ya da yama bağlantısı yok.
Etkilenen ürünler
| Ürün | Etkilenen sürümler | Düzeltildiği sürüm |
|---|---|---|
| apollographql router | >=1.44.0, <1.45.1 | — |
Sürümünüzü kontrol edin
Ürünü seçin ve kullandığınız sürümü yazın; sürümün etkilenen aralıkta olup olmadığını görün.
Attack Surface Management
Alan adlarınıza bağlı varlıkları, bu varlıklarda çalışan teknolojileri ve bilinen zafiyetleri tek listede görün.