CVE-2025-38658

Yüksek

Açıklama

Linux çekirdeğinde aşağıdaki güvenlik açığı giderilmiştir: nvmet: pci-epf: nvmet_req_init() başarısız olursa komutları iki kez tamamlamayın Başarısız komutları nvmet_req_init() ve req->execute() tamamlasın. Sorunun açıklaması: nvmet_req_init(), başarısızlık durumunda (ör. desteklenmeyen işlem kodu) dahili olarak __nvmet_req_complete() çağırır; bu da "queue_response" geri çağrısını çağırır ve nvmet_pci_epf_queue_response() fonksiyonunun çağrılmasına yol açar. Bu fonksiyon, data_len 0 ise veya dma_dir DMA_TO_DEVICE'tan farklıysa nvmet_pci_epf_complete_iod() fonksiyonunu çağırır. nvmet_req_init() başarısız olduğunda nvmet_pci_epf_exec_iod_work() de nvmet_pci_epf_complete_iod() çağırdığından bu, çift tamamlama ile sonuçlanır. Yeniden üretme adımları: Ana makinede nvme-cli ile desteklenmeyen bir işlem kodu içeren bir komut gönderin, Örneğin "security receive" yönetici komutu: $ sudo nvme security-recv /dev/nvme0n1 -n1 -x4096 nvmet_req_init() başarısız olduğunda ve nvmet_pci_epf_queue_response() çağrıldığında bu, çift tamamlamayı tetikler; burada iod->dma_dir, nvmet_pci_epf_alloc_iod() içinde varsayılan olarak ayarlanan "DMA_NONE" varsayılan durumunda olduğundan nvmet_pci_epf_complete_iod() çağrılır. nvmet_req_init() başarısız olduğundan nvmet_pci_epf_exec_iod_work() içinde de nvmet_pci_epf_complete_iod() çağrılır ve bu da çift tamamlamaya yol açar. Bu yalnızca ana makineye iki tamamlama göndermekle kalmaz, aynı zamanda PCI NVMe hedefinin durumunu bozarak çekirdek oops'a yol açar. Bu yama, nvmet_req_init() ve req->execute() fonksiyonlarının tüm başarısız komutları tamamlamasını sağlar ve nvmet_pci_epf_exec_iod_work() içindeki çift tamamlama durumunu kaldırarak çift tamamlamaların meydana geldiği uç durumları düzeltir.

ÖnemYüksek
CVSS8.8
İstismar olasılığı—
ÜrünLinux Kernel
Yayın22 Ağu 2025
İlk görülme22 Ağu 2025

Nasıl düzeltilir

Güncelleyin
  • linux linux_kernel6.16.1 ya da sonraki bir sürüm

Etkilenen ürünler

ÜrünEtkilenen sürümlerDüzeltildiği sürüm
linux linux_kernel6.14 ≤ v < 6.16.16.16.1

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-2025-38658 · Linux Kernel · Dark Radar