CVE-2024-41050
Açıklama
Linux kernel'de aşağıdaki güvenlik açığı giderilmiştir: cachefiles: yeniden kullanımı önlemek için msg_id'nin döngüsel tahsisi Kötü niyetle tamamlanmış bir yeniden açma isteğinden sonra msg_id'nin yeniden kullanılması, aşağıda gösterildiği gibi bir okuma isteğinin işlenmeden kalmasına ve sistemin kilitlenmesine neden olabilir: t1 | t2 | t3 ------------------------------------------------- cachefiles_ondemand_select_req cachefiles_ondemand_object_is_close(A) cachefiles_ondemand_set_object_reopening(A) queue_work(fscache_object_wq, &info->work) ondemand_object_worker cachefiles_ondemand_init_object(A) cachefiles_ondemand_send_req(OPEN) // msg_id 6 alınıyor wait_for_completion(&req_A->done) cachefiles_ondemand_daemon_read // msg_id 6 req_A okunuyor cachefiles_ondemand_get_fd copy_to_user // Kötü niyetli tamamlama msg_id 6 copen 6,-1 cachefiles_ondemand_copen complete(&req_A->done) // nesne kapatılmayacak // çünkü ondemand_id && fd geçerli. // ondemand_object_worker() tamamlandı // ancak nesne hala yeniden açılıyor. // yeni açma isteği req_B cachefiles_ondemand_init_object(B) cachefiles_ondemand_send_req(OPEN) // msg_id 6 yeniden kullanılıyor process_open_req copen 6,A.size // Beklenen başarısız copen işlemi başarıyla yürütüldü copen işleminin başarısız olması beklenir ve başarısız olduğunda fd'yi kapatır; bu da nesneyi kapatmaya ayarlar ve ardından kapatma işlemi yeniden açmayı tekrar tetikler. Ancak, msg_id yeniden kullanımı sonucunda başarılı bir copen gerçekleştiği için, anonim fd daemon çıkana kadar kapatılmaz. Bu nedenle, yeniden açmanın tamamlanmasını bekleyen okuma istekleri kilitlenmiş görevlere (hung task) yol açabilir. Bu sorunu önlemek için, msg_id'nin çok kısa bir süre içinde yeniden kullanılmasını engellemek amacıyla msg_id döngüsel olarak tahsis edilir.
Nasıl düzeltilir
- linux linux_kernel6.1.100, 6.6.41, 6.9.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 | 5.19 ≤ v < 6.1.100, 6.2 ≤ v < 6.6.41, 6.7 ≤ v < 6.9.10, 6.10 | 6.1.100, 6.6.41, 6.9.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.