CVE-2024-36971

HIGH(7.8)KEV

Android Kernel Remote Code Execution Vulnerability

Beschreibung

CVE-2024-36971 ist eine Elevation-of-Privilege-Schwachstelle im Linux-Kernel (Android-Kernel), die durch eine Race Condition in der Netzwerk-Subsystem-Funktion __dst_negative_advice() verursacht wird. Mit einem CVSS-Score von 7.8 (HIGH) ermöglicht die Schwachstelle einem lokal authentifizierten Angreifer, durch eine Use-After-Free-Bedingung SYSTEM-Rechte zu erlangen. Betroffen sind zahlreiche Linux-Kernel-Versionen ab 4.6 sowie Debian Linux 10.0. Die CISA hat die Schwachstelle in den KEV-Katalog aufgenommen, was aktive Ausnutzung auf Android-Geräten bestätigt. Der EPSS-Score liegt bei 0,60 % (69,0. Perzentil).

KEV-Informationen

Hersteller
Android
Produkt
Kernel
Hinzugefügt am
7. August 2024
Fälligkeitsdatum
28. August 2024
Erforderliche Maßnahme
Apply mitigations per vendor instructions or discontinue use of the product if mitigations are unavailable.

CVSS-Score

Vektorstring
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:HIm Rechner öffnen
Angriffsvektor
LOCAL
Angriffskomplexität
LOW
Erforderliche Privilegien
LOW
Benutzerinteraktion
NONE
Scope
UNCHANGED
Vertraulichkeitsauswirkung
HIGH
Integritätsauswirkung
HIGH
Verfügbarkeitsauswirkung
HIGH
Ausnutzbarkeitsscore
1.8
Auswirkungsscore
5.9

CWEs

Betroffene Produkte

HerstellerProduktVersion
debiandebian linux10.0
linuxlinux kernel>= 4.6, < 4.19.316; >= 4.20, < 5.4.278; >= 5.5, < 5.10.219; >= 5.11, < 5.15.161; >= 5.16, < 6.1.94; >= 6.2, < 6.6.34; >= 6.7, < 6.9.4

Mehrere CVSS-Bewertungen

Quelle: [email protected](Primary)
7.8
HIGH

CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H

Quelle: 134c704f-9b21-4f2e-91b3-4a467353bcc0(Secondary)
7.8
HIGH

CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H

Referenzen

Schwachstellentyp

Obwohl kein spezifischer CWE offiziell zugewiesen wurde, handelt es sich bei CVE-2024-36971 um eine Use-After-Free (UAF)-Schwachstelle, die durch eine Race Condition im Netzwerk-Subsystem des Linux-Kernels ausgelöst wird. Die Funktion __dst_negative_advice() implementiert die RCU (Read-Copy-Update)-Regeln bei der Bereinigung des Destination-Cache (sk->dst_cache) nicht korrekt. Die korrekte Reihenfolge erfordert, dass zuerst sk->sk_dst_cache geleert und erst danach dst_release(old_dst) aufgerufen wird. Wenn diese Reihenfolge nicht eingehalten wird, kann ein paralleler Thread auf ein bereits freigegebenes Destination-Objekt zugreifen, was zu einer Use-After-Free-Bedingung führt. Mehr erfahren: CWE-416 (Use After Free) bei MITRE

Auswirkungsanalyse

