CVE-2026-72469
Təsvir
Linux kernel-də aşağıdakı zəiflik aradan qaldırılmışdır: xprtrdma: ADDR_CHANGE zamanı ep kref balanssızlığının düzəldilməsi RDMA_CM_EVENT_ADDR_CHANGE hadisəsi RDMA_CM_EVENT_ESTABLISHED hadisəsindən əvvəl baş verdikdə, rpcrdma_cm_event_handler() funksiyası "disconnected:" etiketini keçərək uyğun get çağırışı olmadan rpcrdma_ep_put() funksiyasını çağırır. Nəticədə, qoşulmanın ləğvi (teardown) zamanı kref alt axına düşür və rpcrdma_xprt_disconnect() azad edilmiş ep üzərində əməliyyat aparır. Normal qoşulma həyat dövrü boyunca istinad sayları: rpcrdma_ep_create() kref_init ->1 rpcrdma_xprt_connect() ep_get ->2 (post_recvs-dən əvvəl) RDMA_CM_EVENT_ESTABLISHED ep_get ->3 RDMA_CM_EVENT_DISCONNECTED ep_put ->2 rpcrdma_xprt_drain() ep_put ->1 rpcrdma_xprt_disconnect() tail ep_put ->0 (ep_destroy) rpcrdma_xprt_connect() funksiyasında, rpcrdma_post_recvs() çağırışından dərhal əvvəl ("outstanding Receives" olduğu müddətcə) həyata keçirilən qoşulma zamanı get əməliyyatı rpcrdma_xprt_drain tərəfindən balanslaşdırılır. ESTABLISHED-dən əvvəl baş verən ADDR_CHANGE üçün istehlak ediləcək get yoxdur, buna görə də onun put əməliyyatı sayı 1-ə endirir və rpcrdma_xprt_disconnect() hələ də ona göstərici saxlayarkən, drain put əməliyyatı ep-ni azad edir. Problem xchg() vasitəsilə əvvəlki re_connect_status-a əsasən yönləndirmə ilə düzəldilmişdir: prev == 0 (pre-ESTABLISHED) olduqda, qoşulmanı gözləyən oyadılır və heç bir put olmadan geri dönülür; prev == 1 olduqda, rpcrdma_force_disconnect() çağırılır və geri dönülür. Case-1 kolu, ESTABLISHED get əməliyyatını balanslaşdırmaq üçün növbəti RDMA_CM_EVENT_DISCONNECTED hadisəsinə — hələ də qoşulu olan cm_id üzərində rdma_disconnect() çağırıldıqda etibarlı şəkildə çatdırılan hadisəyə — əsaslanır; rpcrdma_xprt_drain() yalnız həmin qoşulma zamanı get əməliyyatını balanslaşdırmağa davam edir. Hər hansı digər əvvəlki dəyər ləğvin artıq prosesdə olduğunu bildirir.
Necə düzəltmək olar
- Linux Linuxa562485c359d0b20a99d466b042af9c2f7ff3326, cfd1bab66b042da7a778786685125656c695931b, d0479c2b12974aa188b10d221a5770126b118b6d, ffc07790539736a5d029f6a3c966b46c529f93a8, af9b65b29af341932625c4283dc7a23cdb62688a, 5.8 və ya daha yeni versiya
Təsirlənən məhsullar
| Məhsul | Təsirlənən versiyalar | Düzəldildiyi versiya |
|---|---|---|
| Linux Linux | 2acc5cae292355f5f18ad377a2a966e7f03c8fec ≤ v < a562485c359d0b20a99d466b042af9c2f7ff3326, 2acc5cae292355f5f18ad377a2a966e7f03c8fec ≤ v < cfd1bab66b042da7a778786685125656c695931b, 2acc5cae292355f5f18ad377a2a966e7f03c8fec ≤ v < d0479c2b12974aa188b10d221a5770126b118b6d, 2acc5cae292355f5f18ad377a2a966e7f03c8fec ≤ v < ffc07790539736a5d029f6a3c966b46c529f93a8, 2acc5cae292355f5f18ad377a2a966e7f03c8fec ≤ v < af9b65b29af341932625c4283dc7a23cdb62688a, 2fcbf07a4f23174a45e015b62a8e42ddbc2e53ef, 5.7.9 ≤ v < 5.8, 5.8 | a562485c359d0b20a99d466b042af9c2f7ff3326, cfd1bab66b042da7a778786685125656c695931b, d0479c2b12974aa188b10d221a5770126b118b6d, ffc07790539736a5d029f6a3c966b46c529f93a8, af9b65b29af341932625c4283dc7a23cdb62688a, 5.8 |
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.