mac80211: Potential Double Free on Mesh Join
Summary
GSD-2022-1002379: mac80211: fix potential double free on mesh join. Affects Kernel versions >= 37bccfa89559a70c044b5ccde3c916a91388e14a, < 273ebddc5fda2967492cb0b6cdd7d81cfb821b76. 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 mac80211 package is a subsystem in the Linux Kernel that provides the implementation of the IEEE 802.11 wireless networking stack. It is responsible for managing wireless network interfaces, including mesh networking. Mesh networking allows devices to form a self-configuring network where each device can act as a router, forwarding packets for other devices. This functionality is crucial for creating large-scale wireless networks with extended coverage.
However, a vulnerability has been discovered in mac80211 that could lead to a potential double free on mesh join. A double free vulnerability occurs when a program attempts to free the same memory address twice, which can result in memory corruption and potentially lead to a system crash or arbitrary code execution. In the context of mac80211, this vulnerability could be exploited by an attacker within range of a vulnerable device participating in a mesh network.
Vulnerability Detail
The vulnerability in mac80211 arises from a potential double free on mesh join. When a device joins a mesh network, the mac80211 subsystem may attempt to free memory associated with the mesh join process. However, due to a programming error, this memory may be freed twice, leading to memory corruption.
An attacker within range of a vulnerable device participating in a mesh network could potentially exploit this vulnerability to execute arbitrary code or crash the system. The exact impact and attack vectors have not yet been proven, but the potential for serious consequences exists.
This vulnerability was introduced in Linux Kernel version v4.19.137 and is fixed in version v4.19.237 by commit 273ebddc5fda2967492cb0b6cdd7d81cfb821b76.
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 →
Conclusion
The mac80211 package in the Linux Kernel is vulnerable to a potential double free on mesh join. This vulnerability could allow an attacker within range to execute arbitrary code or crash the system. It is recommended to update the Linux Kernel to version v4.19.237 or later to mitigate this vulnerability. Users can also use the Vulert Playground to check if their system is affected by this vulnerability. For further support on vulnerability remediation, please contact DevNack.com.
See every vulnerability recorded for Kernel →
FAQ
mac80211 is a subsystem in the Linux Kernel that provides the implementation of the IEEE 802.11 wireless networking stack. It is responsible for managing wireless network interfaces, including mesh networking.
Mesh networking is a network topology where devices can form a self-configuring network, with each device capable of acting as a router. This allows for extended coverage and improved resilience in wireless networks.
A double free vulnerability occurs when a program attempts to free the same memory address twice. This can lead to memory corruption and potentially enable an attacker to execute arbitrary code or crash the system.
An attacker within range of a vulnerable device participating in a mesh network could potentially exploit this vulnerability to execute arbitrary code or crash the system. However, the exact attack vectors have not yet been proven.
You can use the Vulert Playground (https://vulert.com/scanner) to check if your system is affected by this vulnerability. Simply upload your package-lock.json file, and Vulert will alert you in real-time for any open-source vulnerabilities in your software.
Related vulnerabilities
Recent vulnerabilities recorded for Kernel.