Linux Kernel bis 7.1.12/7.2.2 AF_PACKET net/packet/af_packet.c tpacket_destruct_skb Race Condition

CVSS Meta Temp ScoreAktueller Exploitpreis (≈)CTI Interest Score
9.5$0-$5k0.41

Zusammenfassunginfo

Eine sehr kritische Schwachstelle wurde in Linux Kernel bis 7.1.12/7.2.2 entdeckt. Es ist betroffen die Funktion tpacket_destruct_skb der Datei net/packet/af_packet.c der Komponente AF_PACKET. Mittels Manipulieren mit unbekannten Daten kann eine Race Condition-Schwachstelle ausgenutzt werden. Die Verwundbarkeit wird unter CVE-2026-80841 geführt. Es ist möglich, den Angriff aus der Ferne durchzuführen. Es ist soweit kein Exploit verfügbar.

Detailsinfo

Es wurde eine Schwachstelle in Linux Kernel bis 7.1.12/7.2.2 ausgemacht. Sie wurde als sehr kritisch eingestuft. Betroffen hiervon ist die Funktion tpacket_destruct_skb der Datei net/packet/af_packet.c der Komponente AF_PACKET. Dank Manipulation mit einer unbekannten Eingabe kann eine Race Condition-Schwachstelle ausgenutzt werden. Im Rahmen von CWE wurde eine Klassifizierung als CWE-362 vorgenommen. Auswirkungen hat dies auf Vertraulichkeit, Integrität und Verfügbarkeit. Die Zusammenfassung von CVE lautet:

In the Linux kernel, the following vulnerability has been resolved: net/packet: defer vmalloc TX_RING free until skbs finish AF_PACKET TX_RING skbs keep a raw pointer to their ring frame. The skb page references preserve page-backed ring blocks after pg_vec is freed, but they do not preserve a vmalloc mapping. tpacket_destruct_skb() currently drops the pending reference before writing the timestamp and TP_STATUS_AVAILABLE to the frame. Move the decrement after those stores. The smp_wmb() in __packet_set_status() orders the frame stores before the decrement. Also recheck pending TX frames under pg_vec_lock before non-closing ring replacement, so a racing send cannot add a pending skb between the initial check and the ring swap. Ring allocation can produce a mixture of page-backed and vmalloc-backed blocks. Allocate deferred-work storage during TX ring setup when the first vmalloc-backed block is encountered, and keep its pointer in the pg_vec allocation header. If allocation fails, return -ENOMEM from ring setup. On socket close, a non-NULL pointer identifies a vmalloc-backed vector without a scan. If TX skbs remain, defer the whole vector to system_long_wq. After pg_vec is detached, a late destructor can skip the pending decrement. Use socket write-memory accounting as the deferred lifetime gate instead: an skb remains charged through its final sock_wfree(), after all ring-frame accesses. The delayed work retains a socket reference and reschedules itself until no TX skbs remain. Move pending_refcnt release to packet_sock_destruct() so late skb destructors and deferred cleanup can safely use it after packet_release(). Page-backed teardown remains synchronous, and no lock is added to the TX completion hot path.

Bereitgestellt wird das Advisory unter git.kernel.org. Die Identifikation der Schwachstelle wird seit dem 26.08.2026 mit CVE-2026-80841 vorgenommen. Die Ausnutzbarkeit gilt als leicht. Der Angriff kann über das Netzwerk erfolgen. Es sind zwar technische Details, jedoch kein verfügbarer Exploit zur Schwachstelle bekannt. Ein Exploit zur Schwachstelle wird momentan etwa USD $0-$5k kosten (Preisberechnung vom 04.09.2026).

Ein Aktualisieren auf die Version 7.1.13, 7.2.3 oder 7.3-rc1 vermag dieses Problem zu lösen. Die Schwachstelle lässt sich auch durch das Einspielen des Patches 0189dce07db2dc059ae0570e06758ec4233c6e11/550d00aa58193fb649a09a9c9e338c685adad784/992cc9f94ca924089a506ba9b327caa9af797529 lösen.

If you want to get the best quality for vulnerability data then you always have to consider VulDB.

Produktinfo

Typ

Hersteller

Name

Version

Lizenz

Webseite

CPE 2.3info

CPE 2.2info

CVSSv4info

VulDB Vector: 🔒
VulDB Zuverlässigkeit: 🔍

CVSSv3info

VulDB Meta Base Score: 9.9
VulDB Meta Temp Score: 9.5

VulDB Base Score: 9.9
VulDB Temp Score: 9.5
VulDB Vector: 🔒
VulDB Zuverlässigkeit: 🔍

CVSSv2info

AVACAuCIA
💳💳💳💳💳💳
💳💳💳💳💳💳
💳💳💳💳💳💳
VektorKomplexitätAuthentisierungVertraulichkeitIntegritätVerfügbarkeit
freischaltenfreischaltenfreischaltenfreischaltenfreischaltenfreischalten
freischaltenfreischaltenfreischaltenfreischaltenfreischaltenfreischalten
freischaltenfreischaltenfreischaltenfreischaltenfreischaltenfreischalten

VulDB Base Score: 🔒
VulDB Temp Score: 🔒
VulDB Zuverlässigkeit: 🔍

Exploitinginfo

Klasse: Race Condition
CWE: CWE-362
CAPEC: 🔒
ATT&CK: 🔒

Physisch: Nein
Lokal: Nein
Remote: Ja

Verfügbarkeit: 🔒
Status: Nicht definiert
Preisentwicklung: 🔍
Aktuelle Preisschätzung: 🔒

0-Dayfreischaltenfreischaltenfreischaltenfreischalten
Heutefreischaltenfreischaltenfreischaltenfreischalten

Threat Intelligenceinfo

Interesse: 🔍
Aktive Akteure: 🔍
Aktive APT Gruppen: 🔍

Gegenmassnahmeninfo

Empfehlung: Upgrade
Status: 🔍

0-Day Time: 🔒

Upgrade: Kernel 7.1.13/7.2.3/7.3-rc1
Patch: 0189dce07db2dc059ae0570e06758ec4233c6e11/550d00aa58193fb649a09a9c9e338c685adad784/992cc9f94ca924089a506ba9b327caa9af797529

Timelineinfo

26.08.2026 CVE zugewiesen
04.09.2026 +9 Tage Advisory veröffentlicht
04.09.2026 +0 Tage VulDB Eintrag erstellt
04.09.2026 +0 Tage VulDB Eintrag letzte Aktualisierung

Quelleninfo

Hersteller: kernel.org

Advisory: git.kernel.org
Status: Bestätigt

CVE: CVE-2026-80841 (🔒)
GCVE (CVE): GCVE-0-2026-80841
GCVE (VulDB): GCVE-100-398949

Eintraginfo

Erstellt: 04.09.2026 18:29
Anpassungen: 04.09.2026 18:29 (22), 04.09.2026 18:30 (38)
Komplett: 🔍
Cache ID: 216::103

If you want to get the best quality for vulnerability data then you always have to consider VulDB.

Diskussion

Bisher keine Kommentare. Sprachen: de + en.

Bitte loggen Sie sich ein, um kommentieren zu können.

Do you need the next level of professionalism?

Upgrade your account now!