Die Auswirkungen von CVE-2024-36971 betreffen alle drei Schutzziele der Informationssicherheit mit hohem Schweregrad. Vertraulichkeit: Durch die Erlangung von Kernel-Rechten kann ein Angreifer auf sämtliche Daten des Systems zugreifen, einschließlich geschützter Speicherbereiche, Kryptographie-Schlüssel und Anmeldeinformationen anderer Benutzer. Integrität: Kernel-Level-Zugriff ermöglicht die Manipulation beliebiger Systemkomponenten, die Installation von Rootkits und das Umgehen aller Sicherheitsmechanismen. Verfügbarkeit: Der Angreifer kann das System destabilisieren, Dienste beenden oder den Kernel zum Absturz bringen. Die Schwachstelle ist besonders relevant im Android-Kontext, wo sie in den KEV-Katalog aufgenommen wurde. Auf Android-Geräten kann die Ausnutzung zu einem vollständigen Device-Rooting führen, wodurch Sicherheitsmechanismen wie SE Linux, App-Sandboxing und Verified Boot umgangen werden. Der EPSS-Score von 0,60 % (69,0. Perzentil) ist im Vergleich zu anderen KEV-Schwachstellen moderat, was auf die komplexere Ausnutzung einer Kernel-Race-Condition zurückzuführen ist. Der Ransomware-Status wird als "Unbekannt" geführt, jedoch sind Kernel-Exploits auf Android ein bevorzugtes Werkzeug für Spyware und Advanced Persistent Threats.

Exploit-Reifegrad

CVE-2024-36971 wurde in den CISA Known Exploited Vulnerabilities (KEV) Katalog aufgenommen, mit einer Behebungsfrist bis zum 28. August 2024. Die aktive Ausnutzung zielt primär auf Android-Geräte ab, wobei die Schwachstelle auch alle betroffenen Linux-Kernel-Versionen auf Server- und Desktop-Systemen betrifft. Der EPSS-Score liegt bei 0,60 % (69,0. Perzentil), was eine moderate Ausnutzungswahrscheinlichkeit anzeigt. Die niedrigere Einstufung im Vergleich zu anderen KEV-Schwachstellen erklärt sich durch die Notwendigkeit einer lokalen Ausführung und die Komplexität der Race-Condition-Ausnutzung im Kernel. Mehrere Kernel-Patches sind öffentlich auf git.kernel.org verfügbar, was detaillierte technische Informationen zur Schwachstelle und deren Behebung liefert. Die Verfügbarkeit dieser Patch-Diffs erleichtert die Entwicklung von Exploits. Der Ransomware-Status wird als "Unbekannt" geführt.

Behebung

  1. Kernel-Update auf gepatchte Version installieren: Aktualisieren Sie den Linux-Kernel auf eine der folgenden behobenen Versionen: 4.19.316, 5.4.278, 5.10.219, 5.15.161, 6.1.94, 6.6.34 oder 6.9.4 (je nach genutztem Kernel-Branch). Die Patches sind auf git.kernel.org verfügbar.

  2. Android-Geräte aktualisieren: Für Android-Geräte installieren Sie die neuesten Sicherheitsupdates des Geräteherstellers. Google hat den Fix in die Android-Sicherheitsbulletins aufgenommen. Prüfen Sie die Verfügbarkeit unter Einstellungen > System > Sicherheitsupdates.

  3. Debian-Systeme patchen: Für Debian Linux 10.0 ist der Fix über die Debian LTS-Sicherheitsupdates verfügbar. Führen Sie apt update && apt upgrade aus und installieren Sie den aktualisierten Kernel. Weitere Informationen finden Sie in der Debian LTS-Ankündigung.

  4. Systeme auf Kompromittierung prüfen: Untersuchen Sie betroffene Systeme auf Anzeichen einer Kernel-Level-Kompromittierung. Achten Sie auf ungewöhnliche Kernel-Module (lsmod), verdächtige Netzwerkverbindungen im Zusammenhang mit dem Destination-Cache und unerklärliche Kernel-Oops-Meldungen in den System-Logs.

  5. Netzwerk-Stack-Monitoring aktivieren: Implementieren Sie ein erweitertes Monitoring für Netzwerk-Stack-Anomalien, insbesondere für ungewöhnliche Destination-Cache-Operationen und verdächtige Socket-Aktivitäten. Nutzen Sie Tools wie ftrace oder eBPF-Programme, um Kernel-Funktionsaufrufe im Netzwerk-Subsystem zu überwachen.

Technische Details

