CVE-2022-48862

EUVD-2022-53741
In the Linux kernel, the following vulnerability has been resolved:

vhost: fix hung thread due to erroneous iotlb entries

In vhost_iotlb_add_range_ctx(), range size can overflow to 0 when
start is 0 and last is ULONG_MAX. One instance where it can happen
is when userspace sends an IOTLB message with iova=size=uaddr=0
(vhost_process_iotlb_msg). So, an entry with size = 0, start = 0,
last = ULONG_MAX ends up in the iotlb. Next time a packet is sent,
iotlb_access_ok() loops indefinitely due to that erroneous entry.

	Call Trace:
	 <TASK>
	 iotlb_access_ok+0x21b/0x3e0 drivers/vhost/vhost.c:1340
	 vq_meta_prefetch+0xbc/0x280 drivers/vhost/vhost.c:1366
	 vhost_transport_do_send_pkt+0xe0/0xfd0 drivers/vhost/vsock.c:104
	 vhost_worker+0x23d/0x3d0 drivers/vhost/vhost.c:372
	 kthread+0x2e9/0x3a0 kernel/kthread.c:377
	 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:295
	 </TASK>

Reported by syzbot at:
	https://syzkaller.appspot.com/bug?extid=0abd373e2e50d704db87

To fix this, do two things:

1. Return -EINVAL in vhost_chr_write_iter() when userspace asks to map
   a range with size 0.
2. Fix vhost_iotlb_add_range_ctx() to handle the range [0, ULONG_MAX]
   by splitting it into two entries.
