CVE-2026-64190
Açıklama
Linux kernel'de aşağıdaki güvenlik açığı giderilmiştir: net: team: mod değişikliği sırasında team_xmit içindeki NULL pointer dereference hatası düzeltildi __team_change_mode(), team_adjust_ops() aracılığıyla güvenli dummy işleyicileri geri yüklemeden önce team->ops içeriğini memset() ile temizler. Başka bir CPU üzerinde RCU altında çalışan eşzamanlı bir team_xmit(), bu pencere sırasında team->ops.transmit değerini okuyabilir ve NULL bir fonksiyon işaretçisini çağırarak çekirdeğin çökmesine neden olabilir. Bu yarış durumu (race condition), team aygıtı üzerindeki iletim işlemiyle eşzamanlı olarak bir mod değişikliği (CAP_NET_ADMIN) gerektirir. BUG: kernel NULL pointer dereference, address: 0000000000000000 Oops: 0010 [#1] SMP KASAN NOPTI RIP: 0010:0x0 Call Trace: team_xmit (drivers/net/team/team_core.c:1853) dev_hard_start_xmit (net/core/dev.c:3904) __dev_queue_xmit (net/core/dev.c:4871) packet_sendmsg (net/packet/af_packet.c:3109) __sys_sendto (net/socket.c:2265) Orijinal kod, port olmamasının trafik olmaması anlamına geldiğini varsayıyordu; bu nedenle mod değişiklikleri ops içeriğini serbestçe memset()/memcpy() ile değiştirebiliyordu. Zorunlu taşıyıcılı AF_PACKET bu varsayımı bozmaktadır. Durumu güvenli hale getirmek yerine yarış durumunu önlemek için: memset()/memcpy() işlemleri, transmit veya receive alanlarına asla dokunmayan alan bazlı güncellemelerle değiştirildi. Bu iki işleyici yalnızca, tx_en_port_count == 0 olduğunda (hiçbir port bulunmadığından mod değişikliği sırasında her zaman doğrudur) zaten dummy işleyiciler kuran team_adjust_ops() tarafından yönetilir. WRITE_ONCE/READ_ONCE kullanımı, işleyici işaretçileri üzerindeki store/load yırtılmalarını (tearing) önler. exit_op() öncesindeki synchronize_net(), port kaldırma işlemi işleyicileri dummy'lere dönüştürmeden önceki eski mod durumuna hala referans verebilen mevcut okuyucuları boşaltır.
Nasıl düzeltilir
- linux linux_kernel6.18.35, 7.1 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 | 3.3 ≤ v < 6.18.35, 6.19 ≤ v < 7.1, 7.1 | 6.18.35, 7.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.