CVE-2022-49568

Severity CVSS v4.0:
Pending analysis
Type:
CWE-476 NULL Pointer Dereference
Publication date:
26/02/2025
Last modified:
01/10/2025

Description

In the Linux kernel, the following vulnerability has been resolved:<br /> <br /> KVM: Don&amp;#39;t null dereference ops-&gt;destroy<br /> <br /> A KVM device cleanup happens in either of two callbacks:<br /> 1) destroy() which is called when the VM is being destroyed;<br /> 2) release() which is called when a device fd is closed.<br /> <br /> Most KVM devices use 1) but Book3s&amp;#39;s interrupt controller KVM devices<br /> (XICS, XIVE, XIVE-native) use 2) as they need to close and reopen during<br /> the machine execution. The error handling in kvm_ioctl_create_device()<br /> assumes destroy() is always defined which leads to NULL dereference as<br /> discovered by Syzkaller.<br /> <br /> This adds a checks for destroy!=NULL and adds a missing release().<br /> <br /> This is not changing kvm_destroy_devices() as devices with defined<br /> release() should have been removed from the KVM devices list by then.

Vulnerable products and versions

CPE From Up to
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 5.4.210 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 5.5 (including) 5.10.134 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 5.11 (including) 5.15.58 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 5.16 (including) 5.18.15 (excluding)
cpe:2.3:o:linux:linux_kernel:5.19:rc1:*:*:*:*:*:*