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
copyfail-guard — Schnelle, überprüfbare Linux-Absicherung für den CVE-2026-31431 Copy Fail: algif_aead-Block, Verifikation und AF_ALG-Seccomp-Härtung. | Kitploit
Tools/GitHubGitHub/juliosuas/copyfail-guard
DefensivwerkzeugeContainer-SicherheitSchwachstellenanalyseKonfigurationsprüfungCloud-SicherheitDevSecOpsIncident Response
GitHubjuliosuas/copyfail-guard

copyfail-guard

Schnelle, überprüfbare Linux-Absicherung für den CVE-2026-31431 Copy Fail: algif_aead-Block, Verifikation und AF_ALG-Seccomp-Härtung.

Repository anzeigen
2vor 1 MonatNoch 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

CopyFail Guard

CI License: MIT Platform Shell No exploit code

root@kitploit:~
   ______                 ______      _ __   ______                     __
  / ____/___  ____  __  _/ ____/___ _(_) /  / ____/_  ______ __________/ /
 / /   / __ \/ __ \/ / / / /_  / __ `/ / /  / / __/ / / / __ `/ ___/ __  /
/ /___/ /_/ / /_/ / /_/ / / __/ / /_/ / / /  / /_/ / /_/ / /_/ / /  / /_/ /
\____/\____/ .___/\__, /_/    \__,_/_/_/   \____/\__,_/\__,_/_/   \__,_/
          /_/    /____/

Schnelle, prüfbare Linux-Expositionsbewertung und -Minderung für CVE-2026-31431 „Copy Fail“, während Kernel gepatcht werden.

CopyFail Guard ist ein defensives Betriebswerkzeug für Linux-Sysadmins, DevSecOps-Ingenieure, Plattformteams und Incident-Responder. Es hilft, die Exposition gegenüber dem Linux-algif_aead/AF_ALG-Problem zu reduzieren, indem es:

  • die Exposition sicher bewertet, ohne Exploit-Code
  • prüft, ob algif_aead verfügbar, geladen, eingebaut oder bereits blockiert ist
  • einen persistenten modprobe.d-Block installiert und das Modul entlädt, wenn dies sicher möglich ist
  • eine AF_ALG-Ablehnungsregel zu Docker-, Podman- und Kubernetes-Seccomp-Profilen hinzufügt
  • die Erreichbarkeit von AF_ALG validiert, ohne Exploit-Code auszuliefern

Endgültige Behebung: Installieren Sie den gepatchten Kernel Ihres Anbieters und starten Sie neu.
Dieses Werkzeug überbrückt die betriebliche Lücke zwischen Offenlegung und vollständiger Flotten-Patchung.

Warum Betreiber ihm vertrauen können

  • Kein Exploit-Code: Prüft Exposition und AF_ALG-Erreichbarkeit ohne Page-Cache-Schreibvorgänge, splice, Setuid-Änderungen, Privilegieneskalation oder destruktive Sonden.
  • Prüfbare Host-Änderung: Die Host-Minderung schreibt eine verwaltete Datei, /etc/modprobe.d/99-copyfail-guard.conf, und der Rollback entfernt nur diese Datei.
  • Basislinien-erhaltendes Seccomp: seccomp-patch fügt eine AF_ALG-Ablehnung zu einem bestehenden Docker/Podman/Kubernetes-Seccomp-Profil hinzu, anstatt Ihre Laufzeit-Härtung zu ersetzen.
  • Automatisierungsbereit: assess --json und dokumentierte Exit-Codes unterstützen Flotten-Scans, SIEM-Erfassung und Change-Management-Nachweise.
  • CI-abgedeckt: Shell-Syntax, Seccomp-Profil-Generierung, JSON-Ausgabe und Smoke-Tests laufen über gängige Linux-Distro-Container.

30-Sekunden-Pfad

Wenn Sie auf einem Linux-Host sind und eine schnelle Antwort benötigen:

root@kitploit:~
git clone --depth 1 https://github.com/juliosuas/copyfail-guard.git
cd copyfail-guard
sudo ./bin/copyfail-guard.sh doctor
sudo ./bin/copyfail-guard.sh assess

