CVE-2026-12234
Təsvir
subsys/net/lib/sockets/sockets.c faylındakı istifadəçi sahəsi sistem çağırışı yoxlayıcıları olan z_vrfy_zsock_sendmsg() və z_vrfy_zsock_recvmsg(), çağıran tərəfindən təqdim edilən struct net_msghdr strukturunu k_usermode_from_copy() vasitəsilə nüvə tərəfli surətə köçürür, lakin sonrakı qərarlar üçün hələ də aktiv olan istifadəçi strukturunu yenidən oxuyur. Nüvənin iovec kölgə buferi msg->msg_iovlen-in bir dəfə oxunması ilə ölçülür, doldurma döngüsü isə həmin sahənin ikinci dəfə canlı oxunması ilə məhdudlaşdırılır. msg adi istifadəçi yaddaşına işarə etdiyi üçün, eyni yaddaş domenindəki əməkdaşlıq edən ikinci bir axın (thread), ölçü oxuması ilə döngə testi arasındakı zaman pəncərəsində msg->msg_iovlen dəyərini artıra bilər (klassik double-fetch / TOCTOU). Bunun nəticəsində doldurma döngüsü faktiki olaraq ayrılmış net_iovec slotlarının sayından çox iterasiya edir və hücumçu tərəfindən idarə olunan iov_base/iov_len dəyərlərini nüvə yığınının (kernel-heap) kölgə buferinin sonundan kənara yazır. recvmsg yoxlayıcısı həm daxil olan, həm də nəticənin geri yazılması döngələrində eyni qüsura malikdir. CONFIG_USERSPACE aktiv olduqda və zsock_sendmsg/zsock_recvmsg sistem çağırışları mövcud olduqda, bu koda imtiyazsız istifadəçi axını tərəfindən daxil olmaq mümkündür. Uğurlu yarış şəraiti (race condition), istifadəçidən nüvəyə imtiyaz sərhədi boyunca nüvə tərəfindən idarə olunan yığın yaddaşını korlayır ki, bu da lokal imtiyazların yüksəldilməsi primitivinə və ya minimum dərəcədə nüvə xətası ilə xidmətdən imtinaya yol açır. Düzəliş başlığı bir dəfə köçürür və bütün ölçüləri, sərhədləri və girişləri bu surətdən törədir, hər bir iovec elementini atomik şəkildə köçürür ki, onun bazası və uzunluğu artıq yarış şəraitinə məruz qalmasın.
Necə düzəltmək olar
- zephyrproject zephyr4.4.2 və ya daha yeni versiya
Təsirlənən məhsullar
| Məhsul | Təsirlənən versiyalar | Düzəldildiyi versiya |
|---|---|---|
| zephyrproject zephyr | 2.3.0 ≤ v < 4.4.2 | 4.4.2 |
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.