Zafiyet.live Keşfet. Değerlendir. Düzelt. Doğrula.
  • Son 7 gün
  • CWE-770

CVE-2026-115448

Apache ZooKeeper'da anlık görüntü serileştirmede sınırsız özyineleme nedeniyle hizmet reddi

Apache Software Foundation Apache ZooKeeper

Yüksek 8,7 CVSS 4.0
Yayımlandı
Güncellendi
4 Kas 2026
Açık yaşı
1 gün
Kaydı açan
apache

Yönetici özeti

Bu açık, dağıtık koordinasyon servisinin kalıcı olarak çalışmaz hale gelmesine ve bazı durumlarda veri kaybına yol açabilir. Servise bağımlı uygulamalarınız kesintiye uğrayabilir ve kurtarma süreci zaman ve maliyet gerektirebilir. Etkilenen sürümler varsa güncellemeyi öncelikli olarak planlamanız önerilir.

ÖzetTürkçe

Apache ZooKeeper, veri ağacını anlık görüntü (snapshot) olarak yazarken her znode seviyesi için bir yığın çerçevesi kullanarak derinlik sınırı olmadan özyinelemeli çalışmaktadır. Znode oluşturma yetkisi olan bir istemci, iç içe geçmiş çok derin bir znode zinciri oluşturabilir; bu da anlık görüntü alınırken JVM yığınının tükenmesine ve anlık görüntü iş parçacığının çökmesine yol açar. Etkilenen sürümler 3.8.0–3.8.7 ve 3.9.0–3.9.6'dır.

Saldırgan ne yapabilir?

Saldırgan hizmeti kalıcı olarak devre dışı bırakabilir: sunucu yeniden başlatıldığında işlem günlüğünden derin ağacı yeniden oluşturup başlangıç anlık görüntüsünde yeniden çöker, bu da veri kaybına yol açabilir ve aynı günlük lider ile takipçilere yayılarak topluluğa (ensemble) sirayet edebilir.

Kaynaktaki açıklama (İngilizce)

Uncontrolled recursion in Apache ZooKeeper. The server serializes its data tree to a snapshot by recursing one stack frame per znode level, with no depth bound. A client permitted to create znodes (the default root ACL is open) can build a chain of nested znodes deep enough that taking a snapshot exhausts the JVM stack and kills the snapshot thread; sizes stay within jute.maxbuffer, so existing limits do not prevent it. This is a denial of service that becomes persistent: on restart the server rebuilds the deep tree from its transaction log and fails again while taking the startup snapshot, so it does not return to service, and recovery can entail data loss. The same log affects a leader and its followers, so it can spread across an ensemble.

This issue affects Apache ZooKeeper 3.8.0 through 3.8.7 and 3.9.0 through 3.9.6. Users are recommended to upgrade to 3.8.8 or 3.9.7, which fix the issue. As a workaround, use ACLs and authentication to restrict znode creation rather than relying on the default open root ACL.

Ne yapmalı?

  1. Apache ZooKeeper'ı 3.8 dalındaysanız 3.8.8 sürümüne, 3.9 dalındaysanız 3.9.7 sürümüne yükseltin. Genel öneri
  2. Varsayılan açık kök ACL'sine güvenmek yerine znode oluşturmayı ACL'ler ve kimlik doğrulama ile kısıtlayın; yükseltme tamamlanana kadar bu geçici önlemi uygulayın. Genel öneri

Ek önlemler

  • Yalnızca güvenilen istemcilerin znode oluşturabilmesini sağlayın ve kimlik doğrulamasız erişimi kapatın. Genel öneri
  • Anlık görüntü alma işlemlerini ve sunucu çökme kayıtlarını izleyerek olağandışı davranışları erkenden tespit edin. Genel öneri
  • Yükseltmeden önce veri ve işlem günlüklerinin yedeğini alın. Genel öneri

Etkilenen sürümler1 yazılım

YazılımEtkilenenDüzeltildiği sürüm
Apache Software Foundation Apache ZooKeeper ≥ 3.9.0, ≤ 3.9.7 –
≥ 3.8.0, ≤ 3.8.8 –

Kaynaklar4 kaynak

Kayıt geçmişi

  1. Yayımlandı

İlgili açıklar

Türkçe metin, resmi kayıtlardaki bilgilerle yapay zekâ yardımıyla yazıldı ve yayından önce otomatik kontrollerden geçti. Bir değişikliği uygulamadan önce üreticinin duyurusuna mutlaka bakın.