CVE-2026-89690
Açıklama
Linux kernel içerisinde aşağıdaki güvenlik açığı giderilmiştir: nfsd: rpc_status UAF hatasını düzeltmek için compound ops işleminin vfree işlemi ertelendi rpc_status netlink dumpit, rcu_read_lock altında işlemdeki her bir svc_rqst yapısını tarar ve NFSv4 istekleri için args->ops[] üzerinden opnum değerlerini okur. Ancak args->ops, her compound sonunda nfsd4_release_compoundargs() fonksiyonunda vfree() ile senkron olarak serbest bırakılan ayrı bir vmalloc tamponudur. Dumpit'in kullandığı rcu_read_lock, svc_rqst yapısının kendisini (kfree_rcu aracılığıyla serbest bırakılır) sabitler ancak ops tamponunun vfree işlemini RCU grace periyodu boyunca erteleyen hiçbir mekanizma yoktur. Bu nedenle, eşzamanlı bir compound tamamlanması, dumpit okuma yaparken tamponu serbest bırakabilir; bu da vmalloc belleği üzerinde bir serbest bırakıldıktan sonra kullanım (use-after-free) durumuna yol açar. Sondaki seqcount yeniden kontrolü (rq_status_counter'ın smp_load_acquire işlemi), serbest bırakılmış bellek karşısında zaten gerçekleşmiş olan bir yükleme işlemini geri alamaz. Bu sorun, vfree(args->ops) ifadesinin, serbest bırakma işlemini bir RCU grace periyodundan sonrasına erteleyen kvfree_rcu_mightsleep() ile değiştirilmesiyle düzeltilmiştir. Bu değişiklik, dumpit içerisindeki mevcut rcu_read_lock kilidini okumayı korumak için yeterli hale getirir. Bunun getirdiği ödün ise, tamamlanan compound ops tamponlarının (200 * sizeof(struct nfsd4_op) kadar), geri kazanılmadan önce tek bir grace periyodu boyunca bellekte biraz daha uzun süre kalmasıdır.
Nasıl düzeltilir
- Linux Linux48f72aff24f7a7329209dc6cbc27c869f3e3595c, 6703199f4d7e7f37d6a726a849eb358e8fae72fb, 19413ccc45070a7270b9e25c2a258daf7f91de42, fca26a3fc19ed02278aa2a150af82d43db0302cb ya da sonraki bir sürüm
Etkilenen ürünler
| Ürün | Etkilenen sürümler | Düzeltildiği sürüm |
|---|---|---|
| Linux Linux | bd9d6a3efa9709e653aafbeb859289feccb8e70c ≤ v < 48f72aff24f7a7329209dc6cbc27c869f3e3595c, bd9d6a3efa9709e653aafbeb859289feccb8e70c ≤ v < 6703199f4d7e7f37d6a726a849eb358e8fae72fb, bd9d6a3efa9709e653aafbeb859289feccb8e70c ≤ v < 19413ccc45070a7270b9e25c2a258daf7f91de42, bd9d6a3efa9709e653aafbeb859289feccb8e70c ≤ v < fca26a3fc19ed02278aa2a150af82d43db0302cb, 6.7 | 48f72aff24f7a7329209dc6cbc27c869f3e3595c, 6703199f4d7e7f37d6a726a849eb358e8fae72fb, 19413ccc45070a7270b9e25c2a258daf7f91de42, fca26a3fc19ed02278aa2a150af82d43db0302cb |
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.