CVE-2024-35956
Açıklama
Linux çekirdeğinde aşağıdaki güvenlik açığı giderilmiştir: btrfs: qgroup: alt birim işlemlerinde qgroup prealloc rsv sızıntısını düzelt Alt birim oluşturma, anlık görüntü oluşturma ve alt birim silme işlemlerinin tümü, üst alt birimin fs ağacında yapılan değişiklikler için meta veri ayırmak üzere btrfs_subvolume_reserve_metadata() kullanır; bu, start_transaction aracılığıyla normal şekilde aracılık edilemez. Kota grupları (squota veya qgroups) etkinleştirildiğinde, bu, PREALLOC türünde qgroup meta verisi ayırır. İşlem bir işleme (transaction) ilişkilendirildiğinde, PREALLOC'u PERTRANS'a dönüştürürüz; bu, işlemin sonunda toplu olarak temizlenir. Ancak, bu üç işlemin hata yolları bu yaşam döngüsünü doğru şekilde uygulamıyordu. Hatalardan veya işlemin bir işleme tam olarak ilişkilendirilip ilişkilendirilmediğinden bağımsız olarak, genel bir temizleme adımında PREALLOC'u koşulsuz olarak PERTRANS'a dönüştürüyorlardı. Bu, hata yollarının zaman zaman bu rsv'yi record_root_in_trans başarıyla çağrılmadan PERTRANS'a dönüştürmesine yol açıyordu; bu da, o kök başka bir iş parçacığı tarafından işleme kaydedilmediği sürece, işlemin sonunun o kökün PERTRANS'ını serbest bırakmayacağı ve sızdıracağı anlamına geliyordu. Nihayetinde bu, sızan rezervasyon için CONFIG_BTRFS_DEBUG derlemelerinde bağlantı kesme sırasında bir WARN'a çarpılmasına yol açıyordu. Düzeltme, her qgroup PREALLOC rezervasyonunun aşağıdaki özellikleri gözlemlemesini sağlamaktır: 1. record_root_in_trans başarıyla çağrılmadan önceki herhangi bir hata, PREALLOC rezervasyonunun serbest bırakılmasıyla sonuçlanır. 2. record_root_in_trans sonrasında PERTRANS'a dönüştürürüz ve artık rezervasyonu serbest bırakma sorumluluğu işleme aittir. Bu yama, bu özellikleri üç işlem üzerinde uygular. Bu olmadan, mkfs zamanında squotas etkinleştirilmiş generic/269, sistemimde yaklaşık 5-10 çalıştırmada başarısız oluyordu. Bu yamayla, arka arkaya 1000 kez başarıyla çalıştı.
Nasıl düzeltilir
- linux linux_kernel6.1.120, 6.6.28, 6.8.7 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.9.5 ≤ v < 6.1.120, 6.2 ≤ v < 6.6.28, 6.7 ≤ v < 6.8.7, 6.9 | 6.1.120, 6.6.28, 6.8.7 |
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.