Der CVSS v3.1-Vektor für CVE-2024-36971 lautet CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H mit einem Gesamtscore von 7.8 (HIGH). Angriffsvektor (AV:L): Die Ausnutzung erfordert lokalen Zugriff auf das System, etwa über eine installierte App auf Android oder einen lokalen Benutzeraccount auf Linux-Systemen. Angriffskomplexität (AC:L): Trotz der Race-Condition-Natur der Schwachstelle wird die Komplexität als niedrig eingestuft, da die Bedingungen zuverlässig herstellbar sind. Erforderliche Berechtigungen (PR:L): Niedrige Berechtigungen genügen als Ausgangspunkt. Benutzerinteraktion (UI:N): Keine Benutzerinteraktion ist erforderlich. Die Schwachstelle liegt in der Funktion __dst_negative_advice() im Linux-Kernel-Netzwerk-Subsystem. Diese Funktion wird aufgerufen, wenn negative Routing-Hinweise verarbeitet werden — also wenn der Kernel erkennt, dass eine zuvor gültige Netzwerk-Route nicht mehr funktioniert. Das Problem: Beim Zurücksetzen des Destination-Cache eines Sockets (sk->dst_cache) wird die alte Destination-Referenz freigegeben (dst_release), bevor der Pointer auf NULL gesetzt wird. In einem Multi-Thread-Szenario kann ein anderer Thread in diesem kurzen Zeitfenster den alten, bereits freigegebenen Pointer dereferenzieren. Die korrekte Implementierung, wie sie in sk_dst_reset() vorhanden ist, setzt zuerst den Pointer zurück und gibt erst danach die Referenz frei. Der Fix korrigiert diese Reihenfolge und stellt die RCU-Konformität sicher. Betroffen sind Kernel-Versionen ab 4.6, in der die fehlerhafte Logik eingeführt wurde.

Häufig gestellte Fragen

Was ist eine Use-After-Free-Schwachstelle im Linux-Kernel?

Eine Use-After-Free (UAF) Schwachstelle tritt auf, wenn ein Programm auf Speicher zugreift, der bereits freigegeben wurde. Im Linux-Kernel ist dies besonders gefährlich, da der Kernel mit höchsten Privilegien ausgeführt wird. Ein Angreifer kann den freigegebenen Speicher mit eigenen Daten füllen und dadurch die Kontrolle über den Kernel erlangen.

Sind nur Android-Geräte von CVE-2024-36971 betroffen?

Nein, die Schwachstelle betrifft den Linux-Kernel allgemein, nicht nur die Android-Variante. Alle Linux-Systeme mit Kernel-Versionen ab 4.6 bis zu den jeweiligen gepatchten Versionen sind verwundbar. Die KEV-Aufnahme erfolgte primär wegen bestätigter Ausnutzung auf Android-Geräten, aber Linux-Server und Desktop-Systeme sind gleichermaßen betroffen.

Was ist der Destination Cache im Linux-Kernel?

Der Destination Cache (dst_cache) ist eine Kernel-Datenstruktur, die Routing-Informationen für Netzwerk-Sockets zwischenspeichert. Er speichert den optimalen Netzwerkpfad für eine Verbindung, um wiederholte Routing-Lookups zu vermeiden. Die Schwachstelle liegt in der fehlerhaften Bereinigung dieses Caches.

Wie kann ich prüfen, ob mein Kernel betroffen ist?

Prüfen Sie Ihre Kernel-Version mit dem Befehl "uname -r". Betroffene Versionen sind: 4.6 bis 4.19.315, 4.20 bis 5.4.277, 5.5 bis 5.10.218, 5.11 bis 5.15.160, 5.16 bis 6.1.93, 6.2 bis 6.6.33 und 6.7 bis 6.9.3. Aktualisieren Sie auf die jeweils nächste Minor-Version, um den Fix zu erhalten.

CVSS-Score

7.8
HIGH(7.8)

EPSS-Score

EPSS-Score2.70%
EPSS-Perzentil84.7%

Daten

Veröffentlicht10. Juni 2024
Zuletzt geändert17. Juni 2026
StatusAnalyzed
CVSS-Versionv3.1

Hilfe beim Schwachstellenmanagement?

Unsere Sicherheitsexperten helfen Ihnen bei der Priorisierung und Behebung von Schwachstellen.