CVE-2026-93107

Yüksək

Təsvir

Linux kernel-də aşağıdakı zəiflik aradan qaldırılıb: RDMA/rxe: QP xəta vəziyyətinə keçdikdən sonra cari paketinin yenidən emal edilməsinin qarşısının alınması do_complete() funksiyası QP-nin xəta vəziyyətində olduğunu aşkar etdikdə RESPST_CHK_RESOURCE qaytarır. 49dc9c1f0c7e ("RDMA/rxe: Cleanup reset state handling in rxe_resp.c") commit-indən əvvəl təmizləmə dövrü belə idi: check_resource() funksiyasının xəta vəziyyəti budağı var idi ki, o, hər bir qalan recv WQE-ni götürür və cari paketə toxunmadan onu IB_WC_WR_FLUSH_ERR ilə tamamlayırdı. Həmin commit check_resource()-dən xəta vəziyyəti budağını sildi (boşaltma artıq rxe_receiver() girişində həyata keçirilir), lakin do_complete() xəta vəziyyəti geri dönüşünü saxladı. Nəticədə, paket tamamlanarkən QP xəta vəziyyətinə keçdikdə — məsələn, receive emalı ilə yarışan rdma_cm disconnect zamanı — cavabdeh vəziyyət maşını artıq tamamlanmış paketi hələ də əlində tutaraq sorğu emalı zəncirinə geri qayıdır: check_resource() yeni bir recv WQE götürür, execute()/send_data_in() eyni paket yükünü yenidən kopyalayır, do_complete() başqa bir IB_WC_SUCCESS CQE təyin edir (qp->resp.status hələ də 0-dır) və idarəetmə xəta vəziyyəti yoxlamasına qayıdır. Dövr, RQ tükənənə qədər hər təyin edilmiş recv WQE üçün eyni paketi bir dəfə yenidən icra edir (müşahidə olunub: bir SEND-in ~1000 dublikat IB_WC_SUCCESS tamamlanması, hər biri ~8mk saniyədən bir, RQ doluluğuna uyğun olaraq), bundan sonra qp->resp.wqe NULL olur və send_data_in() onu dereference edir: BUG: kernel NULL pointer dereference, address: 0000000000000014 Workqueue: rxe_wq do_work RIP: copy_data+0x29/0x1f0 Call Trace: send_data_in+0x25/0x50 rxe_receiver+0xf36/0x1dd0 Dublikat tamamlamalar ULP üçün real qəbul edilənlərdən fərqlənmir. RDS stres testi zamanı mesaj yeni kimi qəbul edildi və eyni dataqram istifadəçi sahəsinə yüzlərlə dəfə çatdırıldı, bu da axını korladı; RC-nin dəqiqliklə bir dəfə çatdırılmasından asılı olan hər hansı ULP buna təsir olunur. do_complete()-də xəta vəziyyəti yoxlamasına çatan canlı paket dəqiq bir dəfə icra edilib və tamamlanıb, ona görə də o, yenidən emal edilməməli, istehlak edilməlidir. Bunun üçün RESPST_CLEANUP (növbədən çıxarma və azad etmə) qaytarın; pkt == NULL halı üçün RESPST_CHK_RESOURCE qaytarmağa davam edin.

CiddilikYüksək
CVSS8.2
İstismar ehtimalı—
MəhsulLinux
Dərc17 sen 2026
İlk görülmə17 sen 2026

Necə düzəltmək olar

Yeniləyin
  • Linux Linuxc319b986a88cedf600c4497cd7814a891b2f9e7c, 62a4b48767e06fdd64548450fae2b1ffc6ff5d69, 399713f1f0eac641351c8ceaec0ab8244ddcf78c, 0d37e2503efd1069a74be740eadf63ea17c96810, 15ae32c4a3551c4c9da457370bdfdd65d171e512 və ya daha yeni versiya

Təsirlənən məhsullar

MəhsulTəsirlənən versiyalarDüzəldildiyi versiya
Linux Linux49dc9c1f0c7e396654a31a480328fffd902fa494 ≤ v < c319b986a88cedf600c4497cd7814a891b2f9e7c, 49dc9c1f0c7e396654a31a480328fffd902fa494 ≤ v < 62a4b48767e06fdd64548450fae2b1ffc6ff5d69, 49dc9c1f0c7e396654a31a480328fffd902fa494 ≤ v < 399713f1f0eac641351c8ceaec0ab8244ddcf78c, 49dc9c1f0c7e396654a31a480328fffd902fa494 ≤ v < 0d37e2503efd1069a74be740eadf63ea17c96810, 49dc9c1f0c7e396654a31a480328fffd902fa494 ≤ v < 15ae32c4a3551c4c9da457370bdfdd65d171e512, 6.4c319b986a88cedf600c4497cd7814a891b2f9e7c, 62a4b48767e06fdd64548450fae2b1ffc6ff5d69, 399713f1f0eac641351c8ceaec0ab8244ddcf78c, 0d37e2503efd1069a74be740eadf63ea17c96810, 15ae32c4a3551c4c9da457370bdfdd65d171e512

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.

Intelligence 360 paketində

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.

CVE-2026-93107 · Linux · Dark Radar