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

CVE-2026-84727

Apache bRPC RTMP protokolünde Abort mesajı ile tetiklenen kullanım-sonrası-serbest bırakma açığı

Apache Software Foundation Apache bRPC

Orta 5,4 CVSS 3.1
Yayımlandı
Güncellendi
21 Eki 2026
Açık yaşı
7 gün
Kaydı açan
apache

ÖzetTürkçe

Apache bRPC'nin RTMP protokol uygulamasında, 1.18.0 öncesi tüm sürümlerde (< 1.18.0) kullanım-sonrası-serbest bırakma (use-after-free) açığı bulunmaktadır. Bu açık, kötü niyetli bir RTMP eş noktasının özenle hazırlanmış bir Abort mesajı aracılığıyla süreci çökertmesine veya belleği potansiyel olarak bozmasına olanak tanır.

Kök neden: RTMP Abort (protokol kontrol mesajı tipi 2) işlenirken, RTMP politika uygulaması hedef RtmpChunkStream nesnesini siler. Gönderme yolu (RtmpUnsentMessage::AppendAndDestroySelf -> RtmpChunkStream::SerializeMessage) gönderici iş parçacıklarında eşzamanlı çalışır ve aynı RtmpChunkStream nesnesine senkronizasyon olmadan erişir. Uzak bir eş, giden bir mesajı serileştirmek için eşzamanlı olarak kullanılan bir chunk stream'i adlandıran bir Abort mesajı gönderirse, akış nesnesi hâlâ kullanımdayken serbest bırakılır ve kullanım-sonrası-serbest bırakma oluşur. Ayrıca, chunk stream'in silinmesi önceki mesaj başlığını da atar; bu nedenle o akış üzerindeki sıkıştırılmış (tip-3) chunk başlıkları artık çözümlenemez.

Etkilenen senaryolar: bRPC RTMP protokol uygulamasını (rtmp politikası) kullanan, uzak uç noktanın güvenilmediği her uygulama; RTMP sunucusu veya RTMP istemcisi olarak çalışan uygulamalar dahildir. Saldırganın, gönderim için eşzamanlı kullanılan bir chunk stream kimliğini hedefleyen bir Abort mesajı göndermesi gerekir; bu da süreci çökertebilir veya bellek bozulmasına yol açabilir.

Düzeltme (aşağıdaki seçeneklerden birini tercih edin): 1. Bu sorunu gideren bRPC 1.18.0 sürümüne yükseltin. 2. Yama uygulayın (bağlantı bu bültende yer almamaktadır; yama için Apache bRPC'nin resmi GitHub deposundaki ilgili pull request'e bakılabilir).

Kaynaktaki açıklama (İngilizce)

Use-after-free in the RTMP protocol implementation in Apache bRPC (version < 1.18.0) on all platforms allows a malicious RTMP peer to crash the process or potentially corrupt memory via a crafted Abort message.

Root Cause:
When processing an RTMP Abort (protocol control message type 2), the RTMP policy implementation deleted the target RtmpChunkStream object. The send path (RtmpUnsentMessage::AppendAndDestroySelf -> RtmpChunkStream::SerializeMessage) runs concurrently on sender threads and dereferences the same RtmpChunkStream object without synchronization. If a remote peer sends an Abort message naming a chunk stream that is concurrently being used to serialize an outgoing message, the stream object is freed while still in use, resulting in a use-after-free. Additionally, deleting the chunk stream discarded its previous message header, so subsequent compressed (type-3) chunk headers on that stream could no longer be decoded.

Affected Scenarios:
Any application using the bRPC RTMP protocol implementation (rtmp policy), either as an RTMP server or as an RTMP client, where the remote endpoint is untrusted. The attacker needs to send an Abort message targeting a chunk stream id that is concurrently used for sending, which can crash the process or lead to memory corruption.

How to Fix:
(Choose one of the following options)
1. Upgrade bRPC to version 1.18.0, which fixes this issue.
2. Apply this patch: https://github.com/apache/brpc/pull/3515

Bu açığın açıklamasını Türkçeye çevirdik. Adım adım çözüm önerilerini kritik ve yeni açıklar için hazırlıyoruz; düzeltilmiş sürüm aşağıdaki tabloda, ayrıntılar üreticinin duyurusunda.

Etkilenen sürümler1 yazılım

YazılımEtkilenenDüzeltildiği sürüm
Apache Software Foundation Apache bRPC < 1.18.0 1.18.0

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.