CVE-2026-80789

Naməlum

Təsvir

Linux nüvəsində aşağıdakı zəiflik aradan qaldırılmışdır: nvmet-tcp: əmr buferləri ayrılmadan əvvəl SGL məlumat uzunluğunun məhdudlaşdırılması nvmet_tcp_map_data() funksiyası host tərəfindən idarə olunan 32-bitlik sgl->length dəyərini oxuyur və kapsul daxili offset deskriptoru (tip 0x01) üçün istifadə etməzdən əvvəl onu port->inline_data_size ilə müqayisə edir. Digər bütün SGL deskriptor tipləri — o cümlədən kapsul xaricindəki yazmalar üçün real host tərəfindən istifadə edilən qeyri-inline nəqliyyat SGL məlumat bloku deskriptoru (tip (NVME_TRANSPORT_SGL_DATA_DESC << 4) | NVME_SGL_FMT_TRANSPORT_A) həmin yoxlamanı tamamilə ötürür və birbaşa bura keçir: cmd->req.sg = sgl_alloc(len, GFP_KERNEL, &cmd->req.sg_cnt); Burada len dəyəri birbaşa şəbəkədən alınır və 4 GiB-ə qədər məhdudiyyətsiz ola bilir. nvmet_req_init() yalnız əmri analiz edir və heç vaxt sgl->length dəyərini yoxlamır, transfer_len-in təsdiqləndiyi yeganə digər yer olan nvmet_check_transfer_len() isə daha sonra, allokasiya baş verdikdən sonra req->execute() vasitəsilə işə düşür. Yazma əmri üçün hədəf R2T ilə cavab verir və hostun məlumatları göndərməsini gözləyərək əmri saxlayır; əgər host (və ya sadəcə davam etməyən autentifikasiya olunmamış qarşı tərəf) bunu etməzsə, sgl_alloc() buferi əmrin ömrü boyu yaddaşda qalır. NVMe/TCP standart konfiqurasiyada məcburi autentifikasiyaya malik deyil, buna görə də hədəf porta çata bilən və Fabrics bağlantısını tamamlaya bilən hər hansı qarşı tərəf, gücləndirmə məqsədilə növbələr və bağlantılar üzrə təkrarlanan tək bir xüsusi hazırlanmış əmr ilə bunu həyata keçirə bilər. Bu, uzaqdan, faktiki olaraq autentifikasiya olunmamış qarşı tərəf tərəfindən tetiklənən məhdudiyyətsiz nüvə yaddaşı allokasiyasıdır. İstənilən SGL deskriptor tipi üçün hər hansı allokasiya etməzdən əvvəl len dəyərini, bu faylda PDU başına H2C məlumatlarını məhdudlaşdırmaq üçün artıq istifadə edilən eyni NVMET_TCP_MAXH2CDATA limiti ilə yoxlayın. Bu, kapsul daxili hal üçün mövcud olan daha ciddi inline_data_size yoxlamasını saxlayaraq, qeyri-inline deskriptor üçün yaranan boşluğu aradan qaldırır. v6.19 KASAN mühitində runtime yoxlanılıb: bu limit tətbiq edildikdə, həddindən artıq böyük qeyri-inline SGL uzunluğu daşıyan xüsusi hazırlanmış yazma əmri sgl_alloc() işə düşməzdən əvvəl rədd edilir; əvvəllər eyni sorğu, hostun heç vaxt təmin etmədiyi R2T gözləyərkən yaddaşda qalan təxminən 256 MiB (4 GiB-ə qədər) məhdudiyyətsiz nüvə allokasiyasına səbəb olurdu.

CiddilikNaməlum
CVSS—
İstismar ehtimalı—
MəhsulLinux
Dərc4 sen 2026
İlk görülmə4 sen 2026

Necə düzəltmək olar

Yeniləyin
  • Linux Linuxf6e51b09cbaa5f6f6e6a3a9dafa666f76c37aab5, f63e89a0310264264923f84406dea05fe752de62, 0952541b153e258b99d39cdb03ea6919fdeb41d0, 25ad03d5c0e858c4b63f1e4b6d461d2af1b30b22, d2acc96c528d589f5827cfb90e8e9229dd9d8cb4, 6d27199ebe8cb223022150f74be13f154a964474, 14dbe37681a6a7e346fc147bb363ec7cca3180a0, d895e66628f939edbb98608f6e033d3d39e6e546, 4a3f00262a044e8e15064b1a6860968bf0500bf4 və ya daha yeni versiya

Təsirlənən məhsullar

MəhsulTəsirlənən versiyalarDüzəldildiyi versiya
Linux Linux872d26a391da92ed8f0c0f5cb5fef428067b7f30 ≤ v < f6e51b09cbaa5f6f6e6a3a9dafa666f76c37aab5, 872d26a391da92ed8f0c0f5cb5fef428067b7f30 ≤ v < f63e89a0310264264923f84406dea05fe752de62, 872d26a391da92ed8f0c0f5cb5fef428067b7f30 ≤ v < 0952541b153e258b99d39cdb03ea6919fdeb41d0, 872d26a391da92ed8f0c0f5cb5fef428067b7f30 ≤ v < 25ad03d5c0e858c4b63f1e4b6d461d2af1b30b22, 872d26a391da92ed8f0c0f5cb5fef428067b7f30 ≤ v < d2acc96c528d589f5827cfb90e8e9229dd9d8cb4, 872d26a391da92ed8f0c0f5cb5fef428067b7f30 ≤ v < 6d27199ebe8cb223022150f74be13f154a964474, 872d26a391da92ed8f0c0f5cb5fef428067b7f30 ≤ v < 14dbe37681a6a7e346fc147bb363ec7cca3180a0, 872d26a391da92ed8f0c0f5cb5fef428067b7f30 ≤ v < d895e66628f939edbb98608f6e033d3d39e6e546, 872d26a391da92ed8f0c0f5cb5fef428067b7f30 ≤ v < 4a3f00262a044e8e15064b1a6860968bf0500bf4, 5.0f6e51b09cbaa5f6f6e6a3a9dafa666f76c37aab5, f63e89a0310264264923f84406dea05fe752de62, 0952541b153e258b99d39cdb03ea6919fdeb41d0, 25ad03d5c0e858c4b63f1e4b6d461d2af1b30b22, d2acc96c528d589f5827cfb90e8e9229dd9d8cb4, 6d27199ebe8cb223022150f74be13f154a964474, 14dbe37681a6a7e346fc147bb363ec7cca3180a0, d895e66628f939edbb98608f6e033d3d39e6e546, 4a3f00262a044e8e15064b1a6860968bf0500bf4

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-80789 · Linux · Dark Radar