CVE-2026-98142
Təsvir
Linux kernel-də aşağıdakı zəiflik aradan qaldırılıb: drm/cirrus-qemu: Probe zamanı BAR0 ölçüsünün yoxlanılması `cirrus-qemu` drayveri framebuffer ölçülərini təsdiqləmək üçün `CIRRUS_VRAM_SIZE` (4 MB) dəyərindən istifadə edir. Lakin, PCI probe zamanı drayver onun ölçüsünün `CIRRUS_VRAM_SIZE` ilə uyğun olduğunu yoxlamadan BAR0-ı map etmişdir. Əgər BAR0 ölçüsü 4 MB-dan kiçik olan bir PCI cihazı drayverə bağlanarsa, map edilmiş VRAM gözləniləndən kiçik olacaqdır. Təsdiqləmə yoxlamaları VRAM-ın 4 MB olduğunu fərz etdiyi üçün, map edilmiş yaddaşdan daha böyük framebuffer-lər yaradıla bilər. Ekran müstəvisi yeniləndikdə (məsələn, azad edilmə zamanı), `cirrus_primary_plane_helper_atomic_update()` funksiyası `drm_fb_memcpy()` vasitəsilə framebuffer-i VRAM-a kopyalayır. Map edilmiş I/O yaddaşının sonundan kənara yazmaq supervisor write page fault xətasına səbəb olur: BUG: unable to handle page fault for address: ffffc9000389c000 ... RIP: 0010:memcpy_toio+0x7c/0xe0 arch/x86/lib/iomem.c:110 ... Call Trace: <TASK> iosys_map_memcpy_to include/linux/iosys-map.h:285 [inline] drm_fb_memcpy+0x325/0x5d0 drivers/gpu/drm/drm_format_helper.c:442 cirrus_primary_plane_helper_atomic_update+0x98a/0xb00 drivers/gpu/drm/tiny/cirrus-qemu.c:358 drm_atomic_helper_commit_planes+0x626/0xea0 drivers/gpu/drm/drm_atomic_helper.c:3038 drm_atomic_helper_commit_tail+0x60/0x510 drivers/gpu/drm/drm_atomic_helper.c:1989 commit_tail+0x2b1/0x3c0 drivers/gpu/drm/drm_atomic_helper.c:2074 drm_atomic_helper_commit+0xa77/0xb10 drivers/gpu/drm/drm_atomic_helper.c:2312 Bu problem, `cirrus_pci_probe()` funksiyasında PCI BAR0 resursunun `CIRRUS_VRAM_SIZE`-dan kiçik olmadığının yoxlanılması və əgər kiçikdirsə, `-ENODEV` qaytarılması ilə həll edilmişdir.
Necə düzəltmək olar
- linux linux_kernel6.6.158, 6.12.111, 6.18.53, 7.2.7 və ya daha yeni versiya
Təsirlənən məhsullar
| Məhsul | Təsirlənən versiyalar | Düzəldildiyi versiya |
|---|---|---|
| linux linux_kernel | 5.2 ≤ v < 6.6.158, 6.7 ≤ v < 6.12.111, 6.13 ≤ v < 6.18.53, 6.19 ≤ v < 7.2.7, 7.3 | 6.6.158, 6.12.111, 6.18.53, 7.2.7 |
Versiyanızı yoxlayın
Məhsulu seçin və istifadə etdiyiniz versiyanı yazın; versiyanın təsirlənən aralıqda olub-olmadığını görün.
Attack Surface Management
Domenlərinizə bağlı aktivləri, onlarda işləyən texnologiyaları və məlum zəiflikləri bir siyahıda görün.