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
DirtyClone — Proof-of-Concept-Tool zur lokalen Rechteausweitung, das eine Kernel-XFRM/ESP-Schwachstelle (CVE-2026-43503) über manipulierte AES-CBC-verschlüsselte Payloads ausnutzt, die über den Netzwerkstack geliefert werden, um den SUID-Binärdatei-Seitencache zu patchen. | Kitploit
Tools/GitHubGitHub/gl1tch0x1/dirtyclone
Privilege EscalationExploitationShellcodeKryptographiePayload-EntwicklungBinary-Exploitation
GitHubgl1tch0x1/dirtyclone

DirtyClone

Proof-of-Concept-Tool zur lokalen Rechteausweitung, das eine Kernel-XFRM/ESP-Schwachstelle (CVE-2026-43503) über manipulierte AES-CBC-verschlüsselte Payloads ausnutzt, die über den Netzwerkstack geliefert werden, um den SUID-Binärdatei-Seitencache zu patchen.

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

DirtyClone

DirtyClone ist ein diagnostisches Proof-of-Concept-Tool zur lokalen Privilegienausweitung, geschrieben in C. Es zielt auf einen Kernel/XFRM-bezogenen Exploit-Pfad ab, der im Quellcode als CVE-2026-43503 beschrieben wird, und ist nur für autorisierte Sicherheitsforschung in kontrollierten Umgebungen vorgesehen.

Übersicht

Dieses Repository enthält:

  • dirtyclone.c – die vollständige Exploit-Implementierung
  • README.md – Nutzungs- und Umgebungsanleitung

Die aktuelle Implementierung führt die folgenden übergeordneten Schritte aus:

  • erstellt isolierte Benutzer- und Netzwerk-Namespaces,
  • konfiguriert Loopback-Netzwerk und XFRM/IPsec-Zustände/Richtlinien,
  • erstellt eine ESP-Nutzlast mit AES-CBC-Verschlüsselung,
  • versucht die Zustellung über einen TEE-basierten UDP-Pfad und einen Raw-IP-Fallback,
  • wartet darauf, dass der Page-Cache der Ziel-SUID-Binärdatei gepatcht wird,
  • führt die Ziel-Binärdatei aus, wenn der Page-Cache modifiziert wurde.

Wichtiger Hinweis

Dieses Tool ist ausschließlich für autorisierte Sicherheitstests vorgesehen. Die Ausführung auf Systemen ohne ausdrückliche Genehmigung kann illegal sein und die Systemintegrität beeinträchtigen.

Bauen

Installieren Sie zunächst das erforderliche OpenSSL-Entwicklungspaket:

root@kitploit:~
# Debian/Ubuntu
sudo apt-get install libssl-dev

# Fedora
sudo dnf install openssl-devel

# Arch Linux
sudo pacman -S openssl

Dann kompilieren Sie die Binärdatei:

root@kitploit:~
gcc -o dirtyclone dirtyclone.c -lcrypto -Wall -O2

Verwendung

Führen Sie das Programm aus mit:

root@kitploit:~
./dirtyclone

Optionale Argumente:

root@kitploit:~
./dirtyclone -q    # stiller Modus
./dirtyclone -v    # ausführlicher Modus (Standard)
./dirtyclone -h    # Hilfe anzeigen

Was das Programm tut

Zur Laufzeit führt das Programm folgende Schritte aus:

  1. zeigt ein Banner an und überprüft, ob es bereits als root läuft;
  2. überprüft Kernel- und Architekturdetails und meldet, ob das System dem anfälligen Bereich zu entsprechen scheint;
  3. richtet Namespaces und Loopback-Netzwerk ein;
  4. konfiguriert XFRM-Zustände/Richtlinien und versucht, eine TEE-Netfilter-Regel hinzuzufügen;
  5. mappt die Ziel-SUID-Binärdatei in den Speicher und gibt eine PoC-Zusammenfassung der ursprünglichen gegenüber den erwarteten Bytes aus;
  6. sendet ein ESP-Paket entweder über UDP+TEE oder einen Raw-IP-Fallback;
  7. wartet darauf, dass der Page-Cache die injizierten Bytes widerspiegelt, und versucht dann, die Ziel-Binärdatei auszuführen.

Wie DirtyClone funktioniert

Der Exploit basiert auf einer einfachen Idee: Das Programm erstellt eine präparierte ESP/XFRM-Nutzlast, die den Kernel veranlasst, Daten in einen Page-Cache-gestützten Speicherbereich zu entschlüsseln, und prüft dann, ob sich die Bytes in der Ziel-SUID-Binärdatei geändert haben.

In der Praxis führt das Programm die folgenden Aktionen aus:

  • identifiziert eine Zieldatei, /usr/bin/su, und mappt sie in den Speicher;
  • bereitet eine kleine Nutzlast mit Shellcode-Bytes und den notwendigen ESP-Metadaten vor;
  • verschlüsselt die Nutzlast mit AES-CBC, damit sie in den XFRM/ESP-Pfad eingespeist werden kann;
  • sendet das Paket über den lokalen Netzwerkstack, entweder mit TEE-unterstütztem UDP oder einem Raw-IP-Fallback;
  • überwacht den gemappten Bereich auf das Erscheinen der erwarteten Bytes;
  • wenn die Bytes erscheinen, geht es davon aus, dass der Exploit-Pfad den Page-Cache verändert hat, und führt den gepatchten Zielpfad aus.

Dies ist ein Proof-of-Concept-Ablauf, kein allgemeines Framework zur Privilegienausweitung. Es soll den Exploit-Mechanismus demonstrieren und dabei helfen zu überprüfen, ob ein Zielkernel das anfällige Verhalten noch aufweist.

Beispiel einer Dummy-Implementierung

Das folgende vereinfachte Beispiel zeigt dasselbe Konzept auf hoher Ebene:

root@kitploit:~
#include <stdio.h>
#include <string.h>

static int dummy_exploit(unsigned char *target_bytes) {
    unsigned char expected[] = {0x31, 0x0f, 0x05};
    memcpy(target_bytes, expected, sizeof(expected));
    return 0;
}

int main(void) {
    unsigned char target[16] = {0};
    dummy_exploit(target);
    printf("Patched bytes: %02x %02x %02x\n", target[0], target[1], target[2]);
    return 0;
}

Das echte Projekt verwendet dasselbe Prinzip, verpackt die Nutzlast jedoch als ESP/XFRM-Paket und treibt den Kernel-Pfad über den Netzwerkstack anstelle einer einfachen Speicherkopie.

Schritt-für-Schritt-Anleitung zur Ausnutzung

  1. Einrichtungsphase

    • das Programm erstellt Namespaces, um die Prozessumgebung zu isolieren;
    • es konfiguriert Loopback-Netzwerk, damit Pakete lokal bleiben.
  2. XFRM-Vorbereitung

    • der Exploit fügt XFRM-Zustände und -Richtlinien hinzu, die dem Kernel mitteilen, wie ESP-Verkehr zu verarbeiten ist;
    • es versucht auch, eine TEE-Regel zu installieren, damit der Verkehr über den geplanten Pfad umgeleitet werden kann.
  3. Nutzlastkonstruktion

    • der Code erstellt eine kleine Klartext-Nutzlast mit Shellcode-ähnlichen Bytes;
    • die Nutzlast wird mit AES-CBC unter Verwendung eines statischen Testschlüssels verschlüsselt.
  4. Zustellungsphase

    • das Programm sendet das präparierte ESP-Paket über UDP oder Raw IP;
    • der Kernel verarbeitet das Paket und schreibt die entschlüsselten Daten in einem anfälligen System zurück in den Page-Cache-Bereich der Ziel-Binärdatei.
  5. Überprüfung und Ausführung

    • der Code überwacht die Bytes der Zieldatei und prüft, ob sie mit den erwarteten Shellcode-Bytes übereinstimmen;
    • wenn dies der Fall ist, versucht er, die Ziel-Binärdatei auszuführen und die Kontrolle an den injizierten Nutzlastpfad zu übergeben.

Technische Details

Die Implementierung umfasst:

  • adaptive Wiederholungslogik beim Warten auf Page-Cache-Änderungen,
  • Bereinigungsroutinen, die über atexit und Signalhandler registriert werden,
  • auf fork/execvp basierende sichere Befehlsausführung,
  • AES-CBC-Verschlüsselung unter Verwendung der OpenSSL-EVP-APIs,
  • architekturbewusster Shellcode für x86_64 und AArch64,
  • duale Zustellungslogik sowohl für TEE-unterstützten UDP- als auch für Raw-IP-Transport.

Voraussetzungen

Der Quellcode erwartet eine Linux-Umgebung mit:

  • GCC oder Clang,
  • OpenSSL-Entwicklungsheader und -Bibliotheken,
  • ip, iptables und modprobe auf dem System verfügbar,
  • eine Ziel-Binärdatei unter /usr/bin/su,
  • ein Kernel, der möglicherweise anfällig für den beschriebenen Exploit-Pfad ist.

Erwartetes Verhalten

Das Programm soll eine diagnostische PoC-Zusammenfassung anzeigen und dann entweder:

  • erfolgreich den Page-Cache patchen und die Ziel-Binärdatei ausführen, oder
  • sauber fehlschlagen, wenn der Kernel gepatcht ist oder der Exploit-Pfad nicht verfügbar ist.

Wenn der Exploit nicht ausgelöst wird, gibt das Programm eine klare Meldung aus, die darauf hindeutet, dass der Kernel wahrscheinlich gepatcht ist.

Sicherheit und Ethik

Verwenden Sie dieses Projekt nur, wenn:

  • Sie das Zielsystem besitzen,
  • Sie die ausdrückliche Genehmigung haben, es zu testen,
  • Sie in einer Labor- oder isolierten Umgebung arbeiten.

Führen Sie diesen Code niemals auf Produktionssystemen oder Systemen aus, für die Sie keine Berechtigung zur Überprüfung haben.

Lizenz und Autorenschaft

Der Quellcode-Header identifiziert den Autor als MrAashish0x1 (gl1tch0x1). Das Repository enthält keine separate Lizenzdatei, daher sollte der Code als Forschungsmaterial und nicht als Produktionssoftware behandelt werden.

Tool herunterladen