CVE-2023-53823

Yüksək

Təsvir

Linux kernel-də aşağıdakı zəiflik aradan qaldırılmışdır: block/rq_qos: rq_qos API-ləri yeni kilid (lock) ilə qorunsun 50e34d78815e nömrəli commit ("block: disable the elevator int del_gendisk") rq_qos_exit() funksiyasını disk_release()-dən del_gendisk()-ə köçürür, bu isə bəzi problemlərə yol açır: 1) Əgər rq_qos_add() cgroupfs vasitəsilə iocost/iolatency aktivləşdirildikdə tetiklənsə, o, del_gendisk() ilə eyni vaxtda baş verə bilər və 'q->rq_qos'-a eyni vaxtda yazı yazmaq təhlükəsiz deyil. 2) rq_qos-dan asılı olan cgroup siyasətinin aktivləşdirilməsi rq_qos_add() və blkcg_activate_policy() funksiyalarını çağıracaq və əgər prosesin ortasında rq_qos_exit() çağırılarsa, blkcg_activate_policy()-də null-ptr-dereference baş verəcəkdir. 3) blkg_conf_open_bdev() diski tapmaq üçün əvvəlcə blkdev_get_no_open()-i çağıra bilər, sonra isə əgər rq_qos_add()-dən əvvəl del_gendisk()-dən gələn rq_qos_exit() icra olunarsa, yaddaş sızması (memory leak) baş verəcəkdir. Bu yamada yeni disk səviyyəli mutex 'rq_qos_mutex' əlavə edilir: 1) Kilid birbaşa rq_qos_exit()-i qoruyacaqdır. 2) blk-cgroup-dan asılı olmayan wbt üçün hazırda rq_qos_add() yalnız disk başladılması zamanı çağırıla bilər, çünki wbt rq_qos_exit() icra olunana qədər məhv edilə bilməz, buna görə də hazırda wbt-ni qorumamaq təhlükəsizdir. Lakin gələcəkdə rq_qos-un dinamik məhvi dəstəkləndiyi təqdirdə, bu yama aynı zamanda wbt_init()-dən gələn rq_qos_add()-i birbaşa qoruyur; bu kifayətdir, çünki blk-sysfs artıq yazanları diskin silinməsi ilə sinxronlaşdırır. 3) iocost və iolatency üçün diskin silinməsini və cgroup konfiqurasiyasını sinxronlaşdırmaq məqsədilə, kilid blkg_conf_open_bdev()-dəki blkdev_get_no_open()-dən sonra saxlanılır və blkg_conf_exit()-də buraxılır. Yuxarıda qeyd olunan yaddaş sızmasını düzəltmək üçün yeni kilid tutulduqdan sonra disk_live() yoxlanılır.

CiddilikYüksək
CVSS7.8
İstismar ehtimalı—
MəhsulLinux
Dərc9 dek 2025
İlk görülmə9 dek 2025

Necə düzəltmək olar

Yeniləyin
  • Linux Linuxf54c4ab8ffecf621ab20fb6d2b194af93616cd7e, 16398b4638b5cd8c1dc95fc940a1591a801d53ce, a13bd91be22318768d55470cbc0b0f4488ef9edf, 5.19 və ya daha yeni versiya

Təsirlənən məhsullar

MəhsulTəsirlənən versiyalarDüzəldildiyi versiya
Linux Linux50e34d78815e474d410f342fbe783b18192ca518 ≤ v < f54c4ab8ffecf621ab20fb6d2b194af93616cd7e, 50e34d78815e474d410f342fbe783b18192ca518 ≤ v < 16398b4638b5cd8c1dc95fc940a1591a801d53ce, 50e34d78815e474d410f342fbe783b18192ca518 ≤ v < a13bd91be22318768d55470cbc0b0f4488ef9edf, f28699fafc047ec33299da01e928c3a0073c5cc6, 5.18.8 ≤ v < 5.19, 5.19f54c4ab8ffecf621ab20fb6d2b194af93616cd7e, 16398b4638b5cd8c1dc95fc940a1591a801d53ce, a13bd91be22318768d55470cbc0b0f4488ef9edf, 5.19

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.