Wenn das Urteil „exponiert“ lautet und algif_aead modular ist:

root@kitploit:~
sudo ./bin/copyfail-guard.sh mitigate --yes
sudo ./bin/copyfail-guard.sh verify

Für wiederholbare Installationen ein Release-Tag fixieren:

root@kitploit:~
git clone --branch v0.3.0 --depth 1 https://github.com/juliosuas/copyfail-guard.git

Ersetzen Sie v0.3.0 durch das neueste getaggte Release, wenn neuere Versionen verfügbar sind.

Bin ich betroffen?

Führen Sie zuerst die sichere Expositionsprüfung durch:

root@kitploit:~
sudo ./bin/copyfail-guard.sh assess

So lesen Sie das Ergebnis:

Wenn Sie nicht vertrauenswürdige Container, CI-Jobs, Sandboxes oder Multi-User-Workloads betreiben, testen Sie auch, ob die AF_ALG-Socket-Erstellung in dieser Laufzeit blockiert ist:

root@kitploit:~
python3 tools/afalg-socket-test.py

PERMITTED beweist keine erfolgreiche Ausnutzung, aber es beweist, dass die relevante Userspace-Crypto-API erreichbar ist. Für defensive Operationen ist das Grund genug, die Minderung anzuwenden, während Sie die Rollout des gepatchten Kernels bestätigen.

Beweist dies die Verwundbarkeit?

Es ist kein destruktiver Proof-of-Concept enthalten. Das ist ein Feature, kein Manko.

Ein echter Copy-Fail-Exploit-Nachweis müsste Kernel-Speicher/Page-Cache-Auswirkungen oder Privilegieneskalation validieren. Die Auslieferung in einem öffentlichen Minderungs-Repo würde das Projekt weniger sicher und weniger einsetzbar in der Produktion machen.

CopyFail Guard beweist die Dinge, auf die Betreiber sicher reagieren können:

  • ob die riskante Komponente verfügbar, geladen, eingebaut oder blockiert ist
  • ob die AF_ALG-Socket-Erstellung in einer Ziellaufzeit erlaubt ist
  • ob der Host eine vorläufige Minderung hat
  • ob die verbleibende erforderliche Aktion Entladen, Neustart, Seccomp oder Anbieter-Patch ist

Kombinieren Sie für den endgültigen Verwundbarkeitsstatus dieses Werkzeug mit der Anbieterberatung/Paketbestandsliste und Neustart-Nachweisen.

Auflösungsmodell

CopyFail Guard ist Minderung, nicht Heilung. Es reduziert die Exposition und überprüft interimistische Kontrollen. Die dauerhafte Lösung bleibt der gepatchte Kernel des Anbieters plus Neustart.

Das Werkzeug ist bewusst als Clone-and-Run für Incident Response ausgelegt: Kein Compiler, Kernel-Header, Exploit-Code oder Drittanbieter-Paketmanager ist für den Kern-Host-Workflow erforderlich. python3 wird für --json-Ausgabe, seccomp-patch und den nicht-exploitiven AF_ALG-Socket-Test benötigt.

Schnellstart

Clone-and-Run:

root@kitploit:~
git clone https://github.com/juliosuas/copyfail-guard.git
cd copyfail-guard
chmod +x bin/copyfail-guard.sh

sudo ./bin/copyfail-guard.sh doctor
sudo ./bin/copyfail-guard.sh assess
sudo ./bin/copyfail-guard.sh mitigate --yes
sudo ./bin/copyfail-guard.sh verify

Optionale Systeminstallation:

root@kitploit:~
git clone https://github.com/juliosuas/copyfail-guard.git
cd copyfail-guard
sudo ./scripts/install.sh
sudo copyfail-guard status

Der Installer unterstützt das Fixieren von Quelle und Ziel für kontrollierte Rollouts:

root@kitploit:~
sudo env COPYFAIL_GUARD_REF=v0.3.0 ./scripts/install.sh

