deniz.in

Piyasalar

Hava durumu

Hava durumu yükleniyor

· kaynak dev.to (home feed)

Tomcat CVE-2026-77762: HTTP/2 race durumu trailer'ları geri dönüştürülen isteklere sızdırıyor

Apache Tomcat 11.0.26, eski bir HPACK emitter'ının bir HTTP/2 isteğinin trailer alanlarını başka bir isteğe sızdırabildiği CVE-2026-77762'yı kapatıyor. Bunu yalnızca yükseltme düzeltiyor; yapılandırma tabanlı bir geçici çözüm yok.

Tomcat CVE-2026-77762: HTTP/2 race durumu trailer'ları geri dönüştürülen isteklere sızdırıyor

Geri dönüştürülmüş bir istek ve eski bir emitter

Projenin 11.x güvenlik açığı sayfasında 15 Eylül 2026 tarihli olarak yer alan Apache Tomcat 11.0.26, Tomcat güvenlik ekibine özel olarak bildirilen bir dizi hatanın düzeltmelerini içeriyor. Bunlardan biri CVE-2026-77762: eski bir HPACK emitter'ının, havuza geri dönüştürülmüş bir istek nesnesine trailer alanları enjekte ettiği bir race durumu. dev.to'da yayımlanan bir yazıya göre hata 21 Ağustos 2026'da bildirildi, 23 Eylül 2026'da kamuya açıklandı ve fd309997 numaralı commit ile yamalandı.

CVE'ye eklenen önem derecelendirmeleri büyük ölçüde ayrışıyor. Apache sorunu Düşük olarak derecelendirirken, dev.to yazısının dayandığı üçüncü taraf sürüm özeti hatayı CWE-362, yani race condition ile eşleştiriyor ve CVSS 8.1 puanı veriyor. Bunu dahili olarak önceliklendiren ekipler hangi ölçeğe güveneceklerine karar vermek zorunda kalacak.

Sızıntı nasıl gerçekleşiyor

HTTP/2 başlık bloklarını HPACK ile sıkıştırır ve bu şema durum bilgisine sahiptir: her uç nokta, bir bağlantıdaki mesajlar boyunca sıkıştırma bağlamını canlı tutar. Tomcat'te bu bağlam, havuzlanmış bir bağlantı üzerinde HTTP/2 trafiğini yazmakla sorumlu emitter ile birlikte bulunur. Bir istek nesnesi başka bir kullanıcı tarafından yeniden kullanılmak üzere havuza döndüğünde, sonraki mesajın temiz bir durumdan başlaması için bu emitter'ın sıfırlanması gerekir.

CVE-2026-77762 tam da bu devir teslimdeki bir race durumu. Doğru zamanlamayla, eski bir emitter, bir alışverişe ait trailer alanlarını, bu arada geri dönüştürülüp yeniden atanmış bir isteğe yazacak kadar uzun süre ayakta kalıyor. Pencere sunucu tarafında bir zamanlama problemi olduğu için saldırganın eşzamanlı HTTP/2 istekleri gönderebilmesi ve doğru anda geri dönüştürülmüş bağlantıya denk gelmesi gerekir.

Bir detay hem tespiti hem de gerçek dünyadaki etkiyi şekillendiriyor: trailer'lar bir mesajın gövdesinden sonra gelir. Başlıkları ve yükü okuyup trailer'lara hiç bakmayan kod, enjekte edilen alanları asla görmeyecektir.

Etki ve etkilenen sürümler

Pratikte istekler birbirini kirletiyor. Bir istemcinin etkilediği trailer alanları, başka bir istemcinin temiz olarak gönderdiğine inandığı bir istekte ortaya çıkabiliyor ve sonrasında ne olacağı tamamen uygulamaya bağlı. Trailer'ları imzalar, metadata veya yönlendirme ipuçları için kullanan bir servis, kabul etmeyi hiç amaçlamadığı değerlere göre hareket edebilirken; trailer'ları yok sayan bir servis büyük olasılıkla hiçbir şey fark etmeyecek — bu da Apache ekibinin Düşük derecelendirmesiyle örtüşüyor.

11.0.x hattında Tomcat 11.0.0-M1'den 11.0.25'e kadar olan sürümler etkilenen olarak listeleniyor ve düzeltme 11.0.26 sürümünde bulunuyor.

Etkilenme alanını ölçmek güç. dev.to yazısı, dünya genelinde 580.597 örnek döndüren Apache Tomcat için bir ZoomEye aramasına işaret ediyor; ancak bu rakam genel Tomcat ayak izini yansıtıyor, savunmasız dağıtımların sayısını değil. CVE tanımlayıcısının kendisine göre yapılan bir arama hiçbir sonuç döndürmüyor, çünkü sunucu tarafındaki bir race durumu bir HTTP yanıtında hiçbir şey belli etmiyor; dolayısıyla etkilenen sürümleri tespit etmek varlık envanterine kalıyor.

Çözüm

Çözüm, Tomcat 11.0.26 veya sonraki bir sürüme yükseltmek. Danışma belgesi bu spesifik sorun için bağımsız bir yapılandırma geçici çözümü sunmuyor; belgelenmiş çare kod değişikliğinin kendisi.

Aynı sürüm ayrıca bir HTTP/2 istek başlığı karışıklığını (CVE-2026-86350), bir AJP hizmet dışı bırakma sorununu (CVE-2026-78383), WebSocket mesaj kaçağını (CVE-2026-87022) ve bir WebSocket close meşgul-bekleme hizmet dışı bırakma sorununu (CVE-2026-77791) kapatıyor. dev.to yazısının da belirttiği gibi, 11.0.26'yı tek seferde dağıtmak her tanımlayıcıyı ayrı ayrı takip etmekten daha verimli.

Neden önemli

İstekler arası sızıntı, sunucu tarafı kodunun arkasındaki temel bir varsayımı zayıflatıyor: bir istek nesnesinin tam olarak tek bir istemcinin gönderdiğini yansıttığı varsayımı. Trailer'ların imza, iz metadata'sı veya yönlendirme kararları taşıdığı yerlerde bu bir çökme değil bir veri bütünlüğü hatasıdır ve belirgin yerel bir nedeni olmayan kafa karıştırıcı yanlış davranışlar olarak ortaya çıkabilir.

İki operasyonel nokta öne çıkıyor. Birincisi, race durumu tarayıcıların parmak izi çıkarabileceği hiçbir şeyi yanıtlarda bırakmıyor; dolayısıyla kurumlar, neyin yamalanması gerektiğini bilmek için Tomcat 11.0.x dağıtımlarının doğru envanterlerine ihtiyaç duyuyor. İkincisi, Apache'nin Düşük derecelendirmesi ile üçüncü taraf CVSS 8.1 puanı arasındaki uçurum, üretici ve toplu puanların geniş farklarla ayrışabileceğinin bir hatırlatıcısı; burada pratik önem, uygulamanın trailer'ları hiç okuyup okumadığına bağlı.

  • #apache-tomcat
  • #http2
  • #security
  • #cve
  • #web-servers

İlgili yazılar