CVE Vulnerabilities

CVE-2022-28192

Use After Free

Published: May 17, 2022 | Modified: May 26, 2022
CVSS 3.x
N/A
Source:
NVD
CVSS 2.x
1.9 LOW
AV:L/AC:M/Au:N/C:N/I:N/A:P
RedHat/V2
RedHat/V3
Ubuntu
MEDIUM

NVIDIA vGPU software contains a vulnerability in the Virtual GPU Manager (nvidia.ko), where it may lead to a use-after-free, which in turn may cause denial of service. This attack is complex to carry out because the attacker needs to have control over freeing some host side resources out of sequence, which requires elevated privileges.

Weakness

Referencing memory after it has been freed can cause a program to crash, use unexpected values, or execute code.

Affected Software

Name Vendor Start Version End Version
Virtual_gpu Nvidia 11.0 (including) 11.8 (excluding)
Virtual_gpu Nvidia 13.0 (including) 13.3 (excluding)
Virtual_gpu Nvidia 14.0 (including) 14.0 (including)
Nvidia-graphics-drivers-304 Ubuntu esm-infra/xenial *
Nvidia-graphics-drivers-304 Ubuntu trusty *
Nvidia-graphics-drivers-304 Ubuntu xenial *
Nvidia-graphics-drivers-304-updates Ubuntu trusty *
Nvidia-graphics-drivers-304-updates Ubuntu xenial *
Nvidia-graphics-drivers-340 Ubuntu bionic *
Nvidia-graphics-drivers-340 Ubuntu esm-infra/bionic *
Nvidia-graphics-drivers-340 Ubuntu esm-infra/xenial *
Nvidia-graphics-drivers-340 Ubuntu focal *
Nvidia-graphics-drivers-340 Ubuntu trusty *
Nvidia-graphics-drivers-340 Ubuntu xenial *
Nvidia-graphics-drivers-340-updates Ubuntu trusty *
Nvidia-graphics-drivers-352 Ubuntu trusty *
Nvidia-graphics-drivers-352-updates Ubuntu trusty *
Nvidia-graphics-drivers-367 Ubuntu trusty *
Nvidia-graphics-drivers-375 Ubuntu trusty *
Nvidia-graphics-drivers-384 Ubuntu trusty *
Nvidia-graphics-drivers-384 Ubuntu xenial *
Nvidia-graphics-drivers-390 Ubuntu bionic *
Nvidia-graphics-drivers-390 Ubuntu focal *
Nvidia-graphics-drivers-390 Ubuntu impish *
Nvidia-graphics-drivers-390 Ubuntu jammy *
Nvidia-graphics-drivers-418-server Ubuntu bionic *
Nvidia-graphics-drivers-418-server Ubuntu esm-apps/bionic *
Nvidia-graphics-drivers-418-server Ubuntu esm-apps/focal *
Nvidia-graphics-drivers-418-server Ubuntu focal *
Nvidia-graphics-drivers-418-server Ubuntu impish *
Nvidia-graphics-drivers-418-server Ubuntu jammy *
Nvidia-graphics-drivers-430 Ubuntu bionic *
Nvidia-graphics-drivers-430 Ubuntu esm-infra/bionic *
Nvidia-graphics-drivers-430 Ubuntu focal *
Nvidia-graphics-drivers-430 Ubuntu impish *
Nvidia-graphics-drivers-430 Ubuntu jammy *
Nvidia-graphics-drivers-430 Ubuntu kinetic *
Nvidia-graphics-drivers-430 Ubuntu lunar *
Nvidia-graphics-drivers-430 Ubuntu mantic *
Nvidia-graphics-drivers-435 Ubuntu bionic *
Nvidia-graphics-drivers-435 Ubuntu esm-apps/jammy *
Nvidia-graphics-drivers-435 Ubuntu esm-infra/bionic *
Nvidia-graphics-drivers-435 Ubuntu focal *
Nvidia-graphics-drivers-435 Ubuntu impish *
Nvidia-graphics-drivers-435 Ubuntu jammy *
Nvidia-graphics-drivers-435 Ubuntu kinetic *
Nvidia-graphics-drivers-435 Ubuntu lunar *
Nvidia-graphics-drivers-435 Ubuntu mantic *
Nvidia-graphics-drivers-440 Ubuntu bionic *
Nvidia-graphics-drivers-440 Ubuntu esm-infra/bionic *
Nvidia-graphics-drivers-440 Ubuntu focal *
Nvidia-graphics-drivers-440 Ubuntu impish *
Nvidia-graphics-drivers-440 Ubuntu jammy *
Nvidia-graphics-drivers-440 Ubuntu kinetic *
Nvidia-graphics-drivers-440 Ubuntu lunar *
Nvidia-graphics-drivers-440 Ubuntu mantic *
Nvidia-graphics-drivers-440-server Ubuntu bionic *
Nvidia-graphics-drivers-440-server Ubuntu esm-apps/bionic *
Nvidia-graphics-drivers-440-server Ubuntu esm-apps/focal *
Nvidia-graphics-drivers-440-server Ubuntu esm-apps/jammy *
Nvidia-graphics-drivers-440-server Ubuntu focal *
Nvidia-graphics-drivers-440-server Ubuntu impish *
Nvidia-graphics-drivers-440-server Ubuntu jammy *
Nvidia-graphics-drivers-440-server Ubuntu kinetic *
Nvidia-graphics-drivers-440-server Ubuntu lunar *
Nvidia-graphics-drivers-450 Ubuntu bionic *
Nvidia-graphics-drivers-450 Ubuntu esm-infra/bionic *
Nvidia-graphics-drivers-450 Ubuntu focal *
Nvidia-graphics-drivers-450 Ubuntu impish *
Nvidia-graphics-drivers-450 Ubuntu jammy *
Nvidia-graphics-drivers-450 Ubuntu kinetic *
Nvidia-graphics-drivers-450 Ubuntu lunar *
Nvidia-graphics-drivers-450 Ubuntu mantic *
Nvidia-graphics-drivers-450-server Ubuntu bionic *
Nvidia-graphics-drivers-450-server Ubuntu focal *
Nvidia-graphics-drivers-450-server Ubuntu impish *
Nvidia-graphics-drivers-450-server Ubuntu jammy *
Nvidia-graphics-drivers-455 Ubuntu bionic *
Nvidia-graphics-drivers-455 Ubuntu esm-apps/bionic *
Nvidia-graphics-drivers-455 Ubuntu esm-apps/focal *
Nvidia-graphics-drivers-455 Ubuntu focal *
Nvidia-graphics-drivers-455 Ubuntu impish *
Nvidia-graphics-drivers-455 Ubuntu jammy *
Nvidia-graphics-drivers-455 Ubuntu kinetic *
Nvidia-graphics-drivers-455 Ubuntu lunar *
Nvidia-graphics-drivers-455 Ubuntu mantic *
Nvidia-graphics-drivers-460 Ubuntu bionic *
Nvidia-graphics-drivers-460 Ubuntu esm-infra/bionic *
Nvidia-graphics-drivers-460 Ubuntu focal *
Nvidia-graphics-drivers-460 Ubuntu impish *
Nvidia-graphics-drivers-460 Ubuntu jammy *
Nvidia-graphics-drivers-460 Ubuntu kinetic *
Nvidia-graphics-drivers-460 Ubuntu lunar *
Nvidia-graphics-drivers-460 Ubuntu mantic *
Nvidia-graphics-drivers-460-server Ubuntu bionic *
Nvidia-graphics-drivers-460-server Ubuntu esm-infra/bionic *
Nvidia-graphics-drivers-460-server Ubuntu focal *
Nvidia-graphics-drivers-460-server Ubuntu impish *
Nvidia-graphics-drivers-470 Ubuntu bionic *
Nvidia-graphics-drivers-470 Ubuntu focal *
Nvidia-graphics-drivers-470 Ubuntu impish *
Nvidia-graphics-drivers-470 Ubuntu jammy *
Nvidia-graphics-drivers-470-server Ubuntu bionic *
Nvidia-graphics-drivers-470-server Ubuntu focal *
Nvidia-graphics-drivers-470-server Ubuntu impish *
Nvidia-graphics-drivers-470-server Ubuntu jammy *
Nvidia-graphics-drivers-510 Ubuntu bionic *
Nvidia-graphics-drivers-510 Ubuntu focal *
Nvidia-graphics-drivers-510 Ubuntu impish *
Nvidia-graphics-drivers-510 Ubuntu jammy *
Nvidia-graphics-drivers-510-server Ubuntu bionic *
Nvidia-graphics-drivers-510-server Ubuntu focal *
Nvidia-graphics-drivers-510-server Ubuntu impish *
Nvidia-graphics-drivers-510-server Ubuntu jammy *

Extended Description

The use of previously-freed memory can have any number of adverse consequences, ranging from the corruption of valid data to the execution of arbitrary code, depending on the instantiation and timing of the flaw. The simplest way data corruption may occur involves the system’s reuse of the freed memory. Use-after-free errors have two common and sometimes overlapping causes:

In this scenario, the memory in question is allocated to another pointer validly at some point after it has been freed. The original pointer to the freed memory is used again and points to somewhere within the new allocation. As the data is changed, it corrupts the validly used memory; this induces undefined behavior in the process. If the newly allocated data happens to hold a class, in C++ for example, various function pointers may be scattered within the heap data. If one of these function pointers is overwritten with an address to valid shellcode, execution of arbitrary code can be achieved.

Potential Mitigations

References