Infinite Loop
ProviderTypeBase ScoreAtk. VectorAtk. ComplexityPriv. RequiredVector
NISTPrimary
5.5 MEDIUM
LOCAL
LOW
LOW
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
Base Score
CVSS 3.x
EPSS Score
Percentile: 9%
Affected Products (NVD)
VendorProductVersion
linuxlinux_kernel
5.7 ≤
𝑥
< 5.15.29
linuxlinux_kernel
5.16 ≤
𝑥
< 5.16.15
𝑥
= Vulnerable software versions
Debian logo
Debian Releases
Debian Product
Codename
linux
bookworm
6.1.106-3
fixed
bookworm (security)
6.1.112-1
fixed
bullseye
vulnerable
bullseye (security)
vulnerable
sid
6.11.6-1
fixed
trixie
6.11.5-1
fixed
Ubuntu logo
Ubuntu Releases
Ubuntu Product
Codename
linux
bionic
not-affected
focal
not-affected
jammy
not-affected
noble
not-affected
trusty
not-affected
xenial
not-affected
linux-allwinner-5.19
focal
dne
jammy
ignored
noble
dne
linux-aws
bionic
not-affected
focal
not-affected
jammy
not-affected
noble
not-affected
trusty
not-affected
xenial
not-affected
linux-aws-5.0
bionic
ignored
focal
dne
jammy
dne
noble
dne
linux-aws-5.11
focal
ignored
jammy
dne
noble
dne
linux-aws-5.13
focal
ignored
jammy
dne
noble
dne
linux-aws-5.15
focal
not-affected
jammy
dne
noble
dne
linux-aws-5.19
focal
dne
jammy
ignored
noble
dne
linux-aws-5.3
bionic
ignored
focal
dne
jammy
dne
noble
dne
linux-aws-5.4
bionic
not-affected
focal
dne
jammy
dne
noble
dne
linux-aws-5.8
focal
ignored
jammy
dne
noble
dne
linux-aws-6.2
focal
dne
jammy
ignored
noble
dne
linux-aws-6.5
focal
dne
jammy
not-affected
noble
dne
linux-aws-fips
focal
dne
jammy
dne
noble
dne
linux-aws-hwe
focal
dne
jammy
dne
noble
dne
xenial
not-affected
linux-azure
bionic
ignored
focal
not-affected
jammy
not-affected
noble
not-affected
trusty
not-affected
xenial
not-affected
linux-azure-4.15
bionic
not-affected
focal
dne
jammy
dne
noble
dne
linux-azure-5.11
focal
ignored
jammy
dne
noble
dne
linux-azure-5.13
focal
ignored
jammy
dne
noble
dne
linux-azure-5.15
focal
not-affected
jammy
dne
noble
dne
linux-azure-5.19
focal
dne
jammy
ignored
noble
dne
linux-azure-5.3
bionic
ignored
focal
dne
jammy
dne
noble
dne
linux-azure-5.4
bionic
not-affected
focal
dne
jammy
dne
noble
dne
linux-azure-5.8
focal
ignored
jammy
dne
noble
dne
linux-azure-6.2
focal
dne
jammy
ignored
noble
dne
linux-azure-6.5
focal
dne
jammy
not-affected
noble
dne
linux-azure-edge
bionic
ignored
focal
dne
jammy
dne
noble
dne
linux-azure-fde
focal
ignored
jammy
not-affected
noble
dne
linux-azure-fde-5.15
focal
not-affected
jammy
dne
noble
dne
linux-azure-fde-5.19
focal
dne
jammy
ignored
noble
dne
linux-azure-fde-6.2
focal
dne
jammy
ignored
noble
dne
linux-azure-fips
focal
dne
jammy
dne
noble
dne
linux-bluefield
focal
not-affected
jammy
dne
noble
dne
linux-fips
focal
dne
jammy
dne
noble
dne
linux-gcp
bionic
ignored
focal
not-affected
jammy
not-affected
noble
not-affected
xenial
not-affected
linux-gcp-4.15
bionic
not-affected
focal
dne
jammy
dne
noble
dne
linux-gcp-5.11
focal
ignored
jammy
dne
noble
dne
linux-gcp-5.13
focal
ignored
jammy
dne
noble
dne
linux-gcp-5.15
focal
not-affected
jammy
dne
noble
dne
linux-gcp-5.19
focal
dne
jammy
ignored
noble
dne
linux-gcp-5.3
bionic
ignored
focal
dne
jammy
dne
noble
dne
linux-gcp-5.4
bionic
not-affected
focal
dne
jammy
dne
noble
dne
linux-gcp-5.8
focal
ignored
jammy
dne
noble
dne
linux-gcp-6.2
focal
dne
jammy
ignored
noble
dne
linux-gcp-6.5
focal
dne
jammy
not-affected
noble
dne
linux-gcp-fips
focal
dne
jammy
dne
noble
dne
linux-gke
focal
ignored
jammy
not-affected
noble
not-affected
linux-gke-4.15
bionic
ignored
focal
dne
jammy
dne
noble
dne
linux-gke-5.15
focal
ignored
jammy
dne
noble
dne
linux-gke-5.4
bionic
ignored
focal
dne
jammy
dne
noble
dne
linux-gkeop
focal
not-affected
jammy
not-affected
noble
dne
linux-gkeop-5.15
focal
not-affected
jammy
dne
noble
dne
linux-gkeop-5.4
bionic
ignored
focal
dne
jammy
dne
noble
dne
linux-hwe
bionic
ignored
focal
dne
jammy
dne
noble
dne
xenial
not-affected
linux-hwe-5.11
focal
ignored
jammy
dne
noble
dne
linux-hwe-5.13
focal
ignored
jammy
dne
noble
dne
linux-hwe-5.15
focal
not-affected
jammy
dne
noble
dne
linux-hwe-5.19
focal
dne
jammy
ignored
noble
dne
linux-hwe-5.4
bionic
not-affected
focal
dne
jammy
dne
noble
dne
linux-hwe-5.8
focal
ignored
jammy
dne
noble
dne
linux-hwe-6.2
focal
dne
jammy
ignored
noble
dne
linux-hwe-6.5
focal
dne
jammy
ignored
noble
dne
linux-hwe-6.8
bionic
dne
focal
dne
jammy
not-affected
noble
dne
trusty
dne
xenial
dne
linux-hwe-edge
bionic
ignored
focal
dne
jammy
dne
noble
dne
xenial
ignored
linux-ibm
focal
not-affected
jammy
not-affected
noble
not-affected
linux-ibm-5.15
focal
not-affected
jammy
dne
noble
dne
linux-ibm-5.4
bionic
not-affected
focal
dne
jammy
dne
noble
dne
linux-intel
focal
dne
jammy
dne
noble
not-affected
linux-intel-5.13
focal
ignored
jammy
dne
noble
dne
linux-intel-iot-realtime
bionic
dne
focal
dne
jammy
dne
noble
dne
trusty
dne
xenial
dne
linux-intel-iotg
focal
dne
jammy
not-affected
noble
dne
linux-intel-iotg-5.15
focal
Fixed 5.15.0-1008.11~20.04.1
released
jammy
dne
noble
dne
linux-iot
focal
not-affected
jammy
dne
noble
dne
linux-kvm
bionic
not-affected
focal
not-affected
jammy
not-affected
noble
dne
xenial
not-affected
linux-lowlatency
focal
dne
jammy
not-affected
noble
not-affected
linux-lowlatency-hwe-5.15
focal
not-affected
jammy
dne
noble
dne
linux-lowlatency-hwe-5.19
focal
dne
jammy
ignored
noble
dne
linux-lowlatency-hwe-6.2
focal
dne
jammy
ignored
noble
dne
linux-lowlatency-hwe-6.5
focal
dne
jammy
ignored
noble
dne
linux-lowlatency-hwe-6.8
bionic
dne
focal
dne
jammy
not-affected
noble
dne
trusty
dne
xenial
dne
linux-lts-xenial
focal
dne
jammy
dne
noble
dne
trusty
not-affected
linux-nvidia
focal
dne
jammy
not-affected
noble
not-affected
linux-nvidia-6.2
focal
dne
jammy
ignored
noble
dne
linux-nvidia-6.5
focal
dne
jammy
not-affected
noble
dne
linux-nvidia-6.8
bionic
dne
focal
dne
jammy
not-affected
noble
dne
trusty
dne
xenial
dne
linux-nvidia-lowlatency
bionic
dne
focal
dne
jammy
dne
noble
not-affected
trusty
dne
xenial
dne
linux-oem
bionic
ignored
focal
dne
jammy
dne
noble
dne
linux-oem-5.10
focal
ignored
jammy
dne
noble
dne
linux-oem-5.13
focal
ignored
jammy
dne
noble
dne
linux-oem-5.14
focal
ignored
jammy
dne
noble
dne
linux-oem-5.17
focal
dne
jammy
ignored
noble
dne
linux-oem-5.6
focal
ignored
jammy
dne
noble
dne
linux-oem-6.0
focal
dne
jammy
ignored
noble
dne
linux-oem-6.1
focal
dne
jammy
ignored
noble
dne
linux-oem-6.5
focal
dne
jammy
not-affected
noble
dne
linux-oem-6.8
focal
dne
jammy
dne
noble
not-affected
linux-oracle
bionic
not-affected
focal
not-affected
jammy
not-affected
noble
not-affected
xenial
not-affected
linux-oracle-5.0
bionic
ignored
focal
dne
jammy
dne
noble
dne
linux-oracle-5.11
focal
ignored
jammy
dne
noble
dne
linux-oracle-5.13
focal
ignored
jammy
dne
noble
dne
linux-oracle-5.15
focal
not-affected
jammy
dne
noble
dne
linux-oracle-5.3
bionic
ignored
focal
dne
jammy
dne
noble
dne
linux-oracle-5.4
bionic
not-affected
focal
dne
jammy
dne
noble
dne
linux-oracle-5.8
focal
ignored
jammy
dne
noble
dne
linux-oracle-6.5
focal
dne
jammy
not-affected
noble
dne
linux-raspi
focal
not-affected
jammy
not-affected
noble
not-affected
linux-raspi-5.4
bionic
not-affected
focal
dne
jammy
dne
noble
dne
linux-raspi-realtime
bionic
dne
focal
dne
jammy
dne
noble
dne
trusty
dne
xenial
dne
linux-raspi2
focal
ignored
jammy
dne
noble
dne
linux-realtime
bionic
dne
focal
dne
jammy
ignored
noble
dne
trusty
dne
xenial
dne
linux-riscv
focal
ignored
jammy
ignored
noble
not-affected
linux-riscv-5.11
focal
ignored
jammy
dne
noble
dne
linux-riscv-5.15
focal
not-affected
jammy
dne
noble
dne
linux-riscv-5.19
focal
dne
jammy
ignored
noble
dne
linux-riscv-5.8
focal
ignored
jammy
dne
noble
dne
linux-riscv-6.5
focal
dne
jammy
ignored
noble
dne
linux-riscv-6.8
bionic
dne
focal
dne
jammy
not-affected
noble
dne
trusty
dne
xenial
dne
linux-starfive-5.19
focal
dne
jammy
ignored
noble
dne
linux-starfive-6.2
focal
dne
jammy
ignored
noble
dne
linux-starfive-6.5
focal
dne
jammy
not-affected
noble
dne
linux-xilinx-zynqmp
focal
not-affected
jammy
not-affected
noble
dne