CVE-2026-90200
Açıklama
Linux kernel içerisinde aşağıdaki güvenlik açığı giderilmiştir: fs/ntfs3: MFT küme doğrulamasındaki tamsayı taşması düzeltildi ntfs_init_from_boot() fonksiyonunda, önyükleme sektörünün MFT küme numaraları şu şekilde birim boyutuyla doğrulanmaktadır: if (mlcn * sct_per_clst >= sectors || mlcn2 * sct_per_clst >= sectors) goto out; mlcn ve mlcn2, doğrudan önyükleme sektöründen okunan u64 alanlarıdır. sct_per_clst üst sınır olarak 4096 ile sınırlıdır (true_sectors_per_clst() artı altındaki is_power_of_2() kontrolü), ancak çarpma işlemi u64 formatında yapılır ve mlcn (veya mlcn2) yeterince büyük olduğunda döngüye girer (wrap) -- örneğin, sct_per_clst == 4 iken 2^62 civarındaki bir mlcn değeri 0'a döner; bu da sıfır olmayan herhangi bir 'sectors' değerinden küçük olduğu için karşılaştırmanın atlanmasına ve hatalı kaydın kabul edilmesine neden olur. Kabul edilen mlcn daha sonra şu şekilde değiştirilmeden kullanılır: sbi->mft.lbo = mlcn << cluster_bits; Pratikte, sonuçlanan okumalar blok katmanında başarısız olur (grow_buffers()'ın check_mul_overflow() koruması aracılığıyla sb_bread() NULL döndürür), dolayısıyla bu durum günümüzde daha tehlikeli bir şeyden ziyade, bağlama işleminin beklenmedik yerlerde başarısız olması şeklinde ortaya çıkar; ancak doğrulama adımı hala yanlıştır ve çağıranların, başlangıçta asla kabul edilmemesi gereken bir değeri yakalamak için blok katmanına güvenmesi için hiçbir neden yoktur. İki sektör konumunu hesaplamak için check_mul_overflow() kullanılmıştır ve çarpmalardan herhangi biri döngüye girdiğinde bağlama işlemi başarısız olur; bu yaklaşım, bölmeye geçmek yerine (mlcn >= sectors / sct_per_clst), mevcut semantiği (mlcn * sct_per_clst >= sectors) korur; çünkü bölme işlemi, 'sectors' değerinin sct_per_clst'nin bir katı olmadığı uç durumlarda kontrolü daraltacaktır. check_*_overflow() stili, ntfs3'ün fs/ntfs3/run.c içerisindeki benzer disk üzeri aritmetik işlemler için halihazırda kullandığı yöntemdir.
Nasıl düzeltilir
- Linux Linux8ecb1525a9520acd3d5ea3e2593e487fd9f143ce, f77a8d9fdf58e298b36564a44c27fadc617bdd28, 805cc5554b13d045dce9b03c13eaf015418739fd, dc6d85de7e2656e56e10ff5ba514f2583a4f612b, 169383d8914b8fe03464a83540b5b6de3e7831af, c510c63873103a5da6a498fe537bdb5d6f8d03a2 ya da sonraki bir sürüm
Etkilenen ürünler
| Ürün | Etkilenen sürümler | Düzeltildiği sürüm |
|---|---|---|
| Linux Linux | 82cae269cfa953032fbb8980a7d554d60fb00b17 ≤ v < 8ecb1525a9520acd3d5ea3e2593e487fd9f143ce, 82cae269cfa953032fbb8980a7d554d60fb00b17 ≤ v < f77a8d9fdf58e298b36564a44c27fadc617bdd28, 82cae269cfa953032fbb8980a7d554d60fb00b17 ≤ v < 805cc5554b13d045dce9b03c13eaf015418739fd, 82cae269cfa953032fbb8980a7d554d60fb00b17 ≤ v < dc6d85de7e2656e56e10ff5ba514f2583a4f612b, 82cae269cfa953032fbb8980a7d554d60fb00b17 ≤ v < 169383d8914b8fe03464a83540b5b6de3e7831af, 82cae269cfa953032fbb8980a7d554d60fb00b17 ≤ v < c510c63873103a5da6a498fe537bdb5d6f8d03a2, 5.15 | 8ecb1525a9520acd3d5ea3e2593e487fd9f143ce, f77a8d9fdf58e298b36564a44c27fadc617bdd28, 805cc5554b13d045dce9b03c13eaf015418739fd, dc6d85de7e2656e56e10ff5ba514f2583a4f612b, 169383d8914b8fe03464a83540b5b6de3e7831af, c510c63873103a5da6a498fe537bdb5d6f8d03a2 |
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.