CVE-2026-7007
Açıklama
Zephyr ext2 dosya sistemi, bir bağlama işlemini tamamlamadan önce `ext2_verify_disk_superblock()` (`subsys/fs/ext2/ext2_impl.c`) fonksiyonunda disk üzerindeki superblock yapısını doğrular. Doğrulayıcı; sihirli sayıyı (magic number), blok boyutunu, revizyonu ve özellik bayraklarını kontrol eder ancak diskteki `s_blocks_per_group` ve `s_inodes_per_group` alanlarının sıfır olmadığını doğrulamaz. Her iki alan da doğrudan görüntüden okunur ve daha sonra bağlama zamanı başlatma işlemi sırasında bölen olarak kullanılır. Bağlama sırasında, `get_ngroups()` fonksiyonu `s_blocks_count` değerini `s_blocks_per_group` değerine böler ve modunu alır (`ext2_init_fs()` üzerinden `ext2_fetch_block_group()` aracılığıyla ulaşılır); `get_itable_entry()` ise kök inode'u getirirken `(ino - 1)` değerini `s_inodes_per_group` değerine böler (her ikisi de `subsys/fs/ext2/ext2_diskops.c` içerisindedir). Bu nedenle, bu alanlardan herhangi birinin sıfır olarak ayarlandığı bir superblock, bağlama dizisi sırasında tamsayı bölmelemede sıfıra bölme hatasına yol açar. Ext2 imajını bağlayan bir cihaza (SD kart veya USB kütle depolama aygıtı gibi çıkarılabilir medya yoluyla) özel olarak hazırlanmış bir ext2 imajı sunabilen bir saldırgan bunu tetikleyebilir. ARMv7-M / ARMv8-M-mainline Cortex-M hedeflerinde, sıfıra bölme yakalama özelliği (SCB_CCR_DIV_0_TRP) etkindir; dolayısıyla bölme işlemi, Zephyr'in ölümcül bir hata olarak değerlendirdiği ve hizmet reddine (DoS) neden olan bir UsageFault oluşturur. Etki yalnızca erişilebilirlik ile sınırlıdır; hatalı değer sadece bir bölen olarak tüketilir. Düzeltme, superblock doğrulayıcısında sıfır olan `s_blocks_per_group` veya `s_inodes_per_group` değerlerini reddederek `-EINVAL` döndürür, böylece herhangi bir blok grubu veya inode G/Ç işlemi gerçekleşmeden önce bağlama işlemi başarısız olur.
Nasıl düzeltilir
- zephyrproject zephyr4.5.0 ya da sonraki bir sürüm
Etkilenen ürünler
| Ürün | Etkilenen sürümler | Düzeltildiği sürüm |
|---|---|---|
| zephyrproject zephyr | 3.5.0 ≤ v < 4.5.0 | 4.5.0 |
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.