Skip to content
KitploitKITPLOIT
ToolsExploitsBlog
Log in
Einreichen
ToolsExploitsBlog
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.

FeedsKontaktDatenschutz© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
cve-2026-31431-algif-aead-remediator — Kubernetes-DaemonSet zur Erkennung und Behebung von CVE-2026-31431 (GHSA-2274-3hgr-wxv6) — algif_aead LPE über die Modprobe-Blacklist | Kitploit
Tools/GitHubGitHub/boliu83/cve-2026-31431-algif-aead-remediator
Cloud-Infrastruktur-SicherheitDefensivwerkzeugeContainer-SicherheitSchwachstellenanalyseKonfigurationsprüfungIncident Response
GitHubboliu83/cve-2026-31431-algif-aead-remediator

cve-2026-31431-algif-aead-remediator

Kubernetes-DaemonSet zur Erkennung und Behebung von CVE-2026-31431 (GHSA-2274-3hgr-wxv6) — algif_aead LPE über die Modprobe-Blacklist

Repository anzeigen
46vor 6 MonatenNoch nicht geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

CVE-2026-31431 / GHSA-2274-3hgr-wxv6 — algif_aead-Remediator

Schweregrad: Hoch (CVSS 7.8 — CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H)

Hintergrund

CVE-2026-31431 ist eine lokale Privilegieneskalations-Schwachstelle im algif_aead-Modul des Linux-Kernels (AF_ALG-AEAD-Krypto-Socket-Schnittstelle). Ein lokaler Benutzer mit niedrigen Privilegien kann fehlerhafte In-Place-Pufferoperationen ausnutzen, um vollständigen Root-Zugriff zu erlangen. Alle AKS-Node-Pools, die Linux-Kernel vor dem Upstream-Patch ausführen, sind potenziell betroffen.

Das algif_aead-Modul wird für normale Kubernetes- oder AKS-Workloads nicht benötigt. Das Blacklisten eliminiert die Angriffsfläche vollständig.


Was dieses DaemonSet tut

Ein Pod läuft auf jedem Linux-Node. Beim Start und dann alle 60 Sekunden führt jeder Pod Folgendes aus:

  1. Schreibt /etc/modprobe.d/modprobe-CIS.conf auf dem Host mit:

    install algif_aead /bin/false
    blacklist algif_aead
    

    Dies verhindert das Laden des Moduls beim Neustart oder über modprobe.

  2. Prüft /proc/modules (die Live-Host-Kernelmodulliste — mit allen Containern geteilt) auf algif_aead.

  3. Beschriftet den Kubernetes-Node mit dem Ergebnis, sodass Sie clusterweit abfragen können:

    Label-WertBedeutung
    mitigatedModul nicht geladen; Blacklist-Konfiguration angewendet
    module-loadedModul ist derzeit geladen — sofort untersuchen

Dateien

DateiZweck
rbac.yamlNamespace, ServiceAccount, ClusterRole (get/patch nodes), ClusterRoleBinding
configmap.yamlShell-Remediationsskript, das in jeden Pod gemountet wird
daemonset.yamlDaemonSet-Definition — ein Pod pro Linux-Node

Voraussetzungen

  • kubectl, konfiguriert gegen den Ziel-AKS-Cluster
  • Cluster-Admin-Berechtigungen (erforderlich zum Erstellen einer ClusterRole und eines privilegierten Namespace)

Bereitstellung

Wenden Sie die Manifeste in der richtigen Reihenfolge an:

kubectl apply -f rbac.yaml
kubectl apply -f configmap.yaml
kubectl apply -f daemonset.yaml

Warten Sie, bis der Rollout auf allen Nodes abgeschlossen ist:

kubectl -n security-remediation rollout status daemonset/cve-2026-31431-remediator

Überprüfung

Node-Remediationsstatus auf einen Blick prüfen

kubectl get nodes -L vulnerability.aks.io/CVE-2026-31431

Erwartete Ausgabe in einem sauberen Cluster:

NAME                                STATUS   ROLES    AGE   VERSION   CVE-2026-31431
aks-nodepool1-xxxxx-vmss000000      Ready    <none>   4d    v1.33.7   mitigated
aks-nodepool1-xxxxx-vmss000001      Ready    <none>   4d    v1.33.7   mitigated

