Cloudanix VulnDB

CVE-2024-0562

High · 7.8

CVSS

7.8

EPSS

0.3%

Published

Jan 15, 2024

CISA due date

—

Cloudanix analysis

Monitor only SSVC: Track

A bug in the Linux operating system kernel can let someone who already has access to the computer take full control of it or crash the machine.

Exploitation
Local Privilege
Attacker needs
Low Privilege
Complexity
Low
Impact
Full Compromise
Component
OS kernel
Class
Use After Free
Remediation
Upgrade
Effort
Medium
Patch risk
Medium

What it actually does

Use-after-free in the Linux kernel's write-back infrastructure: bdi_unregister completes and frees the bdi_writeback structure, yet wb_inode_writeback_end can still schedule bandwidth estimation work that later dereferences the freed object.

Why it matters to the business

Local attackers can crash the system or execute arbitrary code with kernel privileges, leading to full host compromise, data theft, or denial of service on any Linux system running an unpatched kernel.

How an attack unfolds

An attacker with local access removes a block device or triggers write-back unregistration, races the delayed work item to dereference the freed bdi_writeback, and leverages the resulting invalid memory access for privilege escalation or kernel code execution.

How to fix it

Upgrade the linux package to version 6.9.7-1 or later on Debian 13 systems; apply the equivalent upstream kernel fix on all other distributions; reboot after installation.

How to confirm the fix worked

Confirm the running kernel version is at least 6.9.7-1; verify the bdi_writeback fix is present in the kernel source or binary; re-test device removal under load to ensure no use-after-free occurs.

Typical attack path

  1. Obtain local user access on the target Linux host
  2. Trigger device removal or write-back shutdown to invoke bdi_unregister
  3. Race the scheduled bandwidth work item against the freed structure
  4. Achieve arbitrary kernel read/write or control-flow hijack
  5. Escalate to root and install persistence or exfiltrate data

How to detect it

Review kernel logs for oops, panic, or warning messages referencing bdi_writeback, wb_inode_writeback_end, or use-after-free during device removal; inspect auditd or system call logs for unusual block-device removal or write-back activity preceding crashes.

What your security team should do

  • Immediately schedule kernel upgrades to 6.9.7-1 across all Debian 13 fleets
  • Prioritize systems that allow untrusted local users or run containers
  • Monitor vendor advisories for backported fixes on older kernels
  • Restrict local device access where feasible until patches are deployed

The record

A use-after-free flaw was found in the Linux Kernel. When a disk is removed, bdi_unregister is called to stop further write-back and waits for associated delayed work to complete. However, wb_inode_writeback_end() may schedule bandwidth estimation work after this has completed, which can result in the timer attempting to access the recently freed bdi_writeback.

Affected packages

