CVE-2026-52937
tap: fix stack info leak in tap_ioctl() SIOCGIFHWADDR
Description
In the Linux kernel, the following vulnerability has been resolved: tap: fix stack info leak in tap_ioctl() SIOCGIFHWADDR In the SIOCGIFHWADDR path, tap_ioctl() copies 16 bytes of an uninitialised on-stack struct sockaddr_storage to userspace via ifr_hwaddr, but netif_get_mac_address() only writes sa_family and dev->addr_len (6 for Ethernet) bytes, leaving sa_data[6..13] uninitialised. Those 8 trailing bytes leak kernel stack contents; SIOCGIFHWADDR on a macvtap chardev returns kernel .text and direct-map pointers, defeating KASLR. Initialise ss at declaration.
INFO
Published Date :
June 24, 2026, 8:16 a.m.
Last Modified :
July 8, 2026, 7:22 p.m.
Remotely Exploit :
No
Source :
416baaa9-dc9f-4396-8d5f-8c081fb06d67
CVSS Scores
| Score | Version | Severity | Vector | Exploitability Score | Impact Score | Source |
|---|---|---|---|---|---|---|
| CVSS 3.1 | MEDIUM | [email protected] |
Solution
- Initialize the struct sockaddr_storage at declaration.
- Apply the provided patch to the Linux kernel.
- Recompile and deploy the updated kernel.
Public PoC/Exploit Available at Github
CVE-2026-52937 has a 1 public
PoC/Exploit available at Github.
Go to the Public Exploits tab to see the list.
References to Advisories, Solutions, and Tools
Here, you will find a curated list of external links that provide in-depth
information, practical solutions, and valuable tools related to
CVE-2026-52937.
CWE - Common Weakness Enumeration
While CVE identifies
specific instances of vulnerabilities, CWE categorizes the common flaws or
weaknesses that can lead to vulnerabilities. CVE-2026-52937 is
associated with the following CWEs:
Common Attack Pattern Enumeration and Classification (CAPEC)
Common Attack Pattern Enumeration and Classification
(CAPEC)
stores attack patterns, which are descriptions of the common attributes and
approaches employed by adversaries to exploit the CVE-2026-52937
weaknesses.
We scan GitHub repositories to detect new proof-of-concept exploits. Following list is a collection of public exploits and proof-of-concepts, which have been published on GitHub (sorted by the most recently updated).
None
Python
Results are limited to the first 15 repositories due to potential performance issues.
The following list is the news that have been mention
CVE-2026-52937 vulnerability anywhere in the article.
The following table lists the changes that have been made to the
CVE-2026-52937 vulnerability over time.
Vulnerability history details can be useful for understanding the evolution of a vulnerability, and for identifying the most recent changes that may impact the vulnerability's severity, exploitability, or other characteristics.
-
Initial Analysis by [email protected]
Jul. 08, 2026
Action Type Old Value New Value Added CVSS V3.1 AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H Added CWE CWE-401 Added CPE Configuration OR *cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* versions from (including) 5.10.21 up to (excluding) 5.11 *cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* versions from (including) 5.4.103 up to (excluding) 5.5 *cpe:2.3:o:linux:linux_kernel:7.1:rc1:*:*:*:*:*:* *cpe:2.3:o:linux:linux_kernel:7.1:rc2:*:*:*:*:*:* *cpe:2.3:o:linux:linux_kernel:7.1:rc3:*:*:*:*:*:* *cpe:2.3:o:linux:linux_kernel:7.1:rc4:*:*:*:*:*:* *cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* versions from (including) 6.19 up to (excluding) 7.0.11 *cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* versions from (including) 5.11.4 up to (excluding) 6.18.34 Added Reference Type kernel.org: https://git.kernel.org/stable/c/05305e832be7b9d65b2b72caacf7d850b3942b2a Types: Patch Added Reference Type kernel.org: https://git.kernel.org/stable/c/719007c3492f0f1f9e9cdbed8ac45ba45bb13eeb Types: Patch Added Reference Type kernel.org: https://git.kernel.org/stable/c/bddc09212c24934643bd44fc794748d2bbb3b6cd Types: Patch -
New CVE Received by 416baaa9-dc9f-4396-8d5f-8c081fb06d67
Jun. 24, 2026
Action Type Old Value New Value Added Affected [{'repo': 'https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git', 'vendor': 'Linux', 'product': 'Linux', 'versions': [{'status': 'affected', 'version': '3b23a32a63219f51a5298bc55a65ecee866e79d0', 'lessThan': '719007c3492f0f1f9e9cdbed8ac45ba45bb13eeb', 'versionType': 'git'}, {'status': 'affected', 'version': '3b23a32a63219f51a5298bc55a65ecee866e79d0', 'lessThan': '05305e832be7b9d65b2b72caacf7d850b3942b2a', 'versionType': 'git'}, {'status': 'affected', 'version': '3b23a32a63219f51a5298bc55a65ecee866e79d0', 'lessThan': 'bddc09212c24934643bd44fc794748d2bbb3b6cd', 'versionType': 'git'}, {'status': 'affected', 'version': '176188cff67ec1aa55103647b61d02315cc38e98', 'versionType': 'git'}, {'status': 'affected', 'version': '1fc205d9e400f069ebf30d3faa6ec2bab2cbd7b4', 'versionType': 'git'}, {'status': 'affected', 'version': '4d0ae760c02c98fc78b78d3a0509896bc648ad1c', 'versionType': 'git'}, {'status': 'affected', 'version': '5.4.103', 'lessThan': '5.5', 'versionType': 'semver'}, {'status': 'affected', 'version': '5.10.21', 'lessThan': '5.11', 'versionType': 'semver'}, {'status': 'affected', 'version': '5.11.4', 'lessThan': '5.12', 'versionType': 'semver'}], 'programFiles': ['drivers/net/tap.c'], 'defaultStatus': 'unaffected'}, {'repo': 'https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git', 'vendor': 'Linux', 'product': 'Linux', 'versions': [{'status': 'affected', 'version': '5.12'}, {'status': 'unaffected', 'version': '0', 'lessThan': '5.12', 'versionType': 'semver'}, {'status': 'unaffected', 'version': '6.18.34', 'versionType': 'semver', 'lessThanOrEqual': '6.18.*'}, {'status': 'unaffected', 'version': '7.0.11', 'versionType': 'semver', 'lessThanOrEqual': '7.0.*'}, {'status': 'unaffected', 'version': '7.1', 'versionType': 'original_commit_for_fix', 'lessThanOrEqual': '*'}], 'programFiles': ['drivers/net/tap.c'], 'defaultStatus': 'affected'}] Added Description In the Linux kernel, the following vulnerability has been resolved: tap: fix stack info leak in tap_ioctl() SIOCGIFHWADDR In the SIOCGIFHWADDR path, tap_ioctl() copies 16 bytes of an uninitialised on-stack struct sockaddr_storage to userspace via ifr_hwaddr, but netif_get_mac_address() only writes sa_family and dev->addr_len (6 for Ethernet) bytes, leaving sa_data[6..13] uninitialised. Those 8 trailing bytes leak kernel stack contents; SIOCGIFHWADDR on a macvtap chardev returns kernel .text and direct-map pointers, defeating KASLR. Initialise ss at declaration. Added Reference https://git.kernel.org/stable/c/05305e832be7b9d65b2b72caacf7d850b3942b2a Added Reference https://git.kernel.org/stable/c/719007c3492f0f1f9e9cdbed8ac45ba45bb13eeb Added Reference https://git.kernel.org/stable/c/bddc09212c24934643bd44fc794748d2bbb3b6cd