/michael-adolf.dev
Alle Projekte

0x01·IT-Security · Kernel · PoC

Kernel-Level Attack Vectors in Anti-Cheat Systems

Bachelorarbeit · Chair for Cybersecurity, Uni Augsburg.

Rolle
Solo · Forschung + PoC
Jahr
2026
Status
abgegeben
Domain
IT-Security · Kernel · PoC

Thesis architecture

Kernel setup path

  1. 01

    Carrier admission and loading

    User-mode loader loads iqvw64e.sys

  2. 02

    Kernel-memory capability

    Unsafe IOCTLs provide kernel read/write

  3. 03

    Carrier bookkeeping changes

    Mapper changes selected driver records

  4. 04
    Ring 0 transition

    Custom payload mapping

    Payload starts; carrier unloads

  5. 05

    Runtime communication

    User mode and payload share a memory channel

// Problem

Anti-Cheat-Systeme leben in drei Klassen: VAC im User-Mode, EAC und BattlEye im Kernel, Vanguard und HVCI im Hypervisor. Ein Angreifer, der sauber in Ring 0 kommt und sich nirgends in die OS-Bücher einträgt, existiert für die niedrigste Klasse gar nicht. Frage der Arbeit: wie weit trägt so ein Angriff, und an welchem Punkt kann welche AC-Klasse strukturell eingreifen?

// Ansatz

PoC in C++ mit sechsstufiger Attack-Chain: iqvw64e.sys (signierter Intel-Treiber) liefert via bekannter IOCTL-Schwachstelle Kernel-Read/Write-Primitive. Damit wird KernelDriver.sys unsigniert manual gemapped, via KdMapper, ohne Datei auf Disk, ohne Registrierung in PsLoadedModuleList. Anti-forensic Cleanup entfernt PiDDB-Cache, Kernel-Hash-Bucket und WdFilter-Spuren. IPC läuft über Physical-Memory-Scan statt IOCTL-Handle. Der Read-Loop attached via KeStackAttachProcess an cs2.exe, liest Entity-Daten und 30 Bone-Positionen pro Frame, mit gespooftem Call-Stack für die Rückkehr. Rendering: Dear ImGui über DirectX 11 als ESP-Overlay.

// Stand

PoC läuft empirisch undetected gegen VAC (dediziertes Testsystem, nie gegen Live-Server). Analytische Detection-Vektor-Analyse pro AC-Klasse: VAC ist strukturell blind, EAC/BattlEye könnten anonyme Executable-Pages erkennen, Vanguard/HVCI schließt die Angriffsfläche komplett. Bachelorarbeit abgegeben · Betreuung: Prof. Dr. Frank Breitinger, Janine Schneider.

// stack

  • Windows Kernel Driver
  • C++
  • BYOVD · iqvw64e.sys
  • KdMapper · manual mapping
  • KeStackAttachProcess
  • PE Loader · Relocations
  • Dear ImGui + DirectX 11
  • cs2-dumper offsets