Ecosystem Package Introduced Fixed
Debian:12 linux 0 5.19.6-1
Debian:13 linux 0 5.19.6-1
Red Hat:rhel_eus:8.6::baseos bpftool 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::baseos bpftool-debuginfo 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::baseos kernel 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::baseos kernel-abi-stablelists 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::baseos kernel-core 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::baseos kernel-cross-headers 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::baseos kernel-debug 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::baseos kernel-debug-core 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::baseos kernel-debug-debuginfo 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::baseos kernel-debug-devel 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::baseos kernel-debug-modules 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::baseos kernel-debug-modules-extra 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::baseos kernel-debuginfo 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::baseos kernel-debuginfo-common-aarch64 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::baseos kernel-debuginfo-common-ppc64le 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::baseos kernel-debuginfo-common-s390x 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::baseos kernel-debuginfo-common-x86_64 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::baseos kernel-devel 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::baseos kernel-doc 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::baseos kernel-headers 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::baseos kernel-modules 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::baseos kernel-modules-extra 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::baseos kernel-tools 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::baseos kernel-tools-debuginfo 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::baseos kernel-tools-libs 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::baseos kernel-tools-libs-devel 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::baseos kernel-zfcpdump 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::baseos kernel-zfcpdump-core 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::baseos kernel-zfcpdump-debuginfo 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::baseos kernel-zfcpdump-devel 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::baseos kernel-zfcpdump-modules 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::baseos kernel-zfcpdump-modules-extra 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::baseos perf 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::baseos perf-debuginfo 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::baseos python3-perf 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::baseos python3-perf-debuginfo 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::crb bpftool 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::crb bpftool-debuginfo 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::crb kernel 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::crb kernel-abi-stablelists 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::crb kernel-core 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::crb kernel-cross-headers 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::crb kernel-debug 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::crb kernel-debug-core 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::crb kernel-debug-debuginfo 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::crb kernel-debug-devel 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::crb kernel-debug-modules 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::crb kernel-debug-modules-extra 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::crb kernel-debuginfo 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::crb kernel-debuginfo-common-aarch64 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::crb kernel-debuginfo-common-ppc64le 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::crb kernel-debuginfo-common-s390x 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::crb kernel-debuginfo-common-x86_64 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::crb kernel-devel 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::crb kernel-doc 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::crb kernel-headers 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::crb kernel-modules 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::crb kernel-modules-extra 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::crb kernel-tools 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::crb kernel-tools-debuginfo 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::crb kernel-tools-libs 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::crb kernel-tools-libs-devel 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::crb kernel-zfcpdump 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::crb kernel-zfcpdump-core 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::crb kernel-zfcpdump-debuginfo 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::crb kernel-zfcpdump-devel 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::crb kernel-zfcpdump-modules 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::crb kernel-zfcpdump-modules-extra 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::crb perf 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::crb perf-debuginfo 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::crb python3-perf 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhel_eus:8.6::crb python3-perf-debuginfo 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhev_hypervisor:4.4::el8 bpftool 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhev_hypervisor:4.4::el8 bpftool-debuginfo 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhev_hypervisor:4.4::el8 kernel 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhev_hypervisor:4.4::el8 kernel-abi-stablelists 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhev_hypervisor:4.4::el8 kernel-core 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhev_hypervisor:4.4::el8 kernel-cross-headers 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhev_hypervisor:4.4::el8 kernel-debug 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhev_hypervisor:4.4::el8 kernel-debug-core 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhev_hypervisor:4.4::el8 kernel-debug-debuginfo 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhev_hypervisor:4.4::el8 kernel-debug-devel 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhev_hypervisor:4.4::el8 kernel-debug-modules 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhev_hypervisor:4.4::el8 kernel-debug-modules-extra 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhev_hypervisor:4.4::el8 kernel-debuginfo 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhev_hypervisor:4.4::el8 kernel-debuginfo-common-aarch64 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhev_hypervisor:4.4::el8 kernel-debuginfo-common-ppc64le 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhev_hypervisor:4.4::el8 kernel-debuginfo-common-s390x 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhev_hypervisor:4.4::el8 kernel-debuginfo-common-x86_64 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhev_hypervisor:4.4::el8 kernel-devel 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhev_hypervisor:4.4::el8 kernel-doc 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhev_hypervisor:4.4::el8 kernel-headers 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhev_hypervisor:4.4::el8 kernel-modules 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhev_hypervisor:4.4::el8 kernel-modules-extra 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhev_hypervisor:4.4::el8 kernel-tools 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhev_hypervisor:4.4::el8 kernel-tools-debuginfo 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhev_hypervisor:4.4::el8 kernel-tools-libs 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhev_hypervisor:4.4::el8 kernel-tools-libs-devel 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhev_hypervisor:4.4::el8 kernel-zfcpdump 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhev_hypervisor:4.4::el8 kernel-zfcpdump-core 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhev_hypervisor:4.4::el8 kernel-zfcpdump-debuginfo 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhev_hypervisor:4.4::el8 kernel-zfcpdump-devel 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhev_hypervisor:4.4::el8 kernel-zfcpdump-modules 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhev_hypervisor:4.4::el8 kernel-zfcpdump-modules-extra 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhev_hypervisor:4.4::el8 perf 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhev_hypervisor:4.4::el8 perf-debuginfo 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhev_hypervisor:4.4::el8 python3-perf 0 0:4.18.0-372.87.1.el8_6
Red Hat:rhev_hypervisor:4.4::el8 python3-perf-debuginfo 0 0:4.18.0-372.87.1.el8_6
Ubuntu:14.04:LTS linux 0 3.11.0-12.19
Ubuntu:14.04:LTS linux-aws 0 4.4.0-1002.2
Ubuntu:14.04:LTS linux-azure 0 4.15.0-1023.24~14.04.1
Ubuntu:14.04:LTS linux-lts-xenial 0 4.4.0-13.29~14.04.1
Ubuntu:16.04:LTS linux 0 4.4.0-2.16
Ubuntu:16.04:LTS linux-aws 0 4.4.0-1001.10
Ubuntu:16.04:LTS linux-aws-hwe 0 4.15.0-1030.31~16.04.1
Ubuntu:16.04:LTS linux-azure 0 4.11.0-1009.9
Ubuntu:16.04:LTS linux-gcp 0 4.10.0-1004.4
Ubuntu:16.04:LTS linux-hwe 0 4.8.0-39.42~16.04.1
Ubuntu:16.04:LTS linux-hwe-edge 0 No fix
Ubuntu:16.04:LTS linux-kvm 0 4.4.0-1004.9
Ubuntu:16.04:LTS linux-oracle 0 4.15.0-1007.9~16.04.1
Ubuntu:18.04:LTS linux 0 4.13.0-16.19
Ubuntu:18.04:LTS linux-aws 0 4.15.0-1001.1
Ubuntu:18.04:LTS linux-aws-5.0 0 No fix
Ubuntu:18.04:LTS linux-aws-5.3 0 No fix
Ubuntu:18.04:LTS linux-aws-5.4 0 5.4.0-1018.18~18.04.1
Ubuntu:18.04:LTS linux-azure 0 No fix
Ubuntu:18.04:LTS linux-azure-4.15 0 4.15.0-1082.92
Ubuntu:18.04:LTS linux-azure-5.3 0 No fix
Ubuntu:18.04:LTS linux-azure-5.4 0 5.4.0-1020.20~18.04.1
Ubuntu:18.04:LTS linux-azure-edge 0 No fix
Ubuntu:18.04:LTS linux-gcp 0 No fix
Ubuntu:18.04:LTS linux-gcp-4.15 0 4.15.0-1071.81
Ubuntu:18.04:LTS linux-gcp-5.3 0 No fix
Ubuntu:18.04:LTS linux-gcp-5.4 0 5.4.0-1019.19~18.04.2
Ubuntu:18.04:LTS linux-gke-4.15 0 No fix
Ubuntu:18.04:LTS linux-gke-5.4 0 No fix
Ubuntu:18.04:LTS linux-gkeop-5.4 0 No fix
Ubuntu:18.04:LTS linux-hwe 0 No fix
Ubuntu:18.04:LTS linux-hwe-5.4 0 5.4.0-37.41~18.04.1
Ubuntu:18.04:LTS linux-hwe-edge 0 5.0.0-15.16~18.04.1
Ubuntu:18.04:LTS linux-ibm-5.4 0 5.4.0-1010.11~18.04.2
Ubuntu:18.04:LTS linux-kvm 0 4.15.0-1002.2
Ubuntu:18.04:LTS linux-oem 0 No fix
Ubuntu:18.04:LTS linux-oem-osp1 0 5.0.0-1010.11
Ubuntu:18.04:LTS linux-oracle 0 4.15.0-1007.9
Ubuntu:18.04:LTS linux-oracle-5.0 0 No fix
Ubuntu:18.04:LTS linux-oracle-5.3 0 No fix
Ubuntu:18.04:LTS linux-oracle-5.4 0 5.4.0-1019.19~18.04.1
Ubuntu:18.04:LTS linux-raspi-5.4 0 5.4.0-1013.13~18.04.1
Ubuntu:20.04:LTS linux 0 5.4.0-9.12
Ubuntu:20.04:LTS linux-aws 0 5.4.0-1005.5
Ubuntu:20.04:LTS linux-aws-5.11 0 No fix
Ubuntu:20.04:LTS linux-aws-5.13 0 No fix
Ubuntu:20.04:LTS linux-aws-5.15 0 5.15.0-1023.27~20.04.1
Ubuntu:20.04:LTS linux-aws-5.8 0 No fix
Ubuntu:20.04:LTS linux-azure 0 5.4.0-1006.6
Ubuntu:20.04:LTS linux-azure-5.11 0 No fix
Ubuntu:20.04:LTS linux-azure-5.13 0 No fix
Ubuntu:20.04:LTS linux-azure-5.15 0 5.15.0-1023.29~20.04.1
Ubuntu:20.04:LTS linux-azure-5.8 0 No fix
Ubuntu:20.04:LTS linux-azure-fde 0 No fix
Ubuntu:20.04:LTS linux-azure-fde-5.15 0 5.15.0-1029.36~20.04.1.1
Ubuntu:20.04:LTS linux-bluefield 0 5.4.0-1007.10
Ubuntu:20.04:LTS linux-gcp 0 5.4.0-1005.5
Ubuntu:20.04:LTS linux-gcp-5.11 0 No fix
Ubuntu:20.04:LTS linux-gcp-5.13 0 No fix
Ubuntu:20.04:LTS linux-gcp-5.15 0 5.15.0-1022.29~20.04.1
Ubuntu:20.04:LTS linux-gcp-5.8 0 No fix
Ubuntu:20.04:LTS linux-gke 0 No fix
Ubuntu:20.04:LTS linux-gke-5.15 0 No fix
Ubuntu:20.04:LTS linux-gkeop 0 5.4.0-1008.9
Ubuntu:20.04:LTS linux-gkeop-5.15 0 5.15.0-1008.12~20.04.1
Ubuntu:20.04:LTS linux-hwe-5.11 0 No fix
Ubuntu:20.04:LTS linux-hwe-5.13 0 No fix
Ubuntu:20.04:LTS linux-hwe-5.15 0 5.15.0-53.59~20.04.1
Ubuntu:20.04:LTS linux-hwe-5.8 0 No fix
Ubuntu:20.04:LTS linux-ibm 0 5.4.0-1003.4
Ubuntu:20.04:LTS linux-ibm-5.15 0 5.15.0-1033.36~20.04.1
Ubuntu:20.04:LTS linux-intel-5.13 0 No fix
Ubuntu:20.04:LTS linux-intel-iotg-5.15 0 5.15.0-1018.23~20.04.1
Ubuntu:20.04:LTS linux-iot 0 5.4.0-1001.3
Ubuntu:20.04:LTS linux-kvm 0 5.4.0-1004.4
Ubuntu:20.04:LTS linux-lowlatency-hwe-5.15 0 5.15.0-53.59~20.04.1
Ubuntu:20.04:LTS linux-oem-5.10 0 No fix
Ubuntu:20.04:LTS linux-oem-5.13 0 No fix
Ubuntu:20.04:LTS linux-oem-5.14 0 No fix
Ubuntu:20.04:LTS linux-oem-5.6 0 No fix
Ubuntu:20.04:LTS linux-oracle 0 5.4.0-1005.5
Ubuntu:20.04:LTS linux-oracle-5.11 0 No fix
Ubuntu:20.04:LTS linux-oracle-5.13 0 No fix
Ubuntu:20.04:LTS linux-oracle-5.15 0 5.15.0-1022.28~20.04.1
Ubuntu:20.04:LTS linux-oracle-5.8 0 No fix
Ubuntu:20.04:LTS linux-raspi 0 5.4.0-1007.7
Ubuntu:20.04:LTS linux-raspi2 0 No fix
Ubuntu:20.04:LTS linux-riscv 0 No fix
Ubuntu:20.04:LTS linux-riscv-5.11 0 No fix
Ubuntu:20.04:LTS linux-riscv-5.15 0 5.15.0-1023.27~20.04.1

Related vulnerabilities