Kernel-Exploits sind die mächtigsten Angriffswerkzeuge — sie gewähren vollständige Kontrolle über das Betriebssystem und können jede Sicherheitsmaßnahme im User-Mode umgehen.
Windows Kernel Exploitation — Ring-0-Angriffe auf Windows
Der Windows-Kernel bietet aufgrund seiner Komplexität eine breite Angriffsfläche: Der NT-Kernel (ntoskrnl.exe), das GUI-Subsystem (win32k.sys), Dateisystem-Treiber (NTFS, FAT) und hunderte Third-Party-Treiber laufen alle in Ring 0. Historisch war win32k.sys der produktivste Exploit-Vektor — mit über 1.700 CVEs seit Windows NT. Kernel-Exploitation erfordert tiefes Verständnis des Windows Kernel Memory Managers, des Object Managers und der Pool-Allokationsstrategien.
- Pool Overflow & Pool Feng Shui: Der Windows Kernel verwendet Pool-basierte Speicherverwaltung mit Paged Pool und Non-Paged Pool. Pool Overflow-Schwachstellen überschreiben benachbarte Pool-Allokationen — der Angreifer kontrolliert, welches Objekt überschrieben wird, durch Pool Feng Shui (deterministische Heap-Manipulation). Technik: 1) Pool fragmentieren durch Allokation vieler gleichgroßer Objekte, 2) gezielte Lücken schaffen durch Freigabe jedes zweiten Objekts, 3) verdächtiges Objekt allozieren (füllt eine Lücke), 4) Overflow triggered — überschreibt das benachbarte Objekt. Segment Heap (ab Windows 10 19H1 für den Kernel) erschwert Pool Feng Shui durch Randomisierung, ist aber nicht immun. CVE-2021-31956 (NTFS Pool Overflow) wurde von der Lazarus Group in-the-wild ausgenutzt: Ein speziell präpariertes NTFS-Attribut löste einen Overflow in
NtfsQueryEaUserEaListaus — kombiniert mit WNF (Windows Notification Facility) für arbitrary read/write. - Use-After-Free in win32k.sys & Type Confusion: Use-After-Free (UAF) tritt auf, wenn ein Kernel-Objekt freigegeben, aber ein Pointer darauf weiterhin genutzt wird. In win32k.sys entstehen UAFs häufig durch komplexe Callback-Mechanismen: User-Mode-Callbacks (z. B.
xxxClientAllocWindowClassExtraBytes) werden während der Kernel-Verarbeitung aufgerufen — der User-Mode-Code kann dabei das zugrundeliegende Objekt manipulieren/freigeben, während der Kernel noch darauf zugreift. CVE-2021-1732 (win32k UAF, von Bitter APT genutzt): Durch Manipulation vontagWND.cbWndExtrawährend eines Callbacks konnte der Angreifer ein Out-of-Bounds-Read/Write erreichen. Type Confusion: Ein Kernel-Objekt wird als falscher Typ interpretiert — CVE-2023-36802 (MSKSSRV.sys Type Confusion) ermöglichte SYSTEM-Privilege durch Verwechslung eines User-kontrollierten Buffers mit einer internen Struktur. Debugging: WinDbg mit Kernel-Debugging über KDNET (Netzwerk-Kernel-Debugger) ist das Standardtool —!pool,!poolfind,dt nt!_POOL_HEADERfür Pool-Analyse. - Token Stealing & SYSTEM-Elevation: Nach erfolgreichem Kernel-Exploit ist Token Stealing die Standardtechnik für Privilege Escalation: Jeder Windows-Prozess hat ein Token-Objekt (
_TOKEN-Struktur), das Berechtigungen definiert. Der Exploit kopiert das Token des System-Prozesses (PID 4) auf den eigenen Prozess: 1)PsInitialSystemProcessreferenzieren (Pointer auf SYSTEM_EPROCESS), 2)_EPROCESS.Tokenauslesen (Offset variiert je nach Windows-Build), 3) Token auf den aktuellen Prozess kopieren — sofortige SYSTEM-Berechtigungen. Alternative: Privilege-Feld direkt manipulieren:_TOKEN.Privileges.Enabledauf0xFFFFFFFFFFFFFFFFsetzen (alle Privileges aktivieren — inkl.SeDebugPrivilege,SeLoadDriverPrivilege). KVAS (Kernel Virtual Address Shadow) und KASLR erschweren das Auffinden der richtigen Speicheradressen, können aber über NtQuerySystemInformation-Leaks oder Side-Channel-Angriffe umgangen werden. - Vulnerable Driver Exploitation (BYOVD): Bring Your Own Vulnerable Driver (BYOVD) ist eine Technik, bei der Angreifer einen signierten, aber verwundbaren Treiber installieren und dessen Schwachstelle ausnutzen, um Ring-0-Code auszuführen. Da Windows nur signierte Treiber lädt (Driver Signature Enforcement), verwenden Angreifer legitime Treiber mit bekannten Schwachstellen: gdrv.sys (Gigabyte — arbitrary read/write), DBUtil_2_3.sys (Dell — CVE-2021-21551), RTCore64.sys (MSI Afterburner — arbitrary MSR read/write), capcom.sys (Capcom — direktes Ausführen von Ring-0-Code). Das Projekt LOLDrivers (Living Off The Land Drivers) katalogisiert über 700 verwundbare Treiber. Ransomware-Gruppen (BlackByte, Lazarus, Cuba) nutzen BYOVD routinemäßig, um EDR-Treiber im Kernel zu deaktivieren. Verteidigung: Microsoft Vulnerable Driver Blocklist (
DriverSiPolicy.p7b), HVCI (Hypervisor-Protected Code Integrity) und WDAC (Windows Defender Application Control) mit Custom-Driver-Policies.
Linux Kernel & Rootkit-Techniken — von Dirty Pipe bis DKOM
Der Linux-Kernel ist monolithisch mit Tausenden von Modulen, die in Ring 0 laufen — Schwachstellen in Subsystemen wie Dateisystem, Netzwerk-Stack, Speicherverwaltung oder Gerätetreibern führen direkt zu root-Berechtigungen. Die Open-Source-Natur ermöglicht sowohl Angreifern (Quellcode-Analyse für Schwachstellenfindung) als auch Verteidigern (Auditing, Patching) tiefe Einblicke. Rootkit-Techniken auf Linux reichen von Loadable Kernel Modules (LKMs) über eBPF-Rootkits bis zu DKOM-basierten Prozess-Versteckmechanismen.
- Dirty Pipe (CVE-2022-0847) & Dirty COW (CVE-2016-5195): Dirty Pipe ist eine der elegantesten Linux-Kernel-Schwachstellen: Ein Bug in der Pipe-Buffer-Verwaltung ermöglichte das Überschreiben von Inhalten in beliebigen Dateien — selbst in read-only gemounteten Dateisystemen und SUID-Binaries. Der Exploit ist trivial: Pipe erstellen, teilweise lesen (setzt
PIPE_BUF_FLAG_CAN_MERGE), dannsplice()mit Zieldatei — anschließenderwrite()auf die Pipe überschreibt den Page-Cache der Zieldatei. Exploitation:/etc/passwdmodifizieren (root ohne Passwort) oder SUID-Binary überschreiben. Dirty COW (CVE-2016-5195) nutzte eine Race Condition im Copy-on-Write-Mechanismus: Durch gleichzeitigesmadvise(MADV_DONTNEED)undwrite()auf ein/proc/self/mem-Mapping konnte der COW-Schutz umgangen und read-only Speicher überschrieben werden. Beide Schwachstellen betreffen den Speicherverwaltungssubsystem und zeigen, wie fundamental Kernel-Bugs sein können. - userfaultfd & KASLR-Bypass: userfaultfd ist ein Linux-Syscall, der User-Space-Programme über Page Faults benachrichtigt — ursprünglich für VM-Live-Migration entwickelt. Für Kernel-Exploitation ist userfaultfd extrem wertvoll: Es ermöglicht das Anhalten des Kernels mitten in einer Operation (wenn der Kernel auf eine User-Space-Seite zugreift), die Manipulation des Kernel-Zustands während der Pause und die Fortsetzung der Operation mit manipuliertem Zustand — perfekt für Race-Condition-Exploits und Heap-Spraying. Seit Linux 5.11 ist userfaultfd für unprivilegierte Benutzer eingeschränkt (
sysctl vm.unprivileged_userfaultfd=0) — als Alternative nutzen Exploit-Entwickler FUSE (Filesystem in Userspace). KASLR (Kernel Address Space Layout Randomization) randomisiert die Kernel-Basisadresse — Bypass-Techniken:/proc/kallsyms(zeigt Kernel-Symbole mit Adressen — erfordertkptr_restrict=0), Side-Channel-Angriffe (Timing-basierte Prefetch-Angriffe, TLB-Seitenkanalangriffe), dmesg-Leaks (Kernel-Pointer in Log-Nachrichten). - DKOM & LKM-Rootkits: Direct Kernel Object Manipulation (DKOM) ist die Kerntechnik moderner Rootkits: Durch direkte Manipulation von Kernel-Datenstrukturen werden Prozesse, Dateien und Netzwerkverbindungen unsichtbar. Prozess-Hiding: Die
task_struct-Linked-List wird manipuliert — der zu versteckende Prozess wird aus dertasks-Liste entfernt (list_del()aufcurrent->tasks), aber der Scheduler referenziert ihn weiterhin über die Run-Queue — der Prozess läuft, ist aber fürps,topund/procunsichtbar. LKM-Rootkits (Loadable Kernel Modules) werden als Kernel-Module geladen und hooking Syscall-Table-Einträge:sys_getdents64(Dateien verstecken),sys_read(Dateiinhalte filtern),sys_kill(Signale an versteckte Prozesse blockieren). Beispiele: Diamorphine (modernes LKM-Rootkit für Linux 2.6–6.x), Reptile (Feature-reiches Rootkit mit Port-Knocking-Backdoor). Erkennung: Volatility mit Linux-Profil analysiert RAM-Dumps und erkennt versteckte Prozesse durch Vergleich von Prozesslisten. - eBPF-basierte Rootkits & Angriffe: eBPF (extended Berkeley Packet Filter) ermöglicht die Ausführung von sandboxed Code im Kernel — ursprünglich für Netzwerk-Monitoring, wird eBPF zunehmend für offensive Zwecke missbraucht. eBPF-Rootkits (z. B. ebpfkit, bad-bpf) nutzen BPF-Programme, um Syscall-Rückgabewerte zu manipulieren: Ein
tracepoint/syscalls/sys_exit_getdents64-Programm kann Directory-Einträge aus dem Ergebnis entfernen — Dateien werden unsichtbar, ohne die Syscall-Tabelle zu modifizieren. Vorteile gegenüber LKM-Rootkits: Kein Kernel-Modul nötig (eBPF-Programme werden über denbpf()-Syscall geladen), überleben kein Reboot (flüchtig — schwerer forensisch nachzuweisen), passieren den eBPF-Verifier (sehen „sicher“ aus). Verteidigung:sysctl kernel.unprivileged_bpf_disabled=1(verhindert eBPF für nicht-privilegierte Benutzer), BPF-LSM (Linux Security Module) kann eBPF-Programmtypen einschränken, bpftool listet laufende eBPF-Programme:bpftool prog listzur Erkennung.
Kernel-Verteidigung & Secure Boot — den Kern schützen
Die Verteidigung des Kernels erfordert einen mehrschichtigen Ansatz: Von Compile-Time-Mitigations (Stack Canaries, CFI) über Runtime-Schutz (PatchGuard, SMEP, SMAP) bis zu Hardware-unterstützten Mechanismen (HVCI, VBS, Secure Boot). Moderne Betriebssysteme implementieren zunehmend Hypervisor-basierte Isolation: Der Hypervisor läuft in Ring -1 und kann den Kernel selbst überwachen und einschränken. UEFI Secure Boot schützt den Boot-Prozess, wird aber von Bootkits wie BlackLotus herausgefordert.
- Windows PatchGuard & HVCI: PatchGuard (Kernel Patch Protection / KPP) überwacht kritische Kernel-Strukturen auf unerlaubte Modifikationen: SSDT (System Service Descriptor Table), IDT (Interrupt Descriptor Table), GDT (Global Descriptor Table), Kernel-Code-Sections und MSR-Werte. Bei Erkennung einer Manipulation: BSOD (
CRITICAL_STRUCTURE_CORRUPTION). PatchGuard-Umgehung ist möglich (z. B. durch Timing-Angriffe auf den Check-Timer), aber erfordert extremen Aufwand. HVCI (Hypervisor-Protected Code Integrity) nutzt VBS (Virtualization-Based Security): Der Hyper-V-Hypervisor erstellt einen isolierten Secure Kernel (VTL 1), der die Code-Integrität des normalen Kernels (VTL 0) überprüft — nur signierter Code darf im Kernel ausgeführt werden. HVCI blockiert effektiv: unsignierte Treiber, modifizierte Kernel-Code-Pages, Data-to-Code-Transitions (W^X im Kernel). Credential Guard schützt LSASS-Secrets in der VTL-1-Isolation — Mimikatz kann Credentials nicht mehr aus dem Speicher extrahieren. - Linux Kernel Lockdown & Hardening: Kernel Lockdown (seit Linux 5.4) bietet zwei Modi: Integrity (verhindert Modifikation des Kernels: kein
/dev/mem-Zugriff, keinkexecvon unsignierten Kerneln, keine ACPI-Table-Overrides) und Confidentiality (zusätzlich: kein Zugriff auf/proc/kcore, keine Kernel-Parameter-Leaks überdmesg). Aktivierung:lockdown=integrityals Kernel-Parameter oder via Secure Boot (automatisch aktiviert bei EFI Secure Boot). Weitere Hardening-Maßnahmen:CONFIG_STACKPROTECTOR_STRONG(Stack Canaries),CONFIG_CFI_CLANG(Control Flow Integrity — verhindert ROP/JOP im Kernel),CONFIG_INIT_ON_ALLOC_DEFAULT_ON(Heap-Initialisierung auf Null — verhindert Info-Leaks),CONFIG_RANDOMIZE_KSTACK_OFFSET(Kernel-Stack-Randomisierung). SELinux/AppArmor im Enforcing-Mode schränkt selbst root-Prozesse in ihren Kernel-Interaktionen ein. - Secure Boot & UEFI-Rootkits: UEFI Secure Boot verifiziert die kryptographische Signatur jeder Komponente im Boot-Prozess: PK (Platform Key) → KEK (Key Exchange Key) → db (Allowed Signatures) / dbx (Forbidden Signatures). Nur Bootloader und Treiber mit gültiger Signatur in db werden geladen. BlackLotus (2023) war das erste UEFI-Bootkit, das Secure Boot auf aktuellen Windows-Systemen umging: Es nutzte CVE-2022-21894 (Baton Drop), um einen signierten, aber verwundbaren Windows-Boot-Manager zu laden — dieser lud dann den unsignierten Bootkit-Code. CosmicStrand (Kaspersky, 2022) modifizierte die UEFI-Firmware direkt im SPI-Flash — persistiert über OS-Neuinstallationen und Festplattentausch hinweg. MoonBounce (APT41/Winnti) implantierte sich in der CORE_DXE-Firmware-Komponente. Verteidigung: Custom Secure-Boot-Keys (PK/KEK/db) statt Microsoft-Standard-Keys, Intel Boot Guard (Hardware-basierte Firmware-Verifikation), TPM-Measured Boot mit Remote Attestation.
- eBPF-basiertes Kernel-Monitoring: eBPF ist nicht nur ein Angriffswerkzeug, sondern auch die leistungsfähigste Kernel-Monitoring-Technologie für Verteidiger. Falco (CNCF-Projekt) nutzt eBPF, um Kernel-Syscalls in Echtzeit zu überwachen und bei verdächtigen Aktivitäten zu alarmieren: Shell in Container gestartet, sensitive Datei gelesen (
/etc/shadow), Kernel-Modul geladen, Netzwerk-Tool in nicht-Netzwerk-Container ausgeführt. Tetragon (Cilium/Isovalent) bietet eBPF-basierte Security Observability mit geringem Overhead: Process-Lifecycle-Tracking, File-Integrity-Monitoring, Network-Policy-Enforcement — alles direkt im Kernel ohne User-Space-Overhead. Tracee (Aqua Security) erkennt Laufzeit-Anomalien und mappt sie auf MITRE ATT&CK-Techniken: Fileless Execution, Container Escapes, Kernel-Module-Loading. bpftrace ermöglicht Ad-hoc-Kernel-Tracing für Incident Response:bpftrace -e 'tracepoint:syscalls:sys_enter_execve { printf("%s %s\n", comm, str(args->filename)); }'protokolliert alle Programmausführungen mit Pfad.
Sie benötigen Unterstützung?
Kernel-Exploitation und Rootkits repräsentieren die höchste Eskalationsstufe in der Cybersicherheit. Wir härten Ihre Systeme mit HVCI, Secure Boot Custom Keys und eBPF-Monitoring — und unterstützen bei der forensischen Analyse von Rootkit-Infektionen und UEFI-Kompromittierungen.
Security & Firewall ansehen →
