CVE-2021-46988
Açıklama
Linux kernel içerisinde aşağıdaki güvenlik açığı giderilmiştir: userfaultfd: BUG_ON hatasını önlemek için hata yolunda sayfa serbest bırakılması Aşağıdaki olaylar dizisini değerlendirin: 1. Kullanıcı alanı, sonuç olarak shmem_mfill_atomic_pte() fonksiyonunu çağıran bir UFFD ioctl işlemi başlatır. Blokların muhasebesini başarıyla yaparız, shmem_alloc_page() işlemini gerçekleştiririz ancak ardından copy_from_user() başarısız olur. -ENOENT döndürürüz ve ayırdığımız sayfayı serbest bırakmayız. 2. Çağrıcı bu hata kodunu tespit eder, mmap_lock kilidini bıraktıktan sonra copy_from_user() işlemini dener ve tekrar shmem_mfill_atomic_pte() fonksiyonunu çağırarak işlemi yeniden dener. 3. Bu sırada, başka bir sürecin kullanılan tmpfs alanını doldurduğunu varsayalım. 4. Böylece shmem_mfill_atomic_pte() bu kez blokların muhasebesini yapamaz ve sayfayı serbest bırakmadan hemen geri döner. Bu durum, -ENOENT döndürülmediği sürece sayfanın her zaman tüketilmesi gerektiğini onaylayan çağırıcımızda bir BUG_ON tetikler. Bunu düzeltmek için, muhasebe işlemi başarısız olduğunda böyle bir "boşta kalan" sayfamız olup olmadığı tespit edilir ve eğer varsa, geri dönmeden önce bu sayfa serbest bırakılır.
Nasıl düzeltilir
- linux linux_kernel4.14.233, 4.19.191, 5.4.120, 5.10.38, 5.11.22, 5.12.5 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 | 4.11 ≤ v < 4.14.233, 4.15 ≤ v < 4.19.191, 4.20 ≤ v < 5.4.120, 5.5 ≤ v < 5.10.38, 5.11 ≤ v < 5.11.22, 5.12 ≤ v < 5.12.5, 5.13 | 4.14.233, 4.19.191, 5.4.120, 5.10.38, 5.11.22, 5.12.5 |
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.