CVE-2026-18748

Düşük

Açıklama

Bluetooth Classic A2DP ana bilgisayarı, bir baytlık len alanı ve sabit 8 baytlık bir codec_ie[] dizisinden oluşan struct bt_a2dp_codec_ie içinde bir codec Bilgi Öğesini (IE) saklar. Bir AVDTP eşi 8 bayttan daha uzun bir codec IE gönderdiğinde, subsys/bluetooth/host/classic/a2dp.c dosyasındaki a2dp_process_config_ind() yalnızca ilk 8 baytı kopyalamış ancak saldırgan tarafından seçilen tam uzunluğu len alanına atamış ve ardından bu tutarsız yapıyı stream->codec_config aracılığıyla uygulamanın struct bt_a2dp_stream yapısına aktarmıştır. bt_a2dp_get_config_cb() ve bt_a2dp_set_config_cb() fonksiyonları da aynı kopyayı kırpıp uzunluğu koruma modeline sahipti. Sonraki tüm tüketiciler len değerine güvenir. Özellikle gelen bir AVDTP GET_CONFIGURATION isteğine yanıt veren a2dp_get_config_ind(), net_buf_add_mem(rsp_buf, &ep->stream->codec_config.codec_ie[0], ep->stream->codec_config.len) işlemini yürütür; bu nedenle önce aşırı boyutlu bir codec IE taşıyan bir SET_CONFIGURATION gönderen ve ardından yapılandırmayı geri isteyen eşleşmiş bir BR/EDR eşi, yığının 8 baytlık dizinin sonunun yaklaşık 245 bayt ötesini okumasına ve bunları yanıtta iletmesine neden olur. codec_config, struct bt_a2dp_stream yapısının son üyesidir, dolayısıyla okuma işlemi uygulamanın stream nesnesine komşu belleğe kadar uzanır. Aynı tutarsızlık config_req(), reconfig_req() ve get_config_rsp() uygulama geri çağırmalarına da iletilir ve burada len baytlık doğal bir memcpy() işlemi ek bir sınır dışı okuma gerçekleştirir. Havadaki bilgi ifşasına ulaşmak için CONFIG_BT_CLASSIC ile birlikte CONFIG_BT_A2DP'ye, eşleşmeyi tamamlamış bir AVDTP eşine (AVDTP L2CAP kanalı BT_SECURITY_L2 gerektirir) ve BT_A2DP_EP_INIT() üzerinden kayıt edilmiş SBC dışı bir codec (BT_A2DP_MPEG1/BT_A2DP_MPEG2/BT_A2DP_ATRAC/BT_A2DP_VENDOR) yerel uç noktasına ihtiyaç vardır çünkü SBC dalı IE uzunluğunu zaten 4 bayta sabitlemektedir. bt_a2dp_get_config_cb() yanıt yolu böyle bir sınırlamaya sahip değildir ve hatalı uzunluk değerini herhangi bir uygulamaya iletir. Sınır dışı yazma söz konusu değildir: net_buf kuyruk alanı kontrolü hedefi sınırlar, bu nedenle etki, komşu RAM'in sınırlı bir bölgesinin eşe ifşa edilmesiyle sınırlıdır. Çözüm, sabit kodlanmış BT_A2DP_MAX_IE_LENGTH değerini yapılandırılabilir CONFIG_BT_A2DP_CODEC_MAX_IE_LEN (varsayılan 8, aralık 4–253) ile değiştirir, codec_ie[] boyutunu buna göre belirler ve sessizce kırpmak yerine bunu aşan her alınan IE'yi reddeder; böylece len artık geçerli bayt sayısını aşamaz.

ÖnemDüşük
CVSS3.5
İstismar olasılığı—
ÜrünZephyr
Yayın21 Eki 2026
İlk görülme21 Eki 2026

Nasıl düzeltilir

Etkilenen ürünler

ÜrünEtkilenen sürümlerDüzeltildiği sürüm
zephyrproject zephyr4.3.0 ≤ v ≤ 4.4.2—

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.

Intelligence 360 paketinde

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.

CVE-2026-18748 · Zephyr · Dark Radar