Linux Kernel: Use-After-Free (CVE-2026-80849)
Veröffentlicht Zuletzt geändert Quellen: HKCERT, Ubuntu, Debian LTS, Debian, BSI, CVE.org, EUVD
Was ist betroffen, was ist zu tun
Im Linux-Kernel wurde die folgende Schwachstelle behoben: net/tcp-ao: Behebung des Use-After-Free von current_key bei erneuter Verbindung zu einem anderen Peer tcp_inbound_ao_hash() wird aufgerufen, bevor bh_lock_sock_nested() übernommen wird und nur rcu_read_lock() gehalten wird. Auf dem schnellen Pfad für etablierte Sockets, wenn der rnext_keyid vom Peer von current_key->sndid abweicht, wird die gesuchte Schlüssel des Peers gefunden und in current_key gespeichert.
Aktualisieren Sie Linux Kernel auf Version 6.12.108, Linux Kernel auf Version 6.18.49, Linux Kernel auf Version 7.1.13.
- Betroffen
- Linux Kernel
lt 6.7..6.12.108 - Linux Kernel
lt 6.13..6.18.49 - Linux Kernel
lt 6.19..7.1.13 - Linux Kernel
lt 7.2..7.2.3
- Linux Kernel
- Behoben in
- Linux Kernel
6.12.108 - Linux Kernel
6.18.49 - Linux Kernel
7.1.13 - Linux Kernel
7.2.3 - Linux Kernel
7.3
- Linux Kernel
Unklar, ob und wie Sie betroffen sind? Frage zu dieser Schwachstelle stellen
Metriken
—
XIEM Effective CVSS
Für diese Schwachstelle liegt kein Wert vor.
0,0
CVSS v3
Schweregrad Ohne Bewertung auf der Skala von 0 bis 10.
Quelle: HKCERT, Ubuntu, Debian LTS, Debian, BSI, CVE.org, EUVD
0,2 %
EPSS-Score
Niedrig – Modell schätzt < 1 % Ausnutzungs-Wahrscheinlichkeit.
Quelle: FIRST EPSS, Perzentil 6,2
Alle Metriken anzeigen
- Schweregrad
- Ohne Bewertung
Priorität (0–325)
Der Priorisierungs-Score ist eine zusammengeführte Kennzahl, die mehrere Einzelsignale zu einer einzigen, handlungsleitenden Rangfolge verdichtet: technische Schwere (CVSS), Ausnutzungswahrscheinlichkeit (EPSS), der Status als bekannt ausgenutzt (KEV) und der Kontext des betroffenen Assets. Ziel ist die Antwort auf die einzig wirklich wichtige Frage im Schwachstellenmanagement: Was zuerst?
Im Glossar lesen- 24.16 Methodik
Exploit-Reife
Ein Exploit ist Code oder eine Technik, die eine konkrete Schwachstelle gezielt ausnutzt, um ein unbeabsichtigtes Verhalten zu erzwingen — etwa Code auszuführen oder Rechte auszuweiten. Er ist das Werkzeug, das aus einer theoretischen Lücke einen praktischen Angriff macht.
Im Glossar lesen- kein öffentlicher PoC bekannt
CVSS v3
CVSS ist der weltweit verbreitete, offene Standard zur Bewertung der technischen Schwere einer Schwachstelle auf einer Skala von 0 bis 10. Er beschreibt, wie leicht eine Lücke ausnutzbar ist und welchen Schaden sie anrichten kann — nicht jedoch, wie wahrscheinlich ihre tatsächliche Ausnutzung ist. CVSS und das ergänzende EPSS beantworten bewusst unterschiedliche Fragen.
Im Glossar lesen- 0,0
EPSS-Score
Der EPSS-Score ist der absolute Modell-Output für eine einzelne Schwachstelle: die geschätzte Wahrscheinlichkeit einer realen Ausnutzung in den nächsten 30 Tagen, ausgedrückt als Wert zwischen 0 und 1 (bzw. 0 % bis 100 %). Ein Score von 0,42 bedeutet „das Modell schätzt eine 42-prozentige Chance auf reale Ausnutzung binnen 30 Tagen“.
Im Glossar lesen- 0,2 %
- Niedrig – Modell schätzt < 1 % Ausnutzungs-Wahrscheinlichkeit.
EPSS-Perzentil
Das EPSS-Perzentil ist die relative Einordnung einer Schwachstelle innerhalb aller EPSS-bewerteten CVEs, ausgedrückt als Wert zwischen 0 und 1. Ein Perzentil von 0,90 bedeutet „diese CVE hat einen höheren EPSS-Score als 90 % aller anderen bewerteten CVEs“. Anders als der EPSS-Score ist es keine Wahrscheinlichkeit — sondern eine Positionierung im Ranking.
Im Glossar lesen- 6,2
- Niedrig – CVE gehört zu den unteren 10 % der heute bewerteten CVEs.
KEV-Status
Der KEV-Katalog ist eine von der US-Behörde CISA gepflegte Liste von Schwachstellen, für die eine aktive Ausnutzung in der Praxis nachgewiesen ist. Er beantwortet nicht die Frage „wie schwer?“, sondern „wird es bereits angegriffen?“ — und priorisiert damit das Patchen scharf.
Im Glossar lesen- —
- Veröffentlicht
Erkennungsregeln
Für diese Schwachstelle liegt noch keine NEOSEC-Erkennungsregel vor.
Einordnung nach NIS2 und CRA
Regelbasierte Einordnung aus Ausnutzungsstatus und Schweregrad. Sie ersetzt keine Prüfung im Einzelfall.
NIS2
NIS2 ist die EU-Richtlinie (EU) 2022/2555 zur Erhöhung des Cybersicherheitsniveaus in der Union. Sie weitet Pflichten gegenüber der ersten NIS-Richtlinie deutlich aus: mehr Sektoren, verbindliches Risikomanagement, gestufte Meldepflichten und persönliche Verantwortung der Geschäftsleitung.
Im Glossar lesen- Behandeln Sie die Schwachstelle im regulären Schwachstellenmanagement nach Art. 21 Abs. 2 lit. e NIS2.
CRA
Der CRA ist die EU-Verordnung (EU) 2024/2847 mit horizontalen Cybersicherheitsanforderungen an „Produkte mit digitalen Elementen“ — von Industriesteuerungen über Software bis zu vernetzten Verbrauchergeräten. Erstmals müssen Hersteller Sicherheit über den gesamten Produktlebenszyklus gewährleisten, Schwachstellen behandeln und Sicherheitsupdates bereitstellen.
Im Glossar lesen- Ab dem 11.12.2027 verpflichtet Anhang I Teil II CRA Hersteller betroffener Produkte mit digitalen Elementen, Schwachstellen unverzüglich zu behandeln und Sicherheitsupdates bereitzustellen.
ISO/IEC 27001
ISO/IEC 27001 ist der international führende Standard für ein Informationssicherheits-Managementsystem (ISMS). Er beschreibt einen risikobasierten, prozessorientierten Rahmen, um Informationssicherheit systematisch zu planen, umzusetzen, zu überprüfen und zu verbessern.
Im Glossar lesen- Maßnahme A.8.8, Management technischer Schwachstellen: Relevanz für Ihre Systeme bewerten, Behebung einplanen und nachweisen.
Beschreibung
Im Linux-Kernel wurde die folgende Schwachstelle behoben: net/tcp-ao: Behebung des Use-After-Free von current_key bei erneuter Verbindung zu einem anderen Peer tcp_inbound_ao_hash() wird aufgerufen, bevor bh_lock_sock_nested() übernommen wird und nur rcu_read_lock() gehalten wird. Auf dem schnellen Pfad für etablierte Sockets, wenn der rnext_keyid vom Peer von current_key->sndid abweicht, wird die gesuchte Schlüssel des Peers gefunden und in current_key gespeichert. Die Suche erfolgt innerhalb des RCU-Lesebereichs, aber current_key überlebt diesen. Wenn die Socket getrennt ist und connect() erneut für einen anderen Peer aufgerufen wird, entfernt tcp_ao_connect_init() jeden Schlüssel, der nicht mit dem neuen Peer übereinstimmt, und gibt ihn mit call_rcu() frei. Wenn current_key auf einen solchen Schlüssel zeigt, wird es auf NULL gesetzt. Der schnelle Pfad liest sk_state nur einmal beim Eintreten, sodass ein Softirq, der während des etablierten Zustands der Socket in den Pfad gelangt, current_key nachdem die Schleife bereits gelaufen ist aktualisieren kann. Die Aktualisierung erfolgt innerhalb des RCU-Lesebereichs, so dass sie vor dem call_rcu()-Callback kommt und sobald das Callback den Schlüssel freigibt, zeigt current_key auf freigegebene Speicher. Die nächste Übertragung nimmt diesen Zeiger in tcp_get_current_key() auf. tcp_ao_transmit_skb() liest dann den Verkehrs-Schlüssel aus dem freigegebenen Objekt, was das Use-After-Free ist. Warten Sie eine Grace-Periode, bevor ein Schlüssel entfernt wird und nur wenn ein Schlüssel tatsächlich entfernt werden soll. Wenn tcp_connect() ausgeführt wird, befindet sich die Socket bereits in TCP_SYN_SENT, und TCP_AO_ESTABLISHED enthält nicht TCPF_SYN_SENT, sodass ein Softirq nach dem Warten den schnellen Pfad nicht erreichen kann und diejenigen, die bereits darin sind, fertig sind. Die bestehende NULL-Handhabung in der Schleife ist dann ausreichend.
Quelle: HKCERT (CC BY 3.0 HK) · HKCERT-Einstufung: mittel, Ubuntu Security Notices, Debian LTS Advisories, Debian Security Advisories, BSI WID Portal, BSI CSAF, cvelistv5, ENISA EUVD, NVD (NIST), CVE.org (MITRE)
Betroffene Produkte
Betroffen sind die folgenden Versionen. Ältere Stände derselben Reihe sind ebenfalls verwundbar, sofern nicht anders angegeben.
| Betroffene Versionen | Behoben in | ||
|---|---|---|---|
| Linux | Linux |
|
|
| Red Hat | OpenShift |
|
|
Hersteller und Produkte
Betroffene Betriebssysteme
| Linux | debian | linux | trixie |
| Linux | ubuntu | linux | noble |
| Linux | ubuntu | linux | resolute |
| Linux | debian | linux-6.12 | bookworm |
| Linux | ubuntu | linux-aws | noble |
| Linux | ubuntu | linux-aws | resolute |
| Linux | ubuntu | linux-aws-6.8 | jammy |
| Linux | ubuntu | linux-aws-7.0 | noble |
| Linux | ubuntu | linux-aws-fips | noble |
| Linux | ubuntu | linux-azure | noble |
| Linux | ubuntu | linux-azure | resolute |
| Linux | ubuntu | linux-azure-6.8 | jammy |
| Linux | ubuntu | linux-azure-fde | noble |
| Linux | ubuntu | linux-azure-fde | resolute |
| Linux | ubuntu | linux-azure-fde-6.8 | jammy |
| Linux | ubuntu | linux-azure-fde-7.0 | noble |
| Linux | ubuntu | linux-azure-fips | noble |
| Linux | ubuntu | linux-gcp | noble |
| Linux | ubuntu | linux-gcp | resolute |
| Linux | ubuntu | linux-gcp-6.8 | jammy |
| Linux | ubuntu | linux-gcp-7.0 | noble |
| Linux | ubuntu | linux-gcp-fips | noble |
| Linux | ubuntu | linux-gke | noble |
| Linux | ubuntu | linux-gke | resolute |
Quellen & Referenzen
- git.kernel.orgstable/c/84a93b4e012587d0a4a84ffb23ec6da18e9d85f9euvd
- git.kernel.orgstable/c/73fde8fe4469f4ed8f0afcc0b9d6413002a9e6b3euvd
- git.kernel.orgstable/c/e54ad693eddb40c595add013f545354c538e325beuvd
- git.kernel.orgstable/c/2857dcbd03cf3354af0fba1b65c6a260fb43811aeuvd
- git.kernel.orgstable/c/da4471557f279d0f56605158a625bb6e49ef7d41euvd
Änderungen an der CVE
Wer diese CVE wann geändert hat: die NVD (Analyse, betroffene Produkte, CVSS), der Herausgeber der CVE (CNA) und ergänzende Stellen wie CISA (ADP).
Eintrag geändertLinux
1 Einzeländerung: Betroffene Versionen (Herausgeber)
Einzeländerung im Original anzeigen
Einzeländerungen dieses Ereignisses im Original der NVD Art Aktion Vorher Nachher Betroffene Versionen (Herausgeber) ergänzt —Affected value modified. <a href="https://github.com/CVEProject/cvelistV5/blob/main/cves/2026/80xxx/CVE-2026-80849.json">CVE-2026-80849</a>Kennung der Quelle: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
Neu erfasstLinux
Beschreibung erfasst oder geändert
Neue Referenzen:- https://git.kernel.org/stable/c/2857dcbd03cf3354af0fba1b65c6a260fb43811a
- https://git.kernel.org/stable/c/73fde8fe4469f4ed8f0afcc0b9d6413002a9e6b3
- https://git.kernel.org/stable/c/84a93b4e012587d0a4a84ffb23ec6da18e9d85f9
- https://git.kernel.org/stable/c/da4471557f279d0f56605158a625bb6e49ef7d41
und 1 weitere Referenz
7 Einzeländerungen im Original anzeigen
Einzeländerungen dieses Ereignisses im Original der NVD Art Aktion Vorher Nachher Beschreibung ergänzt —In the Linux kernel, the following vulnerability has been resolved: net/tcp-ao: fix use-after-free of current_key on reconnect to another peer tcp_inbound_ao_hash() is called before bh_lock_sock_nested() is taken, with only rcu_read_lock() held. On the fast path for established sockets, if the rnext_keyid sent by the peer differs from current_key->sndid, the key the peer asked for is looked up and stored in current_key. The lookup is inside the RCU read side, but current_key outlives it. When the socket is disconnected and connect() is called again for another peer, tcp_ao_connect_init() unlinks every key that does not match the new peer and frees it with call_rcu(). If current_key points at such a key, it is cleared to NULL. The fast path reads sk_state only once on entry, so a softirq that got into it while the socket was still established can update current_key after that loop has already run. The update is inside the RCU read side, so it comes before the call_rcu() callback, and once the callback frees the key, current_key is left pointing at freed memory. The next transmission picks that pointer up in tcp_get_current_key(). tcp_ao_transmit_skb() then reads the traffic key from the freed object, which is the use-after-free. Wait for one grace period before unlinking, and only if a key is going to be removed. By the time tcp_connect() runs the socket is already in TCP_SYN_SENT, and TCP_AO_ESTABLISHED does not contain TCPF_SYN_SENT, so a softirq entering after the wait cannot reach the fast path, and the ones already in it have finished. The existing NULL handling in the loop is then enough.Betroffene Versionen (Herausgeber) ergänzt —New affected value received. <a href="https://github.com/CVEProject/cvelistV5/blob/main/cves/2026/80xxx/CVE-2026-80849.json">CVE-2026-80849</a>Referenz ergänzt —https://git.kernel.org/stable/c/2857dcbd03cf3354af0fba1b65c6a260fb43811aReferenz ergänzt —https://git.kernel.org/stable/c/73fde8fe4469f4ed8f0afcc0b9d6413002a9e6b3Referenz ergänzt —https://git.kernel.org/stable/c/84a93b4e012587d0a4a84ffb23ec6da18e9d85f9Referenz ergänzt —https://git.kernel.org/stable/c/da4471557f279d0f56605158a625bb6e49ef7d41Referenz ergänzt —https://git.kernel.org/stable/c/e54ad693eddb40c595add013f545354c538e325bKennung der Quelle: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
Badge einbetten
Zeigen Sie Schweregrad und KEV-Status dieser Schwachstelle auf Ihrer Seite – mit Link hierher. Das Bild wird stündlich aktualisiert.
<a href="https://intel.neosec.eu/cve/CVE-2026-80849"><img src="https://intel.neosec.eu/badge/cve/CVE-2026-80849.svg" alt="CVE-2026-80849 – NEOSEC Intel" height="20"></a>