CVE-2026-89847
Təsvir
Linux nüvəsində aşağıdakı zəiflik aradan qaldırılmışdır: scsi: qla2xxx: async IOCB taymautunda ikiqat tamamlanmanın qarşısının alınması qla2x00_async_iocb_timeout() funksiyası vaxtı bitmiş async IOCB-ni ləğv etməyə çalışır. qla24xx_async_abort_cmd() uğursuz olduqda, həm SRB_LOGIN_CMD yolu, həm də SRB_CTRL_VP/default yolu SRB üçün outstanding_cmds[] massivini skan edir və sonra SRB-nin həqiqətən tapılıb-tapılmadığını və ya silinib-silinmədiyini yoxlamadan şərtsiz olaraq sp->done(sp, QLA_FUNCTION_TIMEOUT) funksiyasını çağırır. Əgər cavab ISR eyni handle-i birinci tamamlayarsa, o, qp_lock_ptr altında SRB-ni silir və sp->done() -> complete(sp->comp) funksiyalarını işə salır. Göndərən qla24xx_control_vp() funksiyası wait_for_completion()-dən oyandırılır, sp->comp-ni təmizləyir, istinadını silir və geri dönərək stekdəki tamamlanmanı bərpa edir. Taymer istinadı SRB-ni taymaut idarəçisi boyunca aktiv saxlayır, lakin göndərənin stekini saxlamır. Daha sonra taymaut ikinci bir sp->done() -> qla_ctrlvp_sp_done() çağırışı edir ki, bu da "if (sp->comp) complete(sp->comp)" şərtini qiymətləndirir; göstərici göndərənin NULL yazmasından əvvəl yükləndiyi üçün complete() azad edilmiş stek freyminə yazı yazır ki, bu da use-after-free xətasına səbəb olur. Bu yolun SRB-ni outstanding_cmds-dən silib-silmədiyini izləyin və sp->done() funksiyasını yalnız silindiyi halda çağırın, beləliklə əmr onu sahiblənən yol tərəfindən yalnız bir dəfə tamamlanır. Bu, artıq qla24xx_abort_iocb_timeout()-da istifadə edilən sp_found mühafizəsinin analoqudur.
Necə düzəltmək olar
- Linux Linux71a7b6e3c7f121439f51a058e53d4a8e05b63dec, 7257b5e1fb6c9387714f66e01b79ec82b717eede, f5b660e0b0d9190d8853c795c2522cc5f8c93003, 6e217a9482eabbd8b29847be334c74cf468d3544, d6d856c722f40f0694ff755208552e658db6dd42, 9fa1d71233a82416492d9c9de9756ebe140fe714, 845d4abd92cd2f97551356c8b281ad6e197acb07, bb45bc4bd53c95a7bf6f782577b5ede94c0f8aa8 və ya daha yeni versiya
Təsirlənən məhsullar
| Məhsul | Təsirlənən versiyalar | Düzəldildiyi versiya |
|---|---|---|
| Linux Linux | f6145e86d21fccd59bbb87bc1e1eb076658fd79a ≤ v < 71a7b6e3c7f121439f51a058e53d4a8e05b63dec, f6145e86d21fccd59bbb87bc1e1eb076658fd79a ≤ v < 7257b5e1fb6c9387714f66e01b79ec82b717eede, f6145e86d21fccd59bbb87bc1e1eb076658fd79a ≤ v < f5b660e0b0d9190d8853c795c2522cc5f8c93003, f6145e86d21fccd59bbb87bc1e1eb076658fd79a ≤ v < 6e217a9482eabbd8b29847be334c74cf468d3544, f6145e86d21fccd59bbb87bc1e1eb076658fd79a ≤ v < d6d856c722f40f0694ff755208552e658db6dd42, f6145e86d21fccd59bbb87bc1e1eb076658fd79a ≤ v < 9fa1d71233a82416492d9c9de9756ebe140fe714, f6145e86d21fccd59bbb87bc1e1eb076658fd79a ≤ v < 845d4abd92cd2f97551356c8b281ad6e197acb07, f6145e86d21fccd59bbb87bc1e1eb076658fd79a ≤ v < bb45bc4bd53c95a7bf6f782577b5ede94c0f8aa8, 4.19 | 71a7b6e3c7f121439f51a058e53d4a8e05b63dec, 7257b5e1fb6c9387714f66e01b79ec82b717eede, f5b660e0b0d9190d8853c795c2522cc5f8c93003, 6e217a9482eabbd8b29847be334c74cf468d3544, d6d856c722f40f0694ff755208552e658db6dd42, 9fa1d71233a82416492d9c9de9756ebe140fe714, 845d4abd92cd2f97551356c8b281ad6e197acb07, bb45bc4bd53c95a7bf6f782577b5ede94c0f8aa8 |
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.