CVE-2026-64093
batman-adv: tp_meter: directly shut down timer on cleanup
Description
In the Linux kernel, the following vulnerability has been resolved: batman-adv: tp_meter: directly shut down timer on cleanup batadv_tp_sender_cleanup() was calling timer_delete_sync() followed by timer_delete() to guard against the timer handler re-arming itself between the two calls. This double-deletion hack relied on the sending status being set to 0 to suppress re-arming. Replace both calls with a single timer_shutdown_sync(). This function both waits for any running timer callback to complete (like timer_delete_sync()) and permanently disarms the timer so it cannot be re-armed afterwards, making re-arming prevention unconditional and self-documenting. The re-arming property is also required because otherwise: 1. context 0 (batadv_tp_recv_ack()) checks in batadv_tp_reset_sender_timer() if sending is still 1 -> it is 2. context 1 changes in batadv_tp_sender_shutdown() sending to 0 and in this process forces the kthread to stop timer in batadv_tp_sender_cleanup() 3. context 0 continues in batadv_tp_reset_sender_timer() and rearms the timer -> but the reference for it is already gone
INFO
Published Date :
July 19, 2026, 4:17 p.m.
Last Modified :
Aug. 11, 2026, 3:53 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 | HIGH | 416baaa9-dc9f-4396-8d5f-8c081fb06d67 |
Solution
- Apply the Linux kernel update.
- Ensure batman-adv module is configured correctly.
- Verify timer shutdown synchronization.
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-64093.
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-64093 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-64093
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-64093 vulnerability anywhere in the article.
The following table lists the changes that have been made to the
CVE-2026-64093 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 NVD-CWE-noinfo Added CPE Configuration OR *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) 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) 4.8 up to (excluding) 5.15.210 Added Reference Type kernel.org: https://git.kernel.org/stable/c/00bf4bb9947b1190a8be8d9b6a1bcbfa3707785c Types: Patch Added Reference Type kernel.org: https://git.kernel.org/stable/c/5bc2d50fb66b46f86543d5153a188eb1486d0b6e Types: Patch Added Reference Type kernel.org: https://git.kernel.org/stable/c/74a76634055462833446684fd526d73c290ea43a Types: Patch Added Reference Type kernel.org: https://git.kernel.org/stable/c/770bf0a35f0620b526fd4193889d1e77084e4c43 Types: Patch Added Reference Type kernel.org: https://git.kernel.org/stable/c/933880a8bc9b4042223a79255c0b1021cdc36991 Types: Patch Added Reference Type kernel.org: https://git.kernel.org/stable/c/d5487249a81ea658717614009c8f46acc5b7101a Types: Patch Added Reference Type kernel.org: https://git.kernel.org/stable/c/f86b20ec8d17d77bddc02c5c86cfa2389d84ecff Types: Patch -
CVE Modified by 416baaa9-dc9f-4396-8d5f-8c081fb06d67
Jul. 20, 2026
Action Type Old Value New Value Added CVSS V3.1 AV:A/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': '33a3bb4a3345bb511f9c69c913da95d4693e2a4e', 'lessThan': '00bf4bb9947b1190a8be8d9b6a1bcbfa3707785c', 'versionType': 'git'}, {'status': 'affected', 'version': '33a3bb4a3345bb511f9c69c913da95d4693e2a4e', 'lessThan': '74a76634055462833446684fd526d73c290ea43a', 'versionType': 'git'}, {'status': 'affected', 'version': '33a3bb4a3345bb511f9c69c913da95d4693e2a4e', 'lessThan': '5bc2d50fb66b46f86543d5153a188eb1486d0b6e', 'versionType': 'git'}, {'status': 'affected', 'version': '33a3bb4a3345bb511f9c69c913da95d4693e2a4e', 'lessThan': 'f86b20ec8d17d77bddc02c5c86cfa2389d84ecff', 'versionType': 'git'}, {'status': 'affected', 'version': '33a3bb4a3345bb511f9c69c913da95d4693e2a4e', 'lessThan': '770bf0a35f0620b526fd4193889d1e77084e4c43', 'versionType': 'git'}, {'status': 'affected', 'version': '33a3bb4a3345bb511f9c69c913da95d4693e2a4e', 'lessThan': '933880a8bc9b4042223a79255c0b1021cdc36991', 'versionType': 'git'}, {'status': 'affected', 'version': '33a3bb4a3345bb511f9c69c913da95d4693e2a4e', 'lessThan': 'd5487249a81ea658717614009c8f46acc5b7101a', 'versionType': 'git'}], 'programFiles': ['net/batman-adv/tp_meter.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.8'}, {'status': 'unaffected', 'version': '0', 'lessThan': '4.8', 'versionType': 'semver'}, {'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/tp_meter.c'], 'defaultStatus': 'affected'}] Added Description In the Linux kernel, the following vulnerability has been resolved: batman-adv: tp_meter: directly shut down timer on cleanup batadv_tp_sender_cleanup() was calling timer_delete_sync() followed by timer_delete() to guard against the timer handler re-arming itself between the two calls. This double-deletion hack relied on the sending status being set to 0 to suppress re-arming. Replace both calls with a single timer_shutdown_sync(). This function both waits for any running timer callback to complete (like timer_delete_sync()) and permanently disarms the timer so it cannot be re-armed afterwards, making re-arming prevention unconditional and self-documenting. The re-arming property is also required because otherwise: 1. context 0 (batadv_tp_recv_ack()) checks in batadv_tp_reset_sender_timer() if sending is still 1 -> it is 2. context 1 changes in batadv_tp_sender_shutdown() sending to 0 and in this process forces the kthread to stop timer in batadv_tp_sender_cleanup() 3. context 0 continues in batadv_tp_reset_sender_timer() and rearms the timer -> but the reference for it is already gone Added Reference https://git.kernel.org/stable/c/00bf4bb9947b1190a8be8d9b6a1bcbfa3707785c Added Reference https://git.kernel.org/stable/c/5bc2d50fb66b46f86543d5153a188eb1486d0b6e Added Reference https://git.kernel.org/stable/c/74a76634055462833446684fd526d73c290ea43a Added Reference https://git.kernel.org/stable/c/770bf0a35f0620b526fd4193889d1e77084e4c43 Added Reference https://git.kernel.org/stable/c/933880a8bc9b4042223a79255c0b1021cdc36991 Added Reference https://git.kernel.org/stable/c/d5487249a81ea658717614009c8f46acc5b7101a Added Reference https://git.kernel.org/stable/c/f86b20ec8d17d77bddc02c5c86cfa2389d84ecff