LiveActive security incident?Get immediate response
CVE Record

CVE-2021-47589: igbvf: fix double free in `igbvf_probe`

In the Linux kernel, the following vulnerability has been resolved: igbvf: fix double free in `igbvf_probe` In `igbvf_probe`, if register_netdev() fails, the program will go to label err_hw_init, and then to label err_ioremap. In free_netdev() which is just below label err_ioremap, there is `list_for_each_entry_safe` and `netif_napi_del` which aims to delete all entries in `dev->napi_list`. The program has added an entry `adapter->rx_ring->napi` which is added by `netif_napi_add` in igbvf_alloc_queues(). However, adapter->rx_ring has been freed below label err_hw_init. So this a UAF. In terms of how to patch the problem, we can refer to igbvf_remove() and delete the entry before `adapter->rx_ring`. The KASAN logs are as follows: [ 35.126075] BUG: KASAN: use-after-free in free_netdev+0x1fd/0x450 [ 35.127170] Read of size 8 at addr ffff88810126d990 by task modprobe/366 [ 35.128360] [ 35.128643] CPU: 1 PID: 366 Comm: modprobe Not tainted 5.15.0-rc2+ #14 [ 35.129789] Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS rel-1.12.0-59-gc9ba5276e321-prebuilt.qemu.org 04/01/2014 [ 35.131749] Call Trace: [ 35.132199] dump_stack_lvl+0x59/0x7b [ 35.132865] print_address_description+0x7c/0x3b0 [ 35.133707] ? free_netdev+0x1fd/0x450 [ 35.134378] __kasan_report+0x160/0x1c0 [ 35.135063] ? free_netdev+0x1fd/0x450 [ 35.135738] kasan_report+0x4b/0x70 [ 35.136367] free_netdev+0x1fd/0x450 [ 35.137006] igbvf_probe+0x121d/0x1a10 [igbvf] [ 35.137808] ? igbvf_vlan_rx_add_vid+0x100/0x100 [igbvf] [ 35.138751] local_pci_probe+0x13c/0x1f0 [ 35.139461] pci_device_probe+0x37e/0x6c0 [ 35.165526] [ 35.165806] Allocated by task 366: [ 35.166414] ____kasan_kmalloc+0xc4/0xf0 [ 35.167117] foo_kmem_cache_alloc_trace+0x3c/0x50 [igbvf] [ 35.168078] igbvf_probe+0x9c5/0x1a10 [igbvf] [ 35.168866] local_pci_probe+0x13c/0x1f0 [ 35.169565] pci_device_probe+0x37e/0x6c0 [ 35.179713] [ 35.179993] Freed by task 366: [ 35.180539] kasan_set_track+0x4c/0x80 [ 35.181211] kasan_set_free_info+0x1f/0x40 [ 35.181942] ____kasan_slab_free+0x103/0x140 [ 35.182703] kfree+0xe3/0x250 [ 35.183239] igbvf_probe+0x1173/0x1a10 [igbvf] [ 35.184040] local_pci_probe+0x13c/0x1f0

UnknownCVSS not scoredNot KEV-listedUpdated
Glexia's TakeAutomated analysisunknown

Security readout for executives and security teams

Plain-English summary

A Linux kernel network driver cleanup bug can trigger use-after-free during igbvf device probing after a registration failure. The public record does not provide CVSS, confirmed exploitation, or impact beyond kernel memory safety. Business urgency is mainly for environments using affected Linux kernels with Intel igbvf virtual function networking.

Executive priority

Moderate operational priority until local exposure is confirmed. Patch through normal kernel maintenance, escalating for hosts using igbvf in production virtualization. There is no source-backed evidence of active exploitation in the supplied bundle.

Technical view

CVE-2021-47589 is a Linux igbvf_probe error-path flaw. If register_netdev() fails, cleanup can free adapter->rx_ring before free_netdev() walks dev->napi_list, leaving adapter->rx_ring->napi as a stale entry and causing a KASAN-observed use-after-free. Stable kernel commits remove the NAPI entry before freeing rx_ring.

Likely exposure

Exposure appears limited to Linux systems running affected kernel versions with the igbvf driver path reachable, typically virtualized Intel gigabit network function environments. The bundle lists affected Linux kernel versions but does not map distribution package versions.

Exploitation context

The CVE record includes KASAN crash evidence from modprobe in QEMU, but no KEV listing and no cited source claiming active exploitation. Treat this as a kernel memory-safety defect with incomplete public exploitability evidence.

Researcher notes

The root cause is cleanup-order mismatch in the probe failure path: netif_napi_add creates a NAPI list entry tied to rx_ring, then rx_ring is freed before free_netdev removes NAPI entries. Evidence is strong for bug mechanics, weaker for real-world exploitability.

Mitigation direction

  • Update to a vendor Linux kernel containing the referenced stable fix or downstream equivalent.
  • Prioritize hosts that use Intel igbvf virtual function networking.
  • Consult Linux distribution advisories for exact package names and fixed builds.
  • If patching is delayed, check vendor guidance for supported interim controls.

Validation and detection

  • Inventory Linux kernel versions across virtualized and network-intensive systems.
  • Confirm whether igbvf is present, loaded, or required on candidate hosts.
  • Verify the running kernel includes one referenced stable fix or distributor backport.
  • Review crash logs for igbvf_probe, free_netdev, KASAN, or related probe failures.
Prepared
Confidence
medium
Sources
10

Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.

Potential ATT&CK relevance

Conservative CVE-to-ATT&CK context

These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.

ATT&CK lookup starting points

Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.

cve · low confidence lookup

CVE-2021-47589 mapping review

Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.

Open ATT&CK lookup
Vulnerability profileCVE Program record
Severity
Unknown
CVSS
Not scored
Known Exploited
No
Published
Official CVE source material

CNA and ADP enrichment extracted from CVE v5

These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.

0CVSS vectors
3Timeline events
2ADP providers
9Source links

SSVC decision data

CISA-ADPCISA Coordinator
Timestamp
Version
2.0.3
Exploitation: noneAutomatable: noTechnical Impact: partial

Vulnerability timeline

Timeline events are normalized from CVE metadata, CNA source timelines, ADP timelines, and KEV metadata when present.

  1. CVE reservedCVE Program

    The CVE ID was reserved by the assigning CNA.

  2. CVE publishedCVE Program

    The CVE record was published.

  3. CVE updatedCVE Program

    The CVE record metadata indicates this as the latest update time.

ADP provider summaries

CISA-ADPCISA ADP Vulnrichment
other:ssvc
CVECVE Program Container
Affected products

Products and packages named in the record

VendorProductVersion / packageStatus
LinuxLinuxd4e0fe01a38a073568aee541a0247fe734095979, d4e0fe01a38a073568aee541a0247fe734095979, d4e0fe01a38a073568aee541a0247fe734095979, d4e0fe01a38a073568aee541a0247fe734095979, d4e0fe01a38a073568aee541a0247fe734095979, d4e0fe01a38a073568aee541a0247fe734095979, d4e0fe01a38a073568aee541a0247fe734095979, d4e0fe01a38a073568aee541a0247fe734095979unaffected
LinuxLinux2.6.30, 0, 4.4.296, 4.9.294, 4.14.259, 4.19.222, 5.4.168, 5.10.88, 5.15.11, 5.16affected
Weakness

CWE details

No CWE listed

CWE links open Glexia weakness intelligence pages with official CWE context, developer remediation guidance, and related CVE mappings.