Verwenden Sie das neueste getaggte Release für COPYFAIL_GUARD_REF, wenn neuere Versionen verfügbar sind.

Container-/CI-Härtung:

root@kitploit:~
./bin/copyfail-guard.sh seccomp-patch docker-default.json copyfail-seccomp.json
docker run --security-opt seccomp=./copyfail-seccomp.json IMAGE

Validieren Sie, dass AF_ALG in einem geschützten Container blockiert ist:

root@kitploit:~
docker run --rm \
  --security-opt seccomp=./copyfail-seccomp.json \
  -v "$PWD/tools:/tools:ro" \
  python:3.12-alpine \
  python /tools/afalg-socket-test.py

Erwartetes geschütztes Ergebnis:

root@kitploit:~
BLOCKED: socket(AF_ALG) denied by policy (...)

Siehe Beispielausgaben für erwartete Urteile, JSON-Form und Container-Validierungsergebnisse.

Warum dies wichtig ist

Copy Fail ist eine lokale Privilegieneskalation im Linux-Kernel in der Komponente algif_aead der AF_ALG-Userspace-Crypto-API. Öffentliche Advisories beschreiben eine Page-Cache-Schreibprimitive, die von unprivilegierten lokalen Benutzern erreichbar ist und besonders gefährlich auf Systemen mit gemeinsam genutztem Kernel ist: Kubernetes-Knoten, CI/CD-Runner, Multi-Tenant-Hosts, Agent-Sandboxes und Entwicklerrechner.

Die korrekte Lösung ist ein Kernel-Update des Anbieters, das den Upstream-Revert/Fix enthält, und ein Neustart in den gepatchten Kernel. CopyFail Guard ist ein defensiver Betriebshelfer für das Zeitfenster, bevor dieser Neustart in der gesamten Flotte abgeschlossen ist.

Was das Werkzeug tut

Installationsvoraussetzungen

Kern-Host-Befehle:

  • Linux
  • bash
  • kmod-Werkzeuge: modinfo, modprobe, lsmod, rmmod wo verfügbar
  • grep, awk, mktemp, install

Optionale Sichtbarkeitswerkzeuge:

  • lsof oder ss für AF_ALG-Verbraucherprüfungen

Seccomp-Profil-Patching:

  • python3 wird benötigt für --json, seccomp-patch und tools/afalg-socket-test.py

Es wird kein Exploit-Code, Compiler, Kernel-Header oder Drittanbieter-Pakete benötigt.

Sichere Bewertung vs. Proof-of-Concept

CopyFail Guard enthält keinen Exploit-Proof-of-Concept. Das ist beabsichtigt. Siehe Beweist dies die Verwundbarkeit?.

Stattdessen führt assess eine sichere betriebliche Prüfung durch:

  • erkennt, ob algif_aead verfügbar, geladen, eingebaut oder blockiert erscheint
  • unterscheidet „vorläufig gemindert“ von „tatsächlich behoben“
  • empfiehlt Host-Minderung, Seccomp oder Patch/Neustart
  • gibt Exit-Codes für Flottenautomatisierung zurück

Automatisierungs-JSON:

root@kitploit:~
sudo ./bin/copyfail-guard.sh assess --json
./bin/copyfail-guard.sh doctor --json

Exit-Codes:

Details zur Host-Minderung

mitigate schreibt:

root@kitploit:~
/etc/modprobe.d/99-copyfail-guard.conf

mit:

root@kitploit:~
# Managed by CopyFail Guard for CVE-2026-31431
install algif_aead /bin/false
blacklist algif_aead

Dann versucht es:

root@kitploit:~
sudo rmmod algif_aead

Wenn das Modul derzeit in Benutzung ist, kann rmmod fehlschlagen. In diesem Fall bleibt der persistente Block installiert; stoppen Sie AF_ALG-Verbraucher oder starten Sie neu nach Anwendung der Minderung.

Das Skript weigert sich, einen Symlink an seinem verwalteten modprobe-Pfad zu überschreiben und schreibt die Datei atomar mit sicheren Berechtigungen.

Container- und CI-Härtung

