Vulnerability in Kernel: gve: Add NULL pointer checks when freeing irqs
Summary
GSD-2021-1000579: gve: Add NULL pointer checks when freeing irqs. Affects Kernel versions >= 893ce44df56580fb878ca5af9c4a5fd87567da50, < da21a35c00ff1a1794d4f166d3b3fa8db4d0f6fb. No fix is published. How to fix ↓
Check if this vulnerability affects your application
Upload a manifest or SBOM and we'll show whether you're affected, plus every other risky package in the same scan.
No signup required · Results in about 60 seconds
Background
The Kernel is a critical component of the Linux operating system that manages system resources and facilitates communication between hardware and software. It provides essential functionalities for the proper functioning of the system. The gve module within the Kernel is responsible for handling network virtualization and Ethernet device support. It allows for the creation of virtual network interfaces and manages their communication with physical network devices. This vulnerability specifically affects the gve module when freeing irqs, which are interrupt requests used to handle hardware events.
Vulnerability Detail
The vulnerability arises from a lack of NULL pointer checks when freeing irqs in the gve module. This oversight can lead to a NULL pointer dereference, causing the system to crash or potentially allowing an attacker to execute arbitrary code. The impact and attack plausibility of this vulnerability have not been proven yet, but it is crucial to address it to ensure system stability and security. The vulnerability was introduced in version v5.3 of the Linux Kernel and has been fixed in version v5.10.42.
How To Fix
No fixed version is published for this vulnerability.
Tip — Not sure whether your app is affected? Vulert can check the versions your app actually runs. Scan free →
Workaround
As this vulnerability has been fixed in the latest version of the Linux Kernel, applying the update is the recommended solution. However, if updating the Kernel is not immediately feasible, a potential workaround could involve implementing custom NULL pointer checks when freeing irqs in the gve module. Here is an example of how this workaround can be implemented in the code:
// Check for NULL pointer before freeing irqs
if (irqs != NULL) {
free_irqs(irqs);
}
Please note that this workaround is not a substitute for updating the Kernel and should only be considered as a temporary measure until the update can be applied.
Conclusion
In conclusion, the gve module in the Linux Kernel is vulnerable to a NULL pointer dereference when freeing irqs. This vulnerability can lead to system crashes or potential code execution by an attacker. It is crucial to update the Kernel to version v5.10.42 or later to fix this vulnerability. If immediate updating is not possible, implementing custom NULL pointer checks can serve as a temporary workaround. For further support on vulnerability remediation, please contact DevNack.com.
See every vulnerability recorded for Kernel →
FAQ
The Kernel is a critical component of the Linux operating system that manages system resources and facilitates communication between hardware and software.
The gve module is a part of the Linux Kernel that handles network virtualization and Ethernet device support. It allows for the creation of virtual network interfaces and manages their communication with physical network devices.
The impact of this vulnerability can range from system crashes due to NULL pointer dereference to potential execution of arbitrary code by an attacker.
To fix this vulnerability, it is recommended to update the Linux Kernel to version v5.10.42 or later, which includes the necessary fix for this issue.
While updating the Kernel is the recommended solution, a temporary workaround can involve implementing custom NULL pointer checks when freeing irqs in the gve module. However, this should only be considered as a temporary measure until the Kernel update can be applied.
Related vulnerabilities
Recent vulnerabilities recorded for Kernel.