CVE-2026-52982
Açıklama
Linux kernel'de aşağıdaki güvenlik açığı giderilmiştir: net: usb: rtl8150: rtl8150_start_xmit() fonksiyonundaki serbest bırakıldıktan sonra kullanım (use-after-free) hatası düzeltildi syzbot, usb_submit_urb() çağrıldıktan sonra tx istatistikleri için skb->len değerine erişilirken rtl8150_start_xmit() içerisinde bir KASAN slab-use-after-free okuma hatası bildirmiştir: BUG: KASAN: slab-use-after-free in rtl8150_start_xmit+0x71f/0x760 drivers/net/usb/rtl8150.c:712 Read of size 4 at addr ffff88810eb7a930 by task kworker/0:4/5226 URB tamamlanma işleyicisi olan write_bulk_callback(), dev_kfree_skb_irq(dev->tx_skb) aracılığıyla skb'yi serbest bırakır. URB, gönderici tarafında usb_submit_urb() geri dönmeden önce başka bir CPU'da softirq bağlamında tamamlanabilir; bu nedenle gönderici skb->len değerini okuduğunda, skb çoktan işlemciye özel completion_queue'ya eklenmiş ve net_tx_action() tarafından serbest bırakılmış olur: CPU A (xmit) CPU B (USB completion softirq) ------------ ------------------------------ dev->tx_skb = skb; usb_submit_urb() --+ |-------> write_bulk_callback() | dev_kfree_skb_irq(dev->tx_skb) | net_tx_action() | napi_skb_cache_put() <-- free netdev->stats.tx_bytes | += skb->len; <-- UAF read Bu sorun, URB gönderilmeden önce skb->len değeri önbelleğe alınarak ve tx_bytes sayacı güncellenirken bu önbelleğe alınmış değer kullanılarak düzeltilmiştir. Mevcut tx_bytes semantiği korunmuştur: sayaç, cihaza iletilen ETH_ZLEN/USB hizalama dolgulu "count" değerini değil, orijinal çerçeve uzunluğunu (skb->len) takip eder. Bunu değiştirmek kullanıcı tarafından fark edilebilir bir muhasebe değişikliği olacaktır ve bu UAF düzeltmesinin kapsamı dışındadır.
Nasıl düzeltilir
- linux linux_kernel5.10.258, 5.15.209, 6.1.175, 6.6.141, 6.12.91, 6.18.33, 7.0.10 ya da sonraki bir sürüm
Etkilenen ürünler
| Ürün | Etkilenen sürümler | Düzeltildiği sürüm |
|---|---|---|
| linux linux_kernel | 2.6.12.1 ≤ v < 5.10.258, 5.11 ≤ v < 5.15.209, 5.16 ≤ v < 6.1.175, 6.2 ≤ v < 6.6.141, 6.7 ≤ v < 6.12.91, 6.13 ≤ v < 6.18.33, 6.19 ≤ v < 7.0.10, 2.6.12, 7.1 | 5.10.258, 5.15.209, 6.1.175, 6.6.141, 6.12.91, 6.18.33, 7.0.10 |
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.