CVE-2026-97985
Açıklama
Linux kernel içerisinde aşağıdaki güvenlik açığı giderilmiştir: af_unix: manage_oob() fonksiyonundaki son skb işaretçisi güncellendi. Fahad Alharbi, recv(MSG_PEEK) işleminin engellenmesinin, OOB skb nedeniyle CPU tüketimine yol açabileceğini bildirmiştir. Aşağıdaki durumlarda, manage_oob() OOB skb'leri atlar ve son recv(MSG_PEEK) için NULL döndürür: socketpair(AF_UNIX, SOCK_STREAM, 0, sk); 1) skb -> OOB skb -> NULL send(sk[0], "ab", 2, MSG_OOB); recv(sk[1], buf, 0, MSG_PEEK); 2) skb -> tüketilmiş OOB skb -> NULL send(sk[0], "ab", 2, MSG_OOB); recv(sk[1], buf, 1, MSG_OOB); recv(sk[1], buf, 0, MSG_PEEK); 3) tüketilmiş OOB skb -> OOB skb -> NULL send(sk[0], "a", 1, MSG_OOB); recv(sk[1], buf, 0, MSG_OOB); send(sk[0], "b", 1, MSG_OOB); recv(sk[1], buf, 1, MSG_PEEK); Bu durumda, unix_stream_read_generic() içinde @copied değeri 0 olur (sıfır uzunluklu tampon veya henüz tüketilmemiş non-OOB skb) ve unix_stream_data_wait() çağrılır. Ancak, unix_stream_read_generic() içinde @last güncellenmediği için bu işlem hemen geri döner ve iş parçacığı yeni bir skb için meşgul beklemeye (busy-wait) girer. @last değeri manage_oob() içinde güncellenmektedir. MSG_PEEK için @last, atlanan OOB ile güncellenir; peek olmayan durumlar için ise OOB bağlantısı kesildiğinden @last, döndürülen değerle (!copied olduğunda) eşleşir. manage_oob() fonksiyonunun inline olduğu ve herhangi bir stack canary eklenmediği unutulmamalıdır.
Nasıl düzeltilir
- Linux Linuxbd91dc313afe21e9d6b31ca6a47606a33ca5e35c, 0630bfc773d85ac44da05b2c5a037dbbd39301ab, f1816b3d7ce80dcf086bb68ff5ae6e09520ca1fa, fc62a26493a98a0424d9dae2eb92a1daa1321f65, 94fd4debd2e3a69cf93e766c8b328a810c228119, 6.6.160, 5.16, 6.2, 6.9 ya da sonraki bir sürüm
Etkilenen ürünler
| Ürün | Etkilenen sürümler | Düzeltildiği sürüm |
|---|---|---|
| Linux Linux | 022d81a709cd553bbe2db8675f8e824f4aee6284 ≤ v < bd91dc313afe21e9d6b31ca6a47606a33ca5e35c, 22dd70eb2c3d754862964377a75abafd3167346b ≤ v < 0630bfc773d85ac44da05b2c5a037dbbd39301ab, 22dd70eb2c3d754862964377a75abafd3167346b ≤ v < f1816b3d7ce80dcf086bb68ff5ae6e09520ca1fa, 22dd70eb2c3d754862964377a75abafd3167346b ≤ v < fc62a26493a98a0424d9dae2eb92a1daa1321f65, 22dd70eb2c3d754862964377a75abafd3167346b ≤ v < 94fd4debd2e3a69cf93e766c8b328a810c228119, ae3f9e1221b31b18dbd4c4b85d08574996bbd973, ba0db4638525b8b054b3d546b45f7e473f477027, 16dc252e7007547a7b72a2c21022ef81fb45e6a3, 6.6.29 ≤ v < 6.6.160, 5.15.157 ≤ v < 5.16, 6.1.88 ≤ v < 6.2, 6.8.8 ≤ v < 6.9, 6.9 | bd91dc313afe21e9d6b31ca6a47606a33ca5e35c, 0630bfc773d85ac44da05b2c5a037dbbd39301ab, f1816b3d7ce80dcf086bb68ff5ae6e09520ca1fa, fc62a26493a98a0424d9dae2eb92a1daa1321f65, 94fd4debd2e3a69cf93e766c8b328a810c228119, 6.6.160, 5.16, 6.2, 6.9 |
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.