CVE-2024-57917
Təsvir
Linux kernel-də aşağıdakı zəiflik aradan qaldırılmışdır: topology: cpumap çap edilərkən cpumask dəyişdirilmədən saxlanılmalıdır Fuzz testi zamanı aşağıdakı xəbərdarlıq aşkar edilmişdir: vsnprintf("%*pbl\n ", ...) funksiyasından fərqli geri dönüş dəyərləri (15 və 11) test:kvasprintf-də WARNING sözü var WARNING: CPU: 55 PID: 1168477 at lib/kasprintf.c:30 kvasprintf+0x121/0x130 Call Trace: kvasprintf+0x121/0x130 kasprintf+0xa6/0xe0 bitmap_print_to_buf+0x89/0x100 core_siblings_list_read+0x7e/0xb0 kernfs_file_read_iter+0x15b/0x270 new_sync_read+0x153/0x260 vfs_read+0x215/0x290 ksys_read+0xb9/0x160 do_syscall_64+0x56/0x100 entry_SYSCALL_64_after_hwframe+0x78/0xe2 Call trace göstərir ki, kvasprintf() bu xəbərdarlığı core_siblings_list çapı zamanı vermişdir. kvasprintf() bir neçə mərhələdən ibarətdir: (1) İlk öncə formatlaşdırılmış nəticə sətirinin uzunluğu hesablanır. (2) Geri dönən uzunluğa əsasən bufer ayrılır. (3) Daha sonra sətirin faktiki formatlaşdırılması həyata keçirilir. (4) (1) və (2)-ci mərhələlərdə geri dönən formatlaşdırılmış sətirlərin uzunluqlarının uyğun olub-olmadığı yoxlanılır. Əgər (1) və (3)-cü mərhələlər arasında core_cpumask dəyişdirilərsə, bu iki mərhələdə əldə edilən uzunluqlar üst-üstə düşməyə bilər. Həqiqətən də bizim testimiz CPU hotplugging prosesini ehtiva edir ki, bu da çap zamanı core_cpumask-ı dəyişdirə bilər. Bu problemi həll etmək üçün, çap prosesi zamanı sabit qalmasını təmin etmək məqsədilə, cpumap_print_{list, cpumask}_to_buf() çağırılmazdan əvvəl cpumask müvəqqəti dəyişənə keşlənməlidir.
Necə düzəltmək olar
- linux linux_kernel5.15.177, 6.1.125, 6.6.72, 6.12.10 və ya daha yeni versiya
- git.kernel.org/stable/c/1c7818e2746e747838a3de1687e89eac7b947f08
- git.kernel.org/stable/c/360596e7fe319a5db1b5fb34a3952862ae53c924
- git.kernel.org/stable/c/b02cf1d27e460ab2b3e1c8c9ce472d562cad2e8d
- git.kernel.org/stable/c/ca47e933a900492d89dcf5db18a99c28bd4a742d
- git.kernel.org/stable/c/cbd399f78e23ad4492c174fc5e6b3676dba74a52
Təsirlənən məhsullar
| Məhsul | Təsirlənən versiyalar | Düzəldildiyi versiya |
|---|---|---|
| linux linux_kernel | 5.15 ≤ v < 5.15.177, 5.16 ≤ v < 6.1.125, 6.2 ≤ v < 6.6.72, 6.7 ≤ v < 6.12.10, 6.13 | 5.15.177, 6.1.125, 6.6.72, 6.12.10 |
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.