Blockieren Sie für nicht vertrauenswürdige Workloads die AF_ALG-Socket-Erstellung mit Seccomp, auch während Sie Hosts patchen.

Empfohlener Pfad: Patchen Sie Ihre bestehende Laufzeit-Seccomp-Basislinie, anstatt sie zu ersetzen:

root@kitploit:~
./bin/copyfail-guard.sh seccomp-patch docker-default.json copyfail-seccomp.json

Verwendung mit Docker:

root@kitploit:~
docker run --security-opt seccomp=./copyfail-seccomp.json IMAGE

Verwendung mit Podman:

root@kitploit:~
podman run --security-opt seccomp=./copyfail-seccomp.json IMAGE

Notfall-Pfad, wenn Sie kein Basislinien-Profil haben:

root@kitploit:~
./bin/copyfail-guard.sh seccomp-docker ./copyfail-afalg-seccomp.json

Das generierte Notfall-Profil blockiert AF_ALG, erlaubt aber ansonsten Systemaufrufe. Behandeln Sie es als gezielten Notbehelf, nicht als Ersatz für die normale Seccomp-Härtung von Docker.

Für Kubernetes platzieren Sie das Profil unter dem kubelet-Seccomp-Root, üblicherweise:

root@kitploit:~
/var/lib/kubelet/seccomp/profiles/copyfail-seccomp.json

Dann referenzieren Sie es mit:

root@kitploit:~
securityContext:
  seccompProfile:
    type: Localhost
    localhostProfile: profiles/copyfail-seccomp.json

Siehe examples/kubernetes-seccomp-pod.yaml.

Sichere Validierung

Dieses Projekt enthält einen nicht-exploitiven AF_ALG-Erreichbarkeitstest:

root@kitploit:~
python3 tools/afalg-socket-test.py

Es versucht nur, einen AF_ALG-Socket zu erstellen und zu schließen. Es bindet keine Crypto-Operationen, ruft splice auf, berührt Setuid-Binaries, korrumpiert den Page-Cache oder versucht eine Privilegieneskalation.

Ergebnisse:

  • BLOCKED bedeutet, die Richtlinie hat AF_ALG für diesen Prozess verboten.
  • PERMITTED bedeutet, die AF_ALG-Socket-Erstellung ist für diesen Prozess noch erlaubt.
  • UNSUPPORTED bedeutet, AF_ALG ist in dieser Laufzeit nicht verfügbar.

Community-Validierung

CopyFail Guard benötigt reale Kompatibilitätsberichte von Linux-Hosts, Container-Laufzeiten, CI-Runnern und Kubernetes-Knoten. Wenn Sie es sicher testen können, eröffnen Sie ein Kompatibilitätsbericht-Issue mit bereinigter doctor-, assess --json-, verify- oder AF_ALG-Socket-Test-Ausgabe.

Nützliche Berichte helfen zu beantworten:

  • welche Distro/Kernel/Laufzeit-Kombinationen einfach zu mindern sind
  • wo algif_aead eingebaut ist und nur Patch/Neustart erfordert
  • welche Seccomp-Basislinien laufzeitspezifische Notizen benötigen
  • ob die Dokumentation für den Incident-Response-Einsatz klar genug ist

Siehe Community-Validierungsleitfaden.

Befehle

root@kitploit:~
copyfail-guard assess                 Sichere Expositionsbewertung, kein Exploit-Versuch
copyfail-guard status                 Host-Expositionsindikatoren inspizieren
copyfail-guard doctor                 Abhängigkeiten und Laufzeitbereitschaft prüfen
copyfail-guard mitigate               algif_aead persistent deaktivieren und entladen
copyfail-guard verify                 Host-Minderung auf Aktivität prüfen
copyfail-guard rollback               CopyFail Guards modprobe-Minderung entfernen
copyfail-guard seccomp-docker [FILE]  Notfall-AF_ALG-Verbotsprofil generieren
copyfail-guard seccomp-patch BASE OUT Bestehendes Seccomp-Profil sicher patchen
copyfail-guard k8s-example            Kubernetes-Seccomp-Beispiel ausgeben