Protokolle auf einem bestimmten Pod prüfen

# Pods und ihre zugewiesenen Nodes auflisten
kubectl -n security-remediation get pods -o wide

# Protokolle eines bestimmten Pods verfolgen
kubectl -n security-remediation logs <pod-name> -f

Erwartete Protokollausgabe:

2026-05-01T01:33:36Z [INFO    ] CVE-2026-31431 remediator starting on node: aks-nodepool1-...
2026-05-01T01:33:36Z [INFO    ] Blacklist config written → /host/etc/modprobe.d/modprobe-CIS.conf
2026-05-01T01:33:36Z [INFO    ] Node aks-nodepool1-...: 'algif_aead' is NOT loaded — blacklist config applied, node is mitigated.
2026-05-01T01:33:36Z [INFO    ] Labeled node aks-nodepool1-...: vulnerability.aks.io/CVE-2026-31431=mitigated
2026-05-01T01:33:36Z [INFO    ] Entering monitoring loop (interval: 60s)

Überprüfen, ob die modprobe-Konfiguration auf den Host geschrieben wurde

kubectl -n security-remediation exec <pod-name> -- cat /host/etc/modprobe.d/modprobe-CIS.conf

Erwarteter Inhalt:

# CIS hardening – mitigate CVE-2026-31431 (GHSA-2274-3hgr-wxv6)
# Prevents algif_aead (AF_ALG AEAD) LPE from being loaded or exploited.
install algif_aead /bin/false
blacklist algif_aead

Warnung: Nodes mit geladenem Modul

Wenn ein Node module-loaded anzeigt, ist das Kernelmodul derzeit aktiv und der Node ist möglicherweise bereits kompromittiert. Cordon und Drain des Nodes sofort für forensische Analysen durchführen:

# Betroffene Nodes finden
kubectl get nodes -l vulnerability.aks.io/CVE-2026-31431=module-loaded

# Cordon und Drain für Untersuchung
kubectl cordon <node-name>
kubectl drain <node-name> --ignore-daemonsets --delete-emptydir-data

Deinstallation

Hinweis: Das Entfernen des DaemonSets entfernt nicht die Datei /etc/modprobe.d/modprobe-CIS.conf von den Host-Nodes. Diese Datei wird absichtlich als dauerhafte Kernel-Härtungsmaßnahme belassen.

Kubernetes-Ressourcen entfernen

kubectl delete -f daemonset.yaml
kubectl delete -f configmap.yaml
kubectl delete -f rbac.yaml

Dies löscht das DaemonSet, alle seine Pods, die ConfigMap, den ServiceAccount, die ClusterRole, die ClusterRoleBinding und den Namespace.

Node-Labels entfernen (optional)

kubectl label nodes --all vulnerability.aks.io/CVE-2026-31431-

Die modprobe-Konfiguration von Nodes entfernen (nicht empfohlen)

Führen Sie dies nur aus, wenn Sie eine alternative Absicherung (gepatchter Kernel) haben. Führen Sie auf jedem Node oder über einen privilegierten Pod aus:

rm -f /etc/modprobe.d/modprobe-CIS.conf

Sicherheitshinweise

  • Der Pod läuft als root (runAsUser: 0) — erforderlich, um in /etc/modprobe.d/ auf dem Host zu schreiben.
  • Alle Linux-Capabilities werden entfernt (capabilities.drop: ["ALL"]). Es werden keine Kernel-Capabilities benötigt.
  • Der Hauptcontainer läuft mit readOnlyRootFilesystem: true. Nur die gemounteten hostPath- und emptyDir-Volumes sind beschreibbar.
  • Nur /etc/modprobe.d/ wird vom Host bind-gemountet — nicht /etc, /proc oder ein breiterer Pfad.
  • Die curl-Binärdatei und ihre Shared Libraries werden vom Init-Container in ein emptyDir (/tools) gestellt, sodass der Hauptcontainer die Kubernetes-API aufrufen kann, ohne Schreibzugriff auf das Root-Dateisystem zu benötigen.
  • Der ServiceAccount hat die minimal erforderlichen RBAC-Berechtigungen: nur get und patch auf nodes.
Tool herunterladen