Katalog CVE

CVE-2024-56565

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

Prawdopodobieństwo exploitacji (EPSS)

Niskie ryzyko
0.22%

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

Streszczenie

W jądrze Linux w systemie plików f2fs naprawiono błąd polegający na tym, że po utworzeniu snapshotu na urządzeniu LVM discard_max_bytes jest zerowane, co powoduje przekazanie zera do __blkdev_issue_discard i panikę jądra. Poprawka odrzuca pozostałe discard w f2fs_unfreeze oraz sprawdza discard_max_bytes przed wysłaniem discard.

Ocena ryzyka

Może powodować panikę jądra i niedostępność systemu podczas operacji na systemie plików f2fs na urządzeniach LVM z snapshotami.

Rekomendacja

Zaktualizuj jądro Linux do wersji z poprawką, która bezpiecznie obsługuje discard po utworzeniu snapshotu LVM.

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: f2fs: fix to drop all discards after creating snapshot on lvm device Piergiorgio reported a bug in bugzilla as below: ------------[ cut here ]------------ WARNING: CPU: 2 PID: 969 at fs/f2fs/segment.c:1330 RIP: 0010:__submit_discard_cmd+0x27d/0x400 [f2fs] Call Trace: __issue_discard_cmd+0x1ca/0x350 [f2fs] issue_discard_thread+0x191/0x480 [f2fs] kthread+0xcf/0x100 ret_from_fork+0x31/0x50 ret_from_fork_asm+0x1a/0x30 w/ below testcase, it can reproduce this bug quickly: - pvcreate /dev/vdb - vgcreate myvg1 /dev/vdb - lvcreate -L 1024m -n mylv1 myvg1 - mount /dev/myvg1/mylv1 /mnt/f2fs - dd if=/dev/zero of=/mnt/f2fs/file bs=1M count=20 - sync - rm /mnt/f2fs/file - sync - lvcreate -L 1024m -s -n mylv1-snapshot /dev/myvg1/mylv1 - umount /mnt/f2fs The root cause is: it will update discard_max_bytes of mounted lvm device to zero after creating snapshot on this lvm device, then, __submit_discard_cmd() will pass parameter @nr_sects w/ zero value to __blkdev_issue_discard(), it returns a NULL bio pointer, result in panic. This patch changes as below for fixing: 1. Let's drop all remained discards in f2fs_unfreeze() if snapshot of lvm device is created. 2. Checking discard_max_bytes before submitting discard during __submit_discard_cmd().

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