CVE-2026-80926
Açıklama
Linux kernel içerisinde aşağıdaki güvenlik açığı giderilmiştir: ksmbd: oplock break bildirimindeki serbest bırakıldıktan sonra kullanım (use-after-free) hatası düzeltildi smb2_oplock_break_noti() fonksiyonu, herhangi bir kilit olmadan opinfo->conn değerini okur ve uyku moduna geçebilecek iki tahsisat işleminden sonra bu değeri çözümler. Oplock'a sahip olan kalıcı tutamaç bağlantısı kesildiğinde, session_fd_check() fonksiyonu ci->m_lock altında opinfo->conn değerini temizler ve conn referansını düşürür; ardından son ksmbd_conn_put() çağrısı bağlantıyı serbest bırakır. Kapatma işlemiyle yarışan başka bir bağlantı tarafından tetiklenen bir break durumu, serbest bırakılan bağlantıyı yeniden canlandırabilir: ksmbd_conn_get() basit bir atomic_inc işlemidir ve kuyruğa alınan break işi daha sonra bayatlamış conn değerini ksmbd_conn_write() aracılığıyla çözer; bu durum, kalıcı toplu oplock sahibi olan herhangi bir kimliği doğrulanmış istemci tarafından erişilebilir bir serbest bırakıldıktan sonra kullanım (use-after-free) açığına yol açar. Yeni bir referans almak yerine, çağıranın inode bilgisi bildirim yoluna dahil edilmiştir. oplock_break() fonksiyonunu çağıran her yapı, break hedefinin oplock listesine sahip olan inode üzerinde zaten geçerli bir ksmbd_file (veya üst lease break yollarında açık bir ksmbd_inode_lookup_lock() referansı) tutmaktadır; bu nedenle çağrı sırasında ci serbest bırakılamaz ve kilidi, eşzamanlı bir kapatma işleminin serbest bırakabileceği opinfo->o_fp değerini çözümlemeden alınabilir. Bağlantı, session_fd_check() ve ksmbd_reopen_durable_fd() fonksiyonlarının opinfo->conn değerini güncellemek için kullandığı aynı kilit olan ci->m_lock altında seçilir ve sabitlenir; böylece eşzamanlı bir ayırma işlemi ya temizleme işlemiyle girdiği yarışı kaybeder ya da bildirim işi onu serbest bırakana kadar bağlantıyı canlı tutar. Referans iş öğesine aktarılır ve tahsisat hatalarında serbest bırakılır.
Nasıl düzeltilir
- Linux Linux892f643b141aee3f7aa7c0fc61ddcb55c59f1996, 5de0527f782430b1109a447646e32033ad018a6a, c8279ae8df68cce9cd3b785e85f7a86c80a46e78, 8cc98db4fc590e6c7d9db6529320982ee16c5d1d, 0e753899627b5e28a9fea8bca98262a6f65a2452, 6.6.158, 6.12.111, 6.18.51, 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 | 945a86b21b40fb17183f5b27461baa6f03e2467f ≤ v < 892f643b141aee3f7aa7c0fc61ddcb55c59f1996, 1ff58dcfcab434ebb51649da33774fbb8e1f7b67 ≤ v < 5de0527f782430b1109a447646e32033ad018a6a, e735dbd489e3ea02be78dba991056fe1138be51e ≤ v < c8279ae8df68cce9cd3b785e85f7a86c80a46e78, b003086d76968298f22e7cf62239833b5a3a06b1 ≤ v < 8cc98db4fc590e6c7d9db6529320982ee16c5d1d, b003086d76968298f22e7cf62239833b5a3a06b1 ≤ v < 0e753899627b5e28a9fea8bca98262a6f65a2452, 75e33deda658c1ab3a9336cbdb1436536f9b3660, 6.6.143 ≤ v < 6.6.158, 6.12.94 ≤ v < 6.12.111, 6.18.36 ≤ v < 6.18.51, 7.0.13 ≤ v < 7.1, 7.1 | 892f643b141aee3f7aa7c0fc61ddcb55c59f1996, 5de0527f782430b1109a447646e32033ad018a6a, c8279ae8df68cce9cd3b785e85f7a86c80a46e78, 8cc98db4fc590e6c7d9db6529320982ee16c5d1d, 0e753899627b5e28a9fea8bca98262a6f65a2452, 6.6.158, 6.12.111, 6.18.51, 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.