Use-after-free in Linux kernel - CVE-2019-19448
Published: December 8, 2019 / Updated: August 8, 2020
Vulnerability details
The vulnerability allows a remote non-authenticated attacker to execute arbitrary code.
In the Linux kernel 5.0.21 and 5.3.11, mounting a crafted btrfs filesystem image, performing some operations, and then making a syncfs system call can lead to a use-after-free in try_merge_free_space in fs/btrfs/free-space-cache.c because the pointer to a left data structure can be the same as the pointer to a right data structure.
Affected software
Slackware Linux
Ubuntu
linux-4.4.240/kernel-modules
linux-4.4.240/kernel-huge
linux-4.4.240/kernel-generic
linux-4.4.240/kernel-headers
linux-image-oem (Ubuntu package)
linux-image-virtual-hwe-16.04 (Ubuntu package)
linux-image-lowlatency-hwe-16.04 (Ubuntu package)
linux-image-generic-lpae-hwe-16.04 (Ubuntu package)
linux-image-generic-hwe-16.04 (Ubuntu package)
linux-image-4.15.0-120-lowlatency (Ubuntu package)
linux-image-4.15.0-120-generic-lpae (Ubuntu package)
linux-image-4.15.0-120-generic (Ubuntu package)
linux-image-generic (Ubuntu package)
linux-image-generic-lpae (Ubuntu package)
linux-image-virtual (Ubuntu package)
linux-image-lowlatency (Ubuntu package)
linux-image-4.15.0-121-generic (Ubuntu package)
linux-image-4.15.0-121-generic-lpae (Ubuntu package)
linux-image-4.15.0-121-lowlatency (Ubuntu package)
linux-image-oracle (Ubuntu package)
linux-image-4.15.0-1056-oracle (Ubuntu package)
linux-image-4.15.0-1057-oracle (Ubuntu package)
linux-image-oracle-lts-18.04 (Ubuntu package)
linux-image-gke-4.15 (Ubuntu package)
linux-image-4.15.0-1072-gke (Ubuntu package)
linux-image-gke (Ubuntu package)
linux-image-raspi2 (Ubuntu package)
linux-image-4.15.0-1073-raspi2 (Ubuntu package)
linux-image-kvm (Ubuntu package)
linux-image-4.15.0-1077-kvm (Ubuntu package)
linux-image-aws-hwe (Ubuntu package)
linux-image-4.15.0-1085-aws (Ubuntu package)
linux-image-gcp (Ubuntu package)
linux-image-aws-lts-18.04 (Ubuntu package)
linux-image-4.15.0-1086-aws (Ubuntu package)
linux-image-4.15.0-1086-gcp (Ubuntu package)
linux-image-gcp-lts-18.04 (Ubuntu package)
linux-image-snapdragon (Ubuntu package)
linux-image-4.15.0-1089-snapdragon (Ubuntu package)
linux-image-azure (Ubuntu package)
linux-image-4.15.0-1098-azure (Ubuntu package)
linux-image-azure-lts-18.04 (Ubuntu package)
linux-image-4.15.0-1099-oem (Ubuntu package)
linux-image-4.15.0-1099-azure (Ubuntu package)
How to mitigate CVE-2019-19448
linux-4.4.240/kernel-huge - update to 4.4.240
linux-4.4.240/kernel-generic - update to 4.4.240
linux-4.4.240/kernel-headers - update to 4.4.240_smp
linux-image-oem (Ubuntu package) - addressed in versions 4.15.0.120.121, 4.15.0.1099.103
linux-image-virtual-hwe-16.04 (Ubuntu package) - update to 4.15.0.120.121
linux-image-lowlatency-hwe-16.04 (Ubuntu package) - update to 4.15.0.120.121
linux-image-generic-lpae-hwe-16.04 (Ubuntu package) - update to 4.15.0.120.121
linux-image-generic-hwe-16.04 (Ubuntu package) - update to 4.15.0.120.121
linux-image-4.15.0-120-lowlatency (Ubuntu package) - update to 4.15.0-120.122~16.04.1
linux-image-4.15.0-120-generic-lpae (Ubuntu package) - update to 4.15.0-120.122~16.04.1
linux-image-4.15.0-120-generic (Ubuntu package) - update to 4.15.0-120.122~16.04.1
linux-image-generic (Ubuntu package) - update to 4.15.0.121.108
linux-image-generic-lpae (Ubuntu package) - update to 4.15.0.121.108
linux-image-virtual (Ubuntu package) - update to 4.15.0.121.108
linux-image-lowlatency (Ubuntu package) - update to 4.15.0.121.108
linux-image-4.15.0-121-generic (Ubuntu package) - update to 4.15.0-121.123
linux-image-4.15.0-121-generic-lpae (Ubuntu package) - update to 4.15.0-121.123
linux-image-4.15.0-121-lowlatency (Ubuntu package) - update to 4.15.0-121.123
linux-image-oracle (Ubuntu package) - update to 4.15.0.1056.46
linux-image-4.15.0-1056-oracle (Ubuntu package) - update to 4.15.0-1056.61~16.04.1
linux-image-4.15.0-1057-oracle (Ubuntu package) - update to 4.15.0-1057.62
linux-image-oracle-lts-18.04 (Ubuntu package) - update to 4.15.0.1057.67
linux-image-gke-4.15 (Ubuntu package) - update to 4.15.0.1072.76
linux-image-4.15.0-1072-gke (Ubuntu package) - update to 4.15.0-1072.76
linux-image-gke (Ubuntu package) - addressed in versions 4.15.0.1072.76, 4.15.0.1086.87
linux-image-raspi2 (Ubuntu package) - update to 4.15.0.1073.70
linux-image-4.15.0-1073-raspi2 (Ubuntu package) - update to 4.15.0-1073.78
linux-image-kvm (Ubuntu package) - update to 4.15.0.1077.73
linux-image-4.15.0-1077-kvm (Ubuntu package) - update to 4.15.0-1077.79
linux-image-aws-hwe (Ubuntu package) - update to 4.15.0.1085.81
linux-image-4.15.0-1085-aws (Ubuntu package) - update to 4.15.0-1085.90~16.04.1
linux-image-gcp (Ubuntu package) - update to 4.15.0.1086.87
linux-image-aws-lts-18.04 (Ubuntu package) - update to 4.15.0.1086.88
linux-image-4.15.0-1086-aws (Ubuntu package) - update to 4.15.0-1086.91
linux-image-4.15.0-1086-gcp (Ubuntu package) - addressed in versions 4.15.0-1086.98, 4.15.0-1086.98~16.04.1
linux-image-gcp-lts-18.04 (Ubuntu package) - update to 4.15.0.1086.104
linux-image-snapdragon (Ubuntu package) - update to 4.15.0.1089.92
linux-image-4.15.0-1089-snapdragon (Ubuntu package) - update to 4.15.0-1089.98
linux-image-azure (Ubuntu package) - addressed in versions 4.15.0.1098.74, 4.15.0.1098.92
linux-image-4.15.0-1098-azure (Ubuntu package) - addressed in versions 4.15.0-1098.109~14.04.1, 4.15.0-1098.109~16.04.1
linux-image-azure-lts-18.04 (Ubuntu package) - update to 4.15.0.1099.72
linux-image-4.15.0-1099-oem (Ubuntu package) - update to 4.15.0-1099.109
linux-image-4.15.0-1099-azure (Ubuntu package) - update to 4.15.0-1099.110