Flags können vor oder nach dem Befehl platziert werden:

root@kitploit:~
--dry-run      Geplante Änderungen anzeigen, ohne Dateien zu schreiben oder Module zu entladen
--yes          Nicht-interaktive Bestätigung
--no-logo      ASCII-Banner deaktivieren
--json         JSON für unterstützte Befehle ausgeben: assess, doctor

Was nicht kaputtgehen sollte

In typischen Konfigurationen wird das Deaktivieren von algif_aead voraussichtlich keine Auswirkungen haben auf:

  • LUKS / dm-crypt
  • SSH
  • OpenSSL, GnuTLS, NSS Standard-Builds
  • kTLS / In-Kernel-TLS
  • IPsec / XFRM
  • normale In-Kernel-Crypto-Verbraucher

Es könnte Anwendungen beeinträchtigen, die explizit die AF_ALG-Engine verwenden oder direkt AF_ALG-Sockets erstellen. Prüfen Sie zuerst:

root@kitploit:~
sudo lsof | grep AF_ALG || true
ss -xa | grep -i alg || true

Betreiberdokumentation

  • Incident-Response-Runbook
  • Flotten-Rollout-Leitfaden
  • Community-Validierungsleitfaden
  • Beispielausgaben
  • Release-Checkliste
  • Seccomp-Validierungshinweise
  • Sicheres Bewertungsmodell
  • Sicherheitsrichtlinie
  • Support-Richtlinie
  • Beitragsleitfaden
  • Changelog

Projekt-Reife

  • Aktueller Umfang: defensive Bewertung, Host-Minderung für modulares algif_aead, Seccomp-Härtung für nicht vertrauenswürdige Workloads und Rollback.
  • Unterstützter Benutzer: Betreiber, die mit Linux-Host- und Container-Härtung vertraut sind.
  • Release-Stil: getaggte Releases, Changelog-Einträge, GitHub-Actions-Smoke-Tests und Issue-Vorlagen für reproduzierbare Berichte.
  • Community-Signal: Kompatibilitätsberichte sind das stärkste Vertrauenssignal; Feldevidenz kann zu Docs, Tests und Beispielen werden.
  • Stabilitätsversprechen: Exploit-Verhalten vermeiden, Host-Schreibvorgänge schmal halten, Exit-Code-Semantiken dokumentieren und bestehende Laufzeit-Seccomp-Basislinien erhalten.

Einschränkungen

CopyFail Guard tut nicht:

  • Ihren Kernel patchen
  • beweisen, ob Ihr genauer Kernel-Build ausnutzbar ist
  • Exploit-Code ausliefern
  • vor bereits kompromittierten Root-Benutzern schützen
  • EDR, Flotteninventar, Anbieteradvisories oder Neustartplanung ersetzen

Die Host-Modul-Minderung funktioniert für modulares algif_aead. Wenn algif_aead in Ihren Kernel eingebaut ist, können modprobe.d und rmmod es nicht deaktivieren; Patch/Neustart ist zwingend erforderlich und Seccomp sollte für nicht vertrauenswürdige Workloads während des Patching verwendet werden.

Seccomp schützt nur Workloads, die mit dem Profil gestartet werden. Bestehende laufende Container oder Pods müssen mit dem gehärteten Profil neu gestartet werden.

Rollback

root@kitploit:~
sudo ./bin/copyfail-guard.sh rollback --yes

Rollback entfernt nur die von diesem Werkzeug verwaltete Datei. Es lädt das Modul nicht neu. Starten Sie neu oder laden Sie modprobe algif_aead nur manuell, wenn Sie es explizit benötigen und das Risiko akzeptiert oder den Kernel gepatcht haben.

FAQ

Ist dies ein Ersatz für das Patchen?

Nein. Patch und Neustart bleiben die endgültige Lösung.

Testet dies die Ausnutzung?

Nein. Das Projekt vermeidet bewusst Exploit-Verhalten. tools/afalg-socket-test.py prüft nur, ob die AF_ALG-Socket-Erstellung erreichbar ist.

Warum AF_ALG in Containern blockieren, selbst nach Host-Minderung?

Verteidigung in der Tiefe. Container- und CI-Workloads sind häufige Orte, an denen nicht vertrauenswürdiger Code auf einem gemeinsam genutzten Kernel läuft. Seccomp macht den ersten Schritt dieser Angriffsklasse für diese Workload unerreichbar.

Warum ein bestehendes Seccomp-Profil patchen, anstatt ein neues zu generieren?

Weil Standard-Laufzeitprofile viele Härtungsentscheidungen enthalten. Das Ersetzen durch ein minimales Notfallprofil kann versehentlich Schutzmaßnahmen entfernen. seccomp-patch behält Ihre Basislinie und fügt die AF_ALG-Ablehnung hinzu.

Kann ich dies flottenweit verwenden?

Ja. Beginnen Sie mit doctor und assess --json, inszenieren Sie die Minderung auf einer kleinen Linux-Stichprobe und rollen Sie dann Host-Minderung und Seccomp-Profiländerungen getrennt aus. Siehe Flotten-Rollout-Leitfaden.

Referenzen

  • NVD: CVE-2026-31431
  • CERT-EU Advisory: High Vulnerability in the Linux Kernel ("Copy Fail")
  • CISA Known Exploited Vulnerabilities entry
  • copy.fail öffentliches technisches Advisory
  • Linux stable fix: crypto: algif_aead - Revert to operating out-of-place

Autor

Erstellt von Julio César Suástegui Calderón.

Sicherheitstechnik, Linux-Systeme und praktische defensive Automatisierung.

Lizenz

MIT

Tool herunterladen
UrteilsfamilieBedeutungMaßnahme
EXPOSED_*algif_aead / AF_ALG scheint erreichbar oder ladbarJetzt mindern, dann patchen und neu starten
PARTIALLY_MITIGATED_*Ein Block existiert, aber das geladene Modul oder der Neustart-Status ist noch relevantNeu starten oder sicher entladen, dann überprüfen
INTERIM_MITIGATED_*Lokale Minderung ist aktivBeibehalten, aber trotzdem patchen und neu starten
LOW_OBVIOUS_EXPOSURE_*Lokale Prüfungen fanden keine offensichtliche algif_aead-ExpositionTrotzdem den Patch-Status des Anbieters bestätigen
BereichBefehlZweck
Sichere BewertungassessGibt ein Nicht-Exploit-Expositionsurteil, nächste Aktionen und automatisierungsfreundlichen Exit-Code
AbhängigkeitsprüfungdoctorPrüft benötigte/optionale Werkzeuge und erklärt Laufzeitbeschränkungen
Host-InspektionstatusZeigt OS/Kernel, Modulverfügbarkeit, Ladezustand, Einbauwarnung, modprobe-Block und offensichtliche AF_ALG-Verbraucher
Host-MinderungmitigateSchreibt /etc/modprobe.d/99-copyfail-guard.conf und versucht, algif_aead zu entladen
VerifikationverifyScheitert klar, wenn das Modul geladen, eingebaut oder nicht blockiert ist
RollbackrollbackEntfernt nur die von CopyFail Guard verwaltete modprobe-Datei
Containerseccomp-patchPatchen eines bestehenden Seccomp-Profils, um socket(AF_ALG, ...) zu verbieten, während normale Socket-Nutzung erhalten bleibt
Notfall-Profilseccomp-dockerGeneriert ein gezieltes AF_ALG-Verbotsprofil für den Notfall
Kubernetesk8s-exampleGibt ein Localhost-Seccomp-Pod-Beispiel aus
CodeBedeutung
0Niedrige offensichtliche Exposition aus lokalen Prüfungen
1Vorläufige Minderung aktiv, Patch/Neustart noch erforderlich
10Exponiert/Minderung verfügbar
11Teilweise gemindert; Neustart oder Entladen erforderlich
12Eingebauter Modulpfad; Patch/Neustart erforderlich
20Unbekannter Bewertungszustand