CVE-2026-93107

Yüksek

Açıklama

Linux kernel'de aşağıdaki güvenlik açığı giderilmiştir: RDMA/rxe: QP hata durumuna girdikten sonra mevcut paketin yeniden işlenmesinin önlenmesi do_complete() fonksiyonu QP'yi hata durumunda bulduğunda RESPST_CHK_RESOURCE döndürür. 49dc9c1f0c7e ("RDMA/rxe: Cleanup reset state handling in rxe_resp.c") commit'inden önce flush döngüsü şu şekildeydi: check_resource() fonksiyonunun, mevcut pakete dokunmadan kalan her bir recv WQE'sini alan ve bunu IB_WC_WR_FLUSH_ERR ile tamamlayan bir hata durumu dalı vardı. Söz konusu commit, check_resource()'dan hata durumu dalını kaldırmış (boşaltma işlemi artık rxe_receiver() girişinde yapılmaktadır) ancak do_complete() hata durumu dönüşünü korumuştur. Sonuç olarak, bir paket tamamlanırken bir QP hata durumuna geçtiğinde - örneğin, receive işlemesiyle yarışan bir rdma_cm bağlantı kesilmesi sırasında - yanıtlayıcı durum makinesi, halihazırda tamamlanmış olan paket hala elindeyken istek işleme zincirine geri döner: check_resource() yeni bir recv WQE alır, execute()/send_data_in() aynı paket yükünü tekrar kopyalar, do_complete() başka bir IB_WC_SUCCESS CQE yayınlar (qp->resp.status hala 0'dır) ve kontrol hata durumu kontrolüne döner. Döngü, RQ tükenene kadar yayınlanan her bir recv WQE başına aynı paketi bir kez yeniden yürütür (gözlemlenen: tek bir SEND için yaklaşık 1000 yinelenen IB_WC_SUCCESS tamamlaması, her biri yaklaşık 8us aralıkla, RQ doluluğuyla eşleşmektedir); ardından qp->resp.wqe NULL olur ve send_data_in() bunu dereference eder: 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 Yinelenen tamamlamalar, ULP için gerçek alımlardan ayırt edilemez. Bir rds stres testi sırasında mesaj yeniymiş gibi kabul edilmiş ve aynı veri bloğunu kullanıcı alanına yüzlerce kez ileterek akışı bozmuştur; RC tam olarak bir kez teslimata güvenen tüm ULP'ler bundan etkilenir. do_complete() içindeki hata durumu kontrolüne ulaşan canlı bir paket tam olarak bir kez yürütülmüş ve tamamlanmıştır; bu nedenle yeniden işlenmemeli, tüketilmelidir. Bunun için RESPST_CLEANUP döndürün (kuyruktan çıkarın ve serbest bırakın); pkt == NULL durumu için RESPST_CHK_RESOURCE döndürmeye devam edin.

ÖnemYüksek
CVSS8.2
İstismar olasılığı—
ÜrünLinux
Yayın17 Eyl 2026
İlk görülme17 Eyl 2026

Nasıl düzeltilir

Güncelleyin
  • Linux Linuxc319b986a88cedf600c4497cd7814a891b2f9e7c, 62a4b48767e06fdd64548450fae2b1ffc6ff5d69, 399713f1f0eac641351c8ceaec0ab8244ddcf78c, 0d37e2503efd1069a74be740eadf63ea17c96810, 15ae32c4a3551c4c9da457370bdfdd65d171e512 ya da sonraki bir sürüm

Etkilenen ürünler

ÜrünEtkilenen sürümlerDüzeltildiği sürüm
Linux Linux49dc9c1f0c7e396654a31a480328fffd902fa494 ≤ v < c319b986a88cedf600c4497cd7814a891b2f9e7c, 49dc9c1f0c7e396654a31a480328fffd902fa494 ≤ v < 62a4b48767e06fdd64548450fae2b1ffc6ff5d69, 49dc9c1f0c7e396654a31a480328fffd902fa494 ≤ v < 399713f1f0eac641351c8ceaec0ab8244ddcf78c, 49dc9c1f0c7e396654a31a480328fffd902fa494 ≤ v < 0d37e2503efd1069a74be740eadf63ea17c96810, 49dc9c1f0c7e396654a31a480328fffd902fa494 ≤ v < 15ae32c4a3551c4c9da457370bdfdd65d171e512, 6.4c319b986a88cedf600c4497cd7814a891b2f9e7c, 62a4b48767e06fdd64548450fae2b1ffc6ff5d69, 399713f1f0eac641351c8ceaec0ab8244ddcf78c, 0d37e2503efd1069a74be740eadf63ea17c96810, 15ae32c4a3551c4c9da457370bdfdd65d171e512

Sürümünüzü kontrol edin

Ürünü seçin ve kullandığınız sürümü yazın; sürümün etkilenen aralıkta olup olmadığını görün.

Intelligence 360 paketinde

Attack Surface Management

Alan adlarınıza bağlı varlıkları, bu varlıklarda çalışan teknolojileri ve bilinen zafiyetleri tek listede görün.

CVE-2026-93107 · Linux · Dark Radar