{"uuid": "04b36a97-ecee-4a4d-9b6c-6fd8c9a03733", "vulnerability_lookup_origin": "1a89b78e-f703-45f3-bb86-59eb712668bd", "author": "2a075640-a300-48a4-bb44-bc6130783b9b", "vulnerability": "CVE-2022-48862", "type": "seen", "source": "https://t.me/cvedetector/952", "content": "{\n  \"Source\": \"CVE FEED\",\n  \"Title\": \"CVE-2022-48862 - Linux Kernel Vhost IOTLB Overwrite Vulnerability\", \n  \"Content\": \"CVE ID : CVE-2022-48862 \nPublished : July 16, 2024, 1:15 p.m. | 37\u00a0minutes ago \nDescription : In the Linux kernel, the following vulnerability has been resolved:  \n  \nvhost: fix hung thread due to erroneous iotlb entries  \n  \nIn vhost_iotlb_add_range_ctx(), range size can overflow to 0 when  \nstart is 0 and last is ULONG_MAX. One instance where it can happen  \nis when userspace sends an IOTLB message with iova=size=uaddr=0  \n(vhost_process_iotlb_msg). So, an entry with size = 0, start = 0,  \nlast = ULONG_MAX ends up in the iotlb. Next time a packet is sent,  \niotlb_access_ok() loops indefinitely due to that erroneous entry.  \n  \n Call Trace:  \n    \n  iotlb_access_ok+0x21b/0x3e0 drivers/vhost/vhost.c:1340  \n  vq_meta_prefetch+0xbc/0x280 drivers/vhost/vhost.c:1366  \n  vhost_transport_do_send_pkt+0xe0/0xfd0 drivers/vhost/vsock.c:104  \n  vhost_worker+0x23d/0x3d0 drivers/vhost/vhost.c:372  \n  kthread+0x2e9/0x3a0 kernel/kthread.c:377  \n  ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:295  \n    \n  \nReported by syzbot at:  \n   \n  \nTo fix this, do two things:  \n  \n1. Return -EINVAL in vhost_chr_write_iter() when userspace asks to map  \n   a range with size 0.  \n2. Fix vhost_iotlb_add_range_ctx() to handle the range [0, ULONG_MAX]  \n   by splitting it into two entries. \nSeverity: 0.0 | NA \nVisit the link for more details, such as CVSS details, affected products, timeline, and more...\",\n  \"Detection Date\": \"16 Jul 2024\",\n  \"Type\": \"Vulnerability\"\n}\n\ud83d\udd39 t.me/cvedetector \ud83d\udd39", "creation_timestamp": "2024-07-16T16:16:49.000000Z"}