CVE-2026-64091
batman-adv: tt: fix TOCTOU race for reported vlans
Description
In the Linux kernel, the following vulnerability has been resolved: batman-adv: tt: fix TOCTOU race for reported vlans The local TT based TVLV is generated by first checking the number of VLANs which have at least one TT entry. A new buffer with the correct size for the VLANs is then allocated. Only then, the list of VLANs s used to fill the VLAN entries in the buffer. During this time, the meshif_vlan_list_lock is held. But the actual number of TT entries of each VLAN can still increase during this time - just not the number of VLANs in the list. But the prefilter used in the buffer size calculation might still cause an increase of the number of VLANs which need to be stored. Simply because a VLAN might now suddenly have at least one entry when it had none in the pre-alloc check - and then needs to occupy space which was not allocated. It is better to overestimate the buffer size at the beginning and then fill the buffer only with the VLANs which are not empty.
INFO
Published Date :
July 19, 2026, 4:17 p.m.
Last Modified :
Aug. 11, 2026, 3:36 p.m.
Remotely Exploit :
Yes !
Source :
416baaa9-dc9f-4396-8d5f-8c081fb06d67
CVSS Scores
| Score | Version | Severity | Vector | Exploitability Score | Impact Score | Source |
|---|---|---|---|---|---|---|
| CVSS 3.1 | CRITICAL | 416baaa9-dc9f-4396-8d5f-8c081fb06d67 |
Solution
- Update the Linux kernel to a version with the fix.
- Ensure meshif_vlan_list_lock protects VLAN updates.
- Overestimate buffer size for VLAN entries.
- Fill buffer with non-empty VLANs only.
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-64091.
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-64091 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-64091
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).
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-64091 vulnerability anywhere in the article.
The following table lists the changes that have been made to the
CVE-2026-64091 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]
Aug. 11, 2026
Action Type Old Value New Value Added CWE CWE-367 Added CPE Configuration OR *cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* versions from (including) 3.16.60 up to (excluding) 3.17 *cpe:2.3:o:linux:linux_kernel:4.17:-:*:*:*:*:*:* *cpe:2.3:o:linux:linux_kernel:4.17:rc7:*:*:*:*:*:* *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.13 up to (excluding) 6.18.34 *cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* versions from (including) 4.4.217 up to (excluding) 4.5 *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.16 up to (excluding) 6.1.176 *cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* versions from (including) 6.2 up to (excluding) 6.6.143 *cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* versions from (including) 6.7 up to (excluding) 6.12.93 *cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* versions from (including) 5.11 up to (excluding) 5.15.210 *cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* versions from (including) 4.14.174 up to (excluding) 4.15 *cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* versions from (including) 4.17.1 up to (excluding) 5.10.259 *cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* versions from (including) 4.9.217 up to (excluding) 4.10 Added Reference Type kernel.org: https://git.kernel.org/stable/c/211ea59988e1cba43cb0367ad65d379b56f9c3bd Types: Patch Added Reference Type kernel.org: https://git.kernel.org/stable/c/4cc85aec8d3c9ab4dc716dc9f1ed36fca16b227f Types: Patch Added Reference Type kernel.org: https://git.kernel.org/stable/c/65a1e67339aa8c95ac544b796946af388930ee23 Types: Patch Added Reference Type kernel.org: https://git.kernel.org/stable/c/724a8eb4155669797c96b70d70e354284ae3b5a8 Types: Patch Added Reference Type kernel.org: https://git.kernel.org/stable/c/94d27005016be15ffc638b2ecbc4d58805ad7b48 Types: Patch Added Reference Type kernel.org: https://git.kernel.org/stable/c/9a9c859457bc440a55773e01ff18b1bb5bab6836 Types: Patch Added Reference Type kernel.org: https://git.kernel.org/stable/c/b4d4efd4e351593c81e9293d4b4408d244fa5ee7 Types: Patch Added Reference Type kernel.org: https://git.kernel.org/stable/c/e4236bf3ec8d6bb15d0d8d825dcf9933a7d6666b Types: Patch -
CVE Modified by 416baaa9-dc9f-4396-8d5f-8c081fb06d67
Jul. 20, 2026
Action Type Old Value New Value Added CVSS V3.1 AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H -
New CVE Received by 416baaa9-dc9f-4396-8d5f-8c081fb06d67
Jul. 19, 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': '16116dac23396e73c01eeee97b102e4833a4b205', 'lessThan': 'e4236bf3ec8d6bb15d0d8d825dcf9933a7d6666b', 'versionType': 'git'}, {'status': 'affected', 'version': '16116dac23396e73c01eeee97b102e4833a4b205', 'lessThan': '724a8eb4155669797c96b70d70e354284ae3b5a8', 'versionType': 'git'}, {'status': 'affected', 'version': '16116dac23396e73c01eeee97b102e4833a4b205', 'lessThan': '211ea59988e1cba43cb0367ad65d379b56f9c3bd', 'versionType': 'git'}, {'status': 'affected', 'version': '16116dac23396e73c01eeee97b102e4833a4b205', 'lessThan': '65a1e67339aa8c95ac544b796946af388930ee23', 'versionType': 'git'}, {'status': 'affected', 'version': '16116dac23396e73c01eeee97b102e4833a4b205', 'lessThan': 'b4d4efd4e351593c81e9293d4b4408d244fa5ee7', 'versionType': 'git'}, {'status': 'affected', 'version': '16116dac23396e73c01eeee97b102e4833a4b205', 'lessThan': '4cc85aec8d3c9ab4dc716dc9f1ed36fca16b227f', 'versionType': 'git'}, {'status': 'affected', 'version': '16116dac23396e73c01eeee97b102e4833a4b205', 'lessThan': '9a9c859457bc440a55773e01ff18b1bb5bab6836', 'versionType': 'git'}, {'status': 'affected', 'version': '16116dac23396e73c01eeee97b102e4833a4b205', 'lessThan': '94d27005016be15ffc638b2ecbc4d58805ad7b48', 'versionType': 'git'}, {'status': 'affected', 'version': '3134c5a32810c510f1f447c135cec346acbb71c3', 'versionType': 'git'}, {'status': 'affected', 'version': 'e861e03a1b5b615ad1b57b1802b17e260eedccfe', 'versionType': 'git'}, {'status': 'affected', 'version': '0b81edc8818903c64c4d121bc51cd5825be8cc67', 'versionType': 'git'}, {'status': 'affected', 'version': '90ae6475b1753f0c1a4c66034b5666de3189fac8', 'versionType': 'git'}, {'status': 'affected', 'version': '3.16.60', 'lessThan': '3.17', 'versionType': 'semver'}, {'status': 'affected', 'version': '4.4.217', 'lessThan': '4.5', 'versionType': 'semver'}, {'status': 'affected', 'version': '4.9.217', 'lessThan': '4.10', 'versionType': 'semver'}, {'status': 'affected', 'version': '4.14.174', 'lessThan': '4.15', 'versionType': 'semver'}], 'programFiles': ['net/batman-adv/translation-table.c'], 'defaultStatus': 'unaffected'}, {'repo': 'https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git', 'vendor': 'Linux', 'product': 'Linux', 'versions': [{'status': 'affected', 'version': '4.17'}, {'status': 'unaffected', 'version': '0', 'lessThan': '4.17', 'versionType': 'semver'}, {'status': 'unaffected', 'version': '5.10.259', 'versionType': 'semver', 'lessThanOrEqual': '5.10.*'}, {'status': 'unaffected', 'version': '5.15.210', 'versionType': 'semver', 'lessThanOrEqual': '5.15.*'}, {'status': 'unaffected', 'version': '6.1.176', 'versionType': 'semver', 'lessThanOrEqual': '6.1.*'}, {'status': 'unaffected', 'version': '6.6.143', 'versionType': 'semver', 'lessThanOrEqual': '6.6.*'}, {'status': 'unaffected', 'version': '6.12.93', 'versionType': 'semver', 'lessThanOrEqual': '6.12.*'}, {'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': ['net/batman-adv/translation-table.c'], 'defaultStatus': 'affected'}] Added Description In the Linux kernel, the following vulnerability has been resolved: batman-adv: tt: fix TOCTOU race for reported vlans The local TT based TVLV is generated by first checking the number of VLANs which have at least one TT entry. A new buffer with the correct size for the VLANs is then allocated. Only then, the list of VLANs s used to fill the VLAN entries in the buffer. During this time, the meshif_vlan_list_lock is held. But the actual number of TT entries of each VLAN can still increase during this time - just not the number of VLANs in the list. But the prefilter used in the buffer size calculation might still cause an increase of the number of VLANs which need to be stored. Simply because a VLAN might now suddenly have at least one entry when it had none in the pre-alloc check - and then needs to occupy space which was not allocated. It is better to overestimate the buffer size at the beginning and then fill the buffer only with the VLANs which are not empty. Added Reference https://git.kernel.org/stable/c/211ea59988e1cba43cb0367ad65d379b56f9c3bd Added Reference https://git.kernel.org/stable/c/4cc85aec8d3c9ab4dc716dc9f1ed36fca16b227f Added Reference https://git.kernel.org/stable/c/65a1e67339aa8c95ac544b796946af388930ee23 Added Reference https://git.kernel.org/stable/c/724a8eb4155669797c96b70d70e354284ae3b5a8 Added Reference https://git.kernel.org/stable/c/94d27005016be15ffc638b2ecbc4d58805ad7b48 Added Reference https://git.kernel.org/stable/c/9a9c859457bc440a55773e01ff18b1bb5bab6836 Added Reference https://git.kernel.org/stable/c/b4d4efd4e351593c81e9293d4b4408d244fa5ee7 Added Reference https://git.kernel.org/stable/c/e4236bf3ec8d6bb15d0d8d825dcf9933a7d6666b