CVE-2021-22555
Linux Kernel Heap Out-of-Bounds Write Vulnerability
Beschreibung
CVE-2021-22555 ist eine Heap-basierte Out-of-bounds-Write-Schwachstelle im Linux-Kernel, die seit Version 2.6.19-rc1 existiert. Die Schwachstelle befindet sich in der Datei net/netfilter/x_tables.c und ermoeglicht es einem lokalen Angreifer, ueber User-Namespaces eine Rechteeskalation durchzufuehren oder einen Denial-of-Service durch Heap-Speicherkorruption auszuloesen. Mit einem CVSS-Score von 8.3 (HIGH) und einem EPSS-Score von 85,24 % (99,3. Perzentil) gehoert diese Schwachstelle zu den am haeufigsten ausgenutzten Kernel-Schwachstellen. Die CISA hat CVE-2021-22555 in den KEV-Katalog aufgenommen, mit einer Behebungsfrist bis zum 27. Oktober 2025. Betroffen sind zahlreiche Linux-Kernel-Versionen von 2.6.19 bis 5.12 sowie diverse NetApp-Firmware-Produkte.
KEV-Informationen
CVSS-Score
CVSS:3.1/AV:A/AC:H/PR:N/UI:N/S:C/C:H/I:H/A:HIm Rechner öffnenBetroffene Produkte
| Hersteller | Produkt | Version |
|---|---|---|
| netapp | c400 firmware | - |
| netapp | c250 firmware | - |
| netapp | h410c firmware | - |
| netapp | h300s firmware | - |
| netapp | h500s firmware | - |
| netapp | h700s firmware | - |
| netapp | h410s firmware | - |
| linux | linux kernel | >= 2.6.19, < 4.4.267; >= 4.5, < 4.9.267; >= 4.10, < 4.14.231; >= 4.15, < 4.19.188; >= 4.20, < 5.4.113; >= 5.5, < 5.10.31; >= 5.11, < 5.12 |
| brocade | fabric operating system | - |
| netapp | fas 8300 firmware | - |
| netapp | fas 8700 firmware | - |
| netapp | aff a400 firmware | - |
| netapp | aff a250 firmware | - |
| netapp | aff 500f firmware | - |
| netapp | h610c firmware | - |
| netapp | h610s firmware | - |
| netapp | h615c firmware | - |
| netapp | cloud backup | - |
| netapp | hci management node | - |
| netapp | solidfire | - |
Mehrere CVSS-Bewertungen
CVSS:3.1/AV:A/AC:H/PR:N/UI:N/S:C/C:H/I:H/A:H
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Referenzen
- http://packetstormsecurity.com/files/163528/Linux-Kernel-Netfilter-Heap-Out-Of-Bounds-Write.html(Third Party Advisory, VDB Entry)
- http://packetstormsecurity.com/files/163878/Kernel-Live-Patch-Security-Notice-LSN-0080-1.html(Exploit, Third Party Advisory, VDB Entry)
- http://packetstormsecurity.com/files/164155/Kernel-Live-Patch-Security-Notice-LSN-0081-1.html(Exploit, Third Party Advisory, VDB Entry)
- http://packetstormsecurity.com/files/164437/Netfilter-x_tables-Heap-Out-Of-Bounds-Write-Privilege-Escalation.html(Exploit, Third Party Advisory, VDB Entry)
- http://packetstormsecurity.com/files/165477/Kernel-Live-Patch-Security-Notice-LSN-0083-1.html(Exploit, Third Party Advisory, VDB Entry)
- https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/net/netfilter/x_tables.c?id=9fa492cdc160cd27ce1046cb36f47d3b2b1efa21(Mailing List, Patch, Vendor Advisory)
- https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/net/netfilter/x_tables.c?id=b29c457a6511435960115c0f548c4360d5f4801d(Mailing List, Patch, Vendor Advisory)
- https://github.com/google/security-research/security/advisories/GHSA-xxx5-8mvq-3528(Exploit, Third Party Advisory)
- https://security.netapp.com/advisory/ntap-20210805-0010/(Third Party Advisory)
- https://www.cisa.gov/known-exploited-vulnerabilities-catalog?field_cve=CVE-2021-22555(US Government Resource)
Schwachstellentyp
CWE-787: Out-of-bounds Write
Die Schwachstelle ist als CWE-787 (Out-of-bounds Write) klassifiziert. Bei einem Out-of-bounds Write schreibt die Software Daten ueber die Grenzen eines zugewiesenen Speicherbereichs hinaus. Im Fall von CVE-2021-22555 handelt es sich um einen Heap-basierten Schreibzugriff ausserhalb der vorgesehenen Puffergrenzen in der Netfilter-Komponente des Linux-Kernels. Out-of-bounds Writes im Kernel sind besonders gefaehrlich, da sie die Integritaet des gesamten Betriebssystems gefaehrden und eine vollstaendige Systemuebernahme ermoeglichen koennen.
Auswirkungsanalyse
Rechteeskalation zum Root-Benutzer: Die gravierendste Auswirkung dieser Schwachstelle ist die Moeglichkeit einer lokalen Rechteeskalation. Ein unprivilegierter Benutzer kann durch Ausnutzung der Heap-Korruption in x_tables.c Root-Rechte auf dem System erlangen. Vertraulichkeit (C:H) - Nach erfolgreicher Eskalation hat der Angreifer Zugriff auf saemtliche Daten des Systems, einschliesslich sensibler Konfigurationsdateien, Datenbanken und Zugangsdaten anderer Benutzer. Integritaet (I:H) - Der Angreifer kann beliebige Systemdateien manipulieren, Backdoors installieren und den Kernel selbst modifizieren. Verfuegbarkeit (A:H) - Neben der Rechteeskalation kann die Schwachstelle auch fuer einen Denial-of-Service missbraucht werden, der das System zum Absturz bringt.
Besonderer Angriffsvektor: Der CVSS-Vektor gibt AV:A (Adjacent Network) und AC:H (High Complexity) an, was bedeutet, dass der Angriff aus einem benachbarten Netzwerk moeglich ist, aber erhoehte Komplexitaet erfordert. Ueber User-Namespaces koennen auch Container-Breakout-Szenarien realisiert werden, was die Schwachstelle besonders in Cloud- und Container-Umgebungen relevant macht.
EPSS-Bewertung und Ransomware: Der aussergewoehnlich hohe EPSS-Score von 85,24 % zeigt, dass diese Schwachstelle mit sehr hoher Wahrscheinlichkeit aktiv ausgenutzt wird. Der Ransomware-Status ist als Unknown klassifiziert, jedoch koennte die Schwachstelle als initialer Angriffsvektor in Linux-basierten Ransomware-Kampagnen dienen.
Exploit-Reifegrad
CVE-2021-22555 verfuegt ueber eine sehr hohe Exploit-Reife mit mehreren oeffentlich verfuegbaren funktionsfaehigen Exploits. Die CISA hat die Schwachstelle in den KEV-Katalog aufgenommen, was aktive Ausnutzung in freier Wildbahn bestaetigt. Der EPSS-Score von 85,24 % (99,3. Perzentil) positioniert sie unter den Top 1 % der am wahrscheinlichsten ausgenutzten Schwachstellen.
Oeffentliche Exploits: Mehrere funktionsfaehige Exploits sind oeffentlich dokumentiert. Google Security Research veroeffentlichte ein detailliertes Advisory unter GHSA-xxx5-8mvq-3528. Zusaetzlich sind auf PacketStorm mehrere Exploits verfuegbar, darunter ein Netfilter x_tables Heap OOB Write Privilege Escalation sowie mehrere Kernel Live Patch Security Notices, die die Schwachstelle adressieren.
Technischer Hintergrund: Der Exploit nutzt die fehlerhafte Behandlung von Netfilter-Regeln in x_tables.c aus, um kontrollierte Heap-Korruption zu erzielen. In Kombination mit User-Namespaces, die auch unprivilegierten Benutzern Zugang zu Netfilter-Funktionalitaet gewaehren, wird eine zuverlaessige Rechteeskalation ermoeglicht.
Ransomware-Verbindung: Der Ransomware-Status ist als Unknown klassifiziert. Angesichts der breiten Exploit-Verfuegbarkeit und der Tatsache, dass Linux-Server zunehmend Ziel von Ransomware-Gruppen werden, ist ein Einsatz in entsprechenden Kampagnen nicht auszuschliessen.
Behebung
-
Kernel-Update auf gepatchte Version installieren: Aktualisieren Sie den Linux-Kernel auf eine der folgenden gepatchten Versionen: 4.4.267+, 4.9.267+, 4.14.231+, 4.19.188+, 5.4.113+, 5.10.31+ oder 5.12+. Die offiziellen Patches sind in den Kernel-Commits 9fa492c und b29c457 verfuegbar.
-
User-Namespaces einschraenken: Als sofortige Mitigationsmassnahme koennen User-Namespaces deaktiviert oder eingeschraenkt werden, um die Angriffsflaeche zu reduzieren. Setzen Sie den Kernel-Parameter
user.max_user_namespaces=0oder verwenden Sie AppArmor/SELinux-Profile, die den Zugriff auf Netfilter aus unprivilegierten Namespaces blockieren. -
Container-Sicherheit ueberpruefen: Da die Schwachstelle ueber User-Namespaces ausnutzbar ist, muessen Container-Runtime-Konfigurationen ueberprueft werden. Stellen Sie sicher, dass Container mit minimalen Privilegien laufen und die Erstellung von User-Namespaces innerhalb von Containern unterbunden ist.
-
Monitoring und Erkennung implementieren: Richten Sie Kernel-Audit-Regeln ein, die verdaechtige Netfilter-Operationen erkennen. Ueberwachen Sie insbesondere setsockopt-Aufrufe mit Netfilter-Optionen aus unprivilegierten Prozessen und setzen Sie Host-basierte Intrusion-Detection-Systeme ein.
-
NetApp-Firmware aktualisieren: Falls NetApp-Systeme (C400, C250, H410C, H300S, H500S, H700S, H410S) im Einsatz sind, pruefen Sie die NetApp-Sicherheitshinweise auf verfuegbare Firmware-Updates, die den verwundbaren Kernel patchen.
Technische Details
Die Schwachstelle befindet sich in der Datei net/netfilter/x_tables.c im Linux-Kernel und existiert seit Version 2.6.19-rc1 (ca. 2006). Der Fehler tritt bei der Verarbeitung von Netfilter-Regeln auf, wenn die Kompatibilitaetsschicht fuer 32-Bit-Anwendungen auf 64-Bit-Systemen verwendet wird.
Ursache der Heap-Korruption: Bei der Konvertierung von Netfilter-Tabelleneintraegen zwischen dem 32-Bit- und 64-Bit-Format wird die Groesse des Zielpuffers nicht korrekt berechnet. Durch speziell praeparierte setsockopt-Aufrufe mit Netfilter-Optionen kann ein Angreifer Daten ueber die Grenzen des zugewiesenen Heap-Speicherbereichs hinaus schreiben. Die fehlerhafte Groessenberechnung fuehrt dazu, dass nachfolgende Heap-Objekte ueberschrieben werden koennen.
CVSS-Vektor im Detail: CVSS:3.1/AV:A/AC:H/PR:N/UI:N/S:C/C:H/I:H/A:H - Der Angriffsvektor ist Adjacent Network (AV:A), die Komplexitaet hoch (AC:H), es werden keine Privilegien benoetigt (PR:N) und keine Benutzerinteraktion (UI:N). Der Scope ist veraendert (S:C), was bedeutet, dass die Auswirkungen ueber die verwundbare Komponente hinausgehen - beispielsweise bei einem Container-Breakout. Alle drei Schutzziele sind maximal betroffen (C:H/I:H/A:H).
Exploit-Mechanismus: Der Angreifer erstellt einen User-Namespace, der ihm Zugriff auf die Netfilter-Funktionalitaet gewaehrt. Anschliessend werden ueber setsockopt-Systemaufrufe manipulierte Netfilter-Regeln eingefuegt, die den Heap-Overflow in x_tables.c ausloesen. Durch kontrolliertes Ueberschreiben von Kernel-Datenstrukturen auf dem Heap kann der Angreifer die Programmausfuehrung umlenken und Code mit Kernel-Privilegien ausfuehren.
Betroffene Systeme: Linux-Kernel-Versionen von 2.6.19 bis einschliesslich 5.11.x. Konkret betroffen sind die Versionsbereiche 2.6.19-4.4.266, 4.5-4.9.266, 4.10-4.14.230, 4.15-4.19.187, 4.20-5.4.112, 5.5-5.10.30 und 5.11-5.11.x. Zusaetzlich sind diverse NetApp-Firmware-Produkte betroffen, die verwundbare Kernel-Versionen einsetzen.
Häufig gestellte Fragen
Kann CVE-2021-22555 aus einem Container heraus ausgenutzt werden?
Ja, die Schwachstelle ist besonders in Container-Umgebungen relevant. Da der Exploit ueber User-Namespaces funktioniert, die in vielen Container-Runtimes standardmaessig aktiviert sind, kann ein Angreifer innerhalb eines Containers die Schwachstelle ausnutzen, um aus dem Container auszubrechen und Root-Rechte auf dem Host-System zu erlangen. Dies wird durch den veraenderten Scope (S:C) im CVSS-Vektor reflektiert.
Welche Linux-Distributionen sind betroffen?
Alle Linux-Distributionen, die Kernel-Versionen zwischen 2.6.19 und 5.12 einsetzen, sind potenziell betroffen. Dazu gehoeren Ubuntu, Debian, Red Hat Enterprise Linux, CentOS, SUSE, Fedora und andere. Die meisten Distributionen haben mittlerweile gepatchte Kernel-Pakete bereitgestellt. Pruefen Sie den Kernel-Versionsstand mit uname -r und vergleichen Sie ihn mit den Sicherheitshinweisen Ihrer Distribution.
Wie kann ich feststellen, ob mein System verwundbar ist?
Pruefen Sie zunaechst Ihre Kernel-Version mit uname -r. Wenn die Version in den betroffenen Bereich faellt, pruefen Sie, ob User-Namespaces aktiviert sind mit sysctl user.max_user_namespaces. Ist der Wert groesser als 0, ist Ihr System potenziell verwundbar. Schwachstellenscanner wie Nessus, Qualys oder OpenVAS koennen CVE-2021-22555 ebenfalls zuverlaessig erkennen.
Ist die Deaktivierung von User-Namespaces ein ausreichender Schutz?
Die Deaktivierung von User-Namespaces ist eine wirksame kurzfristige Mitigationsmassnahme, die den primaeren Angriffsvektor blockiert. Sie ist jedoch kein vollstaendiger Ersatz fuer das Kernel-Update, da unter bestimmten Umstaenden andere Wege zur Ausnutzung existieren koennten. Ausserdem benoetigen einige Anwendungen wie Docker, Podman oder Chromium User-Namespaces fuer ihre Funktionalitaet, sodass die Deaktivierung zu Kompatibilitaetsproblemen fuehren kann.
Hilfe beim Schwachstellenmanagement?
Unsere Sicherheitsexperten helfen Ihnen bei der Priorisierung und Behebung von Schwachstellen.