CVE-2026-64026
Açıklama
Linux kernel içerisinde aşağıdaki güvenlik açığı giderilmiştir: rxrpc: recvmsg içinde verilerin tampona kopyalanmasıyla DATA şifre çözme ve splice() arasındaki sorun düzeltildi Bu işlem, CVE-2026-43500 için yapılan düzeltmeyi iyileştirmektedir. splice() tarafından yerel olarak iletilen bir DATA paketinin olduğu yerde şifresinin çözülmesinden kaynaklanan pagecache bozulması; I/O iş parçacığındaki paket paylaşımının kaldırılması ve paket içeriğinin koşulsuz olarak şifrenin çözüldüğü bir bounce buffer'a çıkarılmasıyla düzeltilmiştir. Ardından recvmsg() (veya çekirdek karşılığı), verileri bounce buffer'dan hedef tampona kopyalar. Böylece sk_buff değiştirilmeden kalır. Bunun ek bir avantajı da paketin, kripto algoritmalarının doğrudan işlemesi için gereken doğru hizalamayla tamponda düzenlenmesidir. Kripto performansı biraz daha hızlı görünmektedir ve şaşırtıcı bir şekilde, şifrelenmemiş performans çok fazla değişmemektedir; bu durum muhtemelen I/O iş parçacığındaki karmaşıklığın giderilmesinden kaynaklanmaktadır. Bir diğer avantaj ise, I/O iş parçacığının paket dağıtımını, ACK üretimini vb. yavaşlatacak olan paketleri kopyalamak zorunda kalmamasıdır. Tampon çağrıya aittir ve başlangıçta tüm bir jumbo alt paketini tutmaya yetecek kadar büyük olan 2K boyutunda tahsis edilir, ancak gerekirse tampon boyutu artırılır. Bununla birlikte, bu yöntemle MSG_PEEK, daha sonraki bir paketin tamponda şifresinin çözülmesine neden olabilir; bu durumda, sonraki bir recvmsg() işlemi için önceki paketin yeniden şifresinin çözülmesi gerekecektir. Artık rx_pkt_offset değerinin meşru olarak 0 geçerli bir ofset olarak görebileceği unutulmamalıdır, bu nedenle geçersiz bir ofseti belirtmek için USHRT_MAX kullanımına geçilmiştir. Ayrıca genel olarak mevcut sk_buff tamponlarını uygun boyutta yeni bir kmalloc'lu tamponla değiştirmeyi, eski veri ve frag'ları terk etmeyi tercih ederdim; çünkü bu, MSG_PEEK yönetimini kolaylaştırır ve yeniden şifre çözme sorununu ortadan kaldırır, ancak bunu başarmak oldukça karmaşık görünmektedir. skb_morph() istediğim şeye yakın görünse de yeni bir sk_buff tahsis etmek istemiyorum.
Nasıl düzeltilir
- linux linux_kernel6.6.143, 6.12.93, 6.18.35, 7.0.11 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 | 5.3.1 ≤ v < 6.6.143, 6.7 ≤ v < 6.12.93, 6.13 ≤ v < 6.18.35, 6.19 ≤ v < 7.0.11, 5.3, 7.1 | 6.6.143, 6.12.93, 6.18.35, 7.0.11 |
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.