CVE-2026-102715
Açıklama
LAN üzerindeki herhangi bir ana bilgisayar, iki mDNS kaydı göndererek yanıtlayıcının iletim paketinin sonunun ötesine yazmasını sağlayabilir. Dize tablosu, her ismi dördün katına yuvarlanmış bir yuvada saklar: ```c /* addons/mdns/nxd_mdns.c:11436, 11443, 11447 */ memory_len = ((memory_len & 0xFFFFFFFC) + 8) & 0xFFFFFFFF; ... len = *((USHORT*)(p - 2)); /* slot boyutu, dize uzunluğu değil */ if ((len == memory_len) && ... _nx_mdns_name_match(start, memory_ptr, memory_size) ...) ``` Gelen bir ismin halihazırda saklanıp saklanmadığına karar veren arama işlemi, yuvarlanmış yuva boyutunu karşılaştırır; bu nedenle 12, 13, 14 ve 15 karakterli isimler aynı kovayı paylaşır. Kovadaki ikinci bir isme, birinciye ait işaretçi ile yanıt verilir ve kayıt daha sonra çağıranın hesapladığı uzunluktan üç bayta kadar daha uzun bir dize taşır. `_nx_mdns_packet_rr_add` (nxd_mdns.c:8911), tek sınır kontrolünü bu güncelliğini yitirmiş uzunluğa göre boyutlandırırken, `_nx_mdns_name_string_encode` gerçek dizeyi yazar. Uzunlukları aynı kovaya düşen sahip isimlerine sahip, `_http._tcp` sorgusuna verilen sıradan mDNS yanıtları olan iki PTR kaydı yeterlidir: ``` ==87491==ERROR: AddressSanitizer: heap-buffer-overflow WRITE of size 1 at 0x611000000124 thread T5 #0 _nx_mdns_name_string_encode addons/mdns/nxd_mdns.c:13096 #1 _nx_mdns_packet_rr_add addons/mdns/nxd_mdns.c:8911 0x611000000124 is 0 bytes to the right of 228-byte region ``` Taşma, `nx_packet_data_end` ötesinde saldırgan tarafından etkilenen bir ila üç baytlık isim verisidir. Normal bir havuzda bu durum, bir redzone yerine aynı havuzdaki bir sonraki pakete denk gelir; dolayısıyla görünür etki, temiz bir çökmeden ziyade bozulmuş komşu bir paket veya bozulmuş bir havuz boş liste yapısıdır. Eşleşme beyan etmeden önce yuva boyutunu saklanan dize uzunluğuyla karşılaştırın veya dize uzunluğunu yuva üstbilgisinde tutup çağırana döndürün, böylece kodlayıcı ve sınır kontrolü uyumlu olur.
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 |
|---|---|---|
| Eclipse Foundation eclipse-threadx/netxduo | v ≤ 6.5.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.