CVE-2026-10652
Açıklama
Zephyr'in DNS çözücü bileşeni (subsys/net/lib/dns), dns_unpack_answer() fonksiyonunda DNS yanıtlarından kaynak kayıtlarını ayrıştırır; ancak bu fonksiyon yalnızca sabit RR başlığını (type, class, TTL, rdlength) doğrulamakta ve alınan veri paketinin sonunu aşanlar da dahil olmak üzere saldırgan tarafından beyan edilen herhangi bir rdlength değerini kabul etmektedir. Ardından dns_validate_record() (resolve.c) içindeki TXT ve SRV tüketicileri, kendi sınır kontrollerini yapmadan memcpy aracılığıyla alma tamponundan rdlength bayt kadar veriyi (yalnızca DNS_MAX_TEXT_SIZE gibi kayıt türü maksimumuna göre kısıtlanmış olup pakete göre kısıtlanmamıştır) okur ve sonucu uygulamanın resolve geri çağırma fonksiyonuna iletir. Kötü niyetli veya sahte bir DNS sunucusu, UDP DNS yanıtlarını taklit eden yol üstü bir saldırgan veya (mDNS/LLMNR etkinse) herhangi bir LAN düğümü, bitişik alma havuzu belleğinin sınır dışı okunmasına neden olan kesilmiş bir TXT veya SRV yanıtı oluşturabilir; ifşa edilen eski baytlar (önceki DNS paketlerinin kalıntı içerikleri / başlatılmamış havuz belleği) uygulama tarafına TXT/SRV kayıt içerikleri olarak döndürülerek bilgi sızıntısına yol açar ve bazı yapılandırmalarda tahsis sınırını aşarak hata oluşmasına ve hizmet reddine neden olabilir. Okuma işlemi sınırlıdır (TXT için ~64 bayt, SRV için ~6 bayt) ve salt okunurdur (yazma yoktur). Düzeltme, dns_unpack_answer() içindeki tek kontrol noktasında, beyan edilen rdata değeri dns_msg->msg_size değerini aşan tüm kayıtları reddeder. Etkilenen sürümler: v4.3.0 ve v4.4.0.
Nasıl düzeltilir
Etkilenen ürünler
| Ürün | Etkilenen sürümler | Düzeltildiği sürüm |
|---|---|---|
| zephyrproject zephyr | 4.3.0 ≤ v ≤ 4.4.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.