CVE-2024-26895
No source can show you its own past. This one can.
Print this page to keep the view as it stands on this date. Everything hidden behind a disclosure opens, and every receipt prints with its value.
wifi: wilc1000: prevent use-after-free on vif when cleaning up all interfaces
rank 27 = 0 + 20 + 0 + 7 + 0
rank@v1 · scheduled
Someone is already using it
CISA KEV catalog · public proof-of-concept · FIRST EPSS
EPSS 0.00237 · without this subject the record ranks 27
What it costs you if it fires
NVD CVSS base score, then the CNA's own
CVSS 7.8, from NVD · without this subject the record ranks 7
It is getting worse, not staying still
FIRST EPSS series, rescorings and bad loads removed
no persisting rise in 365 days · without this subject the record ranks 27
How much of the world it touches
NVD CPE configurations
7 products in the CPE ranges · without this subject the record ranks 20
Someone else already set the date
CISA KEV remediation due date
no CISA due date · without this subject the record ranks 27
Hindsight · the state
Foresight · where to check next
This record is one instance of CWE-416, use after free. The index holds 9292 prior instances of this class, 106 KEV-listed. The nearest of its KEV-listed records are drawn beside this. taxonomy@v1
Running Linux? Check your version
A deterministic range check against the ranges this record publishes. It tells you where a version sits in the record, not whether your deployment is exploitable. No account needed.
Watch this record
Matches your own product list against every record this index holds, and tells you when one of them moves.
Set up a watchlist (free with an account: one stack of three products)
Record your call
Keep your verdict, your reason and the evidence together. The record takes its date when you save it.
Or open an investigation: an incident or a near miss on this CVE, kept with its evidence where anyone in your organisation can find it.
Choose your verdict, then sign in or use an email link. Your first 100 records are free. Evidence is frozen when the record is created.
Private to your organization unless you share it. Put the proof link in your ticket so a reviewer can inspect the basis for your call. See how decision records work.
Harm, if it fires from the vector and the weakness
Written for the ticket you're about to file.
CISA KEV & Federal Remediation Deadline from the record and CISA
The fix, and how long it's been waiting.
Show full BOD 26-04 deadline
CISA has not scored it, so the directive's own defaults apply: automatable no, technical impact total. Calendar days from the KEV listing or from when you find it on a system, whichever is first. Federal agencies are bound from 7 Dec 2026, and contracts often carry it to suppliers. The directive and its table
Exploit Status & Known PoCs a ladder, not a score
Current rung: Nothing observed in held sources.
- RUNG 1Nothing observed in held sources
- RUNG 2Proof-of-concept published
- RUNG 3Exploited in the wild · CISA KEV listed
- RUNG 4Ransomware campaign use known
Affected & Fixed Versions as published
Show all 7 published ranges
A rung lights from a row in the index, never from an assessment. "Held sources" is the true scope of the claim: this index reads the CVE record, NVD, CISA KEV, FIRST's EPSS and public proof-of-concept repositories, and it does not observe attacks.
$11,800 = $4.99M incident cost x 1 exposure x 0.00237 likelihood
udv@v1 · unaudited · wrong for you until you say what you run
$4.99M is the cost of a breach that happened, from IBM Cost of a Data Breach Report 2026, global average. It is not the value of any asset of yours. That average already covers breaches of every severity, so scaling it by exposure understates a partial-impact record. That is an assumption, not a measurement. Your own asset value goes in the decision record.
What it is stated by the CNA
In the Linux kernel, the following vulnerability has been resolved: wifi: wilc1000: prevent use-after-free on vif when cleaning up all interfaces wilc_netdev_cleanup currently triggers a KASAN warning, which can be observed on interface registration error path, or simply by removing the module/unbinding device from driver: echo spi0.1 > /sys/bus/spi/drivers/wilc1000_spi/unbind ================================================================== BUG: KASAN: slab-use-after-free in wilc_netdev_cleanup+0x508/0x5cc Read of size 4 at addr c54d1ce8 by task sh/86 CPU: 0 PID: 86 Comm: sh Not tainted 6.8.0-rc1+ #117 Hardware name: Atmel SAMA5 unwind_backtrace from show_stack+0x18/0x1c show_stack receipt
Read the rest of the CNA's description
from dump_stack_lvl+0x34/0x58 dump_stack_lvl from print_report+0x154/0x500 print_report from kasan_report+0xac/0xd8 kasan_report from wilc_netdev_cleanup+0x508/0x5cc wilc_netdev_cleanup from wilc_bus_remove+0xc8/0xec wilc_bus_remove from spi_remove+0x8c/0xac spi_remove from device_release_driver_internal+0x434/0x5f8 device_release_driver_internal from unbind_store+0xbc/0x108 unbind_store from kernfs_fop_write_iter+0x398/0x584 kernfs_fop_write_iter from vfs_write+0x728/0xf88 vfs_write from ksys_write+0x110/0x1e4 ksys_write from ret_fast_syscall+0x0/0x1c [...] Allocated by task 1: kasan_save_track+0x30/0x5c __kasan_kmalloc+0x8c/0x94 __kmalloc_node+0x1cc/0x3e4 kvmalloc_node+0x48/0x180 alloc_netdev_mqs+0x68/0x11dc alloc_etherdev_mqs+0x28/0x34 wilc_netdev_ifc_init+0x34/0x8ec wilc_cfg80211_init+0x690/0x910 wilc_bus_probe+0xe0/0x4a0 spi_probe+0x158/0x1b0 really_probe+0x270/0xdf4 __driver_probe_device+0x1dc/0x580 driver_probe_device+0x60/0x140 __driver_attach+0x228/0x5d4 bus_for_each_dev+0x13c/0x1a8 bus_add_driver+0x2a0/0x608 driver_register+0x24c/0x578 do_one_initcall+0x180/0x310 kernel_init_freeable+0x424/0x484 kernel_init+0x20/0x148 ret_from_fork+0x14/0x28 Freed by task 86: kasan_save_track+0x30/0x5c kasan_save_free_info+0x38/0x58 __kasan_slab_free+0xe4/0x140 kfree+0xb0/0x238 device_release+0xc0/0x2a8 kobject_put+0x1d4/0x46c netdev_run_todo+0x8fc/0x11d0 wilc_netdev_cleanup+0x1e4/0x5cc wilc_bus_remove+0xc8/0xec spi_remove+0x8c/0xac device_release_driver_internal+0x434/0x5f8 unbind_store+0xbc/0x108 kernfs_fop_write_iter+0x398/0x584 vfs_write+0x728/0xf88 ksys_write+0x110/0x1e4 ret_fast_syscall+0x0/0x1c [...] David Mosberger-Tan initial investigation [1] showed that this use-after-free is due to netdevice unregistration during vif list traversal. When unregistering a net device, since the needs_free_netdev has been set to true during registration, the netdevice object is also freed, and as a consequence, the corresponding vif object too, since it is attached to it as private netdevice data. The next occurrence of the loop then tries to access freed vif pointer to the list to move forward in the list. Fix this use-after-free thanks to two mechanisms: - navigate in the list with list_for_each_entry_safe, which allows to safely modify the list as we go through each element. For each element, remove it from the list with list_del_rcu - make sure to wait for RCU grace period end after each vif removal to make sure it is safe to free the corresponding vif too (through unregister_netdev) Since we are in a RCU "modifier" path (not a "reader" path), and because such path is expected not to be concurrent to any other modifier (we are using the vif_mutex lock), we do not need to use RCU list API, that's why we can benefit from list_for_each_entry_safe. [1] https://lore.kernel.org/linux-wireless/ab077dbe58b1ea5de0a3b2ca21f275a07af967d2.camel@egauge.net/
NVD's analysis a second authority
- severity
- 7.8 CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
- weakness
- CWE-416
- affected versions
- linux kernel >= 5.5 < 5.10.214; linux kernel >= 5.11 < 5.15.153; linux kernel >= 5.16 < 6.1.83; and 4 more, listed in full below
- also scored by
- 7.8 CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
check it yourself git.kernel.org git.kernel.org git.kernel.org git.kernel.org git.kernel.org git.kernel.org +1 morereceipt
Movement the material steps
Show all 12 observations
12 observations held. A highlighted step crossed a promotion threshold. A step marked with a scoring model moved because the instrument was replaced, not because the vulnerability changed. receipt
The full biography
The record had been public for 2 years, 5 months when this index was last written.
The pattern, elsewhere
This record is one instance of CWE-416, use after free. The index holds 9292 prior instances of this class, 106 KEV-listed. The nearest of its KEV-listed records are drawn beside this. cwe-consequences@4.20
"Matches n of m" counts the attributes the two records can both be compared on: the CVSS metrics they share a version of, any weakness class beyond this one, and the vendor. fit-rules@v1
9292 records in this class held. The six above are drawn from the ones CISA has listed as exploited, ranked by how much of the record matches this one. That is why every one of them is KEV-listed: the pool is, so the colour on those spokes says nothing the pool has not already said.
No curated product neighbourhood is held for this product, so the records above are the nearest this index can name. The neighbourhood table covers a small set of products and is extended by hand.
Siblings and hubs
Records related to this one
None. No alias set, and nothing in the corpus cites this identifier or shares its product family within 60 days.
Browse the index from here
These are index-wide views, not findings about CVE-2024-26895.
What usually comes next
Everything above needs no account. What is below is work: assembling it, scoping it to your estate, watching it, and handing it to someone else.