Katalog CVE

CVE-2025-39721

ŚrednieCVSS 5.5
Opublikowano: Zaktualizowano: Przetłumaczono: NVD NIST

Prawdopodobieństwo exploitacji (EPSS)

Niskie ryzyko
0.13%

Percentyl 3 - wyżej niż 3% wszystkich znanych CVE

Streszczenie

W jądrze Linuxa wykryto podatność w sterownikach QAT (QuickAssist Technology) polegającą na użyciu po zwolnieniu pamięci (use-after-free). Powtarzane ładowanie i rozładowywanie sterownika specyficznego dla urządzenia (np. qat_4xxx) w pętli może prowadzić do awarii systemu, gdy przerwanie zarządzania energią (PM) wystąpi tuż przed wyładowaniem sterownika, a w kolejce współdzielonej (`qat_misc_wq`) pozostanie oczekujące zadanie. Po wyładowaniu sterownika wykonanie tego zadania powoduje dereferencję zwolnionej pamięci i crash jądra.

Ocena ryzyka

Organizacja narażona jest na niestabilność systemu i potencjalne awarie (kernel panic) podczas operacji ładowania/rozładowywania sterowników QAT, co może prowadzić do przerw w działaniu usług krytycznych wykorzystujących akcelerację sprzętową.

Rekomendacja

Należy niezwłocznie zastosować łatkę z jądra Linuxa zawierającą flushowanie kolejki `qat_misc_wq` podczas wyłączania urządzenia. Zaleca się aktualizację do wersji jądra zawierającej to zabezpieczenie lub ręczne backportowanie poprawki.

Inne podatności w Linux kernel

Zobacz wszystkie
Oryginalny opis (angielski, źródło NVD)

In the Linux kernel, the following vulnerability has been resolved: crypto: qat - flush misc workqueue during device shutdown Repeated loading and unloading of a device specific QAT driver, for example qat_4xxx, in a tight loop can lead to a crash due to a use-after-free scenario. This occurs when a power management (PM) interrupt triggers just before the device-specific driver (e.g., qat_4xxx.ko) is unloaded, while the core driver (intel_qat.ko) remains loaded. Since the driver uses a shared workqueue (`qat_misc_wq`) across all devices and owned by intel_qat.ko, a deferred routine from the device-specific driver may still be pending in the queue. If this routine executes after the driver is unloaded, it can dereference freed memory, resulting in a page fault and kernel crash like the following: BUG: unable to handle page fault for address: ffa000002e50a01c #PF: supervisor read access in kernel mode RIP: 0010:pm_bh_handler+0x1d2/0x250 [intel_qat] Call Trace: pm_bh_handler+0x1d2/0x250 [intel_qat] process_one_work+0x171/0x340 worker_thread+0x277/0x3a0 kthread+0xf0/0x120 ret_from_fork+0x2d/0x50 To prevent this, flush the misc workqueue during device shutdown to ensure that all pending work items are completed before the driver is unloaded. Note: This approach may slightly increase shutdown latency if the workqueue contains jobs from other devices, but it ensures correctness and stability.

Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS