CVE-2025-37760
Açıklama
Linux kernel içerisinde aşağıdaki güvenlik açığı giderilmiştir: mm/vma: modify/merge işlemine give_up_on_oom seçeneği eklendi, uffd release kısmında kullanılıyor Şu anda, bir VMA birleştirme işlemi commit merge sırasında ortaya çıkan bir OOM durumu veya anon_vma'ların çoğaltılamaması nedeniyle başarısız olursa, çağırıcı bununla ilgilenebilsin diye bu durum raporlanır. Ancak, çağırıcının yalnızca görünürde bir birleştirme denediği ve bu durum nedeniyle işlemin başarısız olmasını önemsemediği durumlar mevcuttur. OOM durumları ortaya çıkabilecekten sonra ancak gerçek anlamda VMA'ları değiştirdiğimiz yönünde örtük bir varsayım oluşturmak istemediğimiz için, bir 'give up on oom' seçeneği eklenmiş ve bu bayrak ayarlı olduğunda, OOM oluşursa kesinlikle hiçbir VMA'yı değiştirmeyeceğimiz ve sadece işlemden çıkacağımız konusunda açık bir sözleşme yapılmıştır. Bir kullanıcının bu bayrak ayarlanmış şekilde vma_modify() denemesi ancak aynı zamanda bölünmeyle sonuçlanan bir VMA içindeki bir aralık belirtmesi (ki bu sadece OOM değil, rlimit sorunları nedeniyle de başarısız olabilir) çok sıra dışı olacağı için, bu durum için bir hata ayıklama uyarısı eklenmiştir. Bunun temel nedeni uffd release işlemidir; syzkaller (ve Pedro Falcato'nun ÇOK isabetli analizi), tahsisat üzerinde enjekte edilen bir hatanın, commit merge sırasında bir OOM durumunu tetiklemesinin, uffd kodunun karışmasına ve bir hata değerini sanki bir VMA işaretçisiymiş gibi işlemesine yol açan bir yöntem bulmuştur. Bundan kaçınmak için, tüm VMA'ları temizliyorsak bize bir OOM olayının raporlanmasını istemediğimiz gerçeğinden yararlanarak, bunun asla gerçekleşmemesini sağlamak amacıyla bu yeni VMG bayrağı kullanılmaktadır. Bu düzeltmede etkili olan mükemmel analizleri için Pedro Falcato'ya ve duruma ilişkin derinlemesine ve zekice analizleri için Jann Horn'a çok teşekkürler.
Nasıl düzeltilir
- linux linux_kernel6.12.25, 6.14, 6.14.4 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 | 6.12.19 ≤ v < 6.12.25, 6.13.7 ≤ v < 6.14, 6.14.1 ≤ v < 6.14.4, 6.14, 6.15 | 6.12.25, 6.14, 6.14.4 |
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.