Skip to content
KitploitKITPLOIT
ToolsExploitsBlog
Log in
Einreichen
ToolsExploitsBlog
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-49144 — PoC CVE-2025-49144 | Kitploit
Tools/GitHubGitHub/vr00mm/cve-2025-49144
Privilege EscalationPersistenzmechanismenExploitationCommand and ControlSocial EngineeringLernen & BildungRed TeamingPayload-EntwicklungBinary-Exploitation
GitHubvr00mm/cve-2025-49144

CVE-2025-49144

PoC CVE-2025-49144

610vor 1 JahrNoch 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
Repository anzeigen

Notepad++ Binary Planting PoC (CVE-2025-49144)

⚠️ NUR ZU BILDUNGSZWECKEN
Dieser Code dient Bildungs- und Forschungszwecken, um Schwachstellen im Zusammenhang mit Binary Planting zu verstehen. Verwenden Sie ihn nur in kontrollierten Umgebungen mit entsprechender Autorisierung.

📋 Übersicht

Dieses Proof of Concept demonstriert die Binary-Planting-Schwachstelle im Notepad++-Installer (CVE-2025-49144), auf die in GHSA-9vx8-v79m-6m24 verwiesen wird. Die Schwachstelle ermöglicht es einem Angreifer, SYSTEM-Rechte zu erlangen, indem er eine schädliche ausführbare Datei namens regsvr32.exe im selben Verzeichnis wie den Notepad++-Installer platziert.

🎯 Details zur Schwachstelle

  • Ziel: Notepad++-Installer (alle Versionen vor v8.8.2)
  • Methode: Binary Planting über eine schädliche regsvr32.exe
  • Grundursache: Notepad++-Installer rufen System-Binaries wie regsvr32 auf, ohne absolute Pfade anzugeben
  • Auswirkung: Wenn ein Benutzer den Installer ausführt, lädt das System die schädliche Datei automatisch mit SYSTEM-Rechten, wodurch ein Angreifer die vollständige Kontrolle über das Zielsystem erlangt
  • Angriffsvektor: Social Engineering oder Clickjacking, um Benutzer dazu zu bringen, sowohl den legitimen Installer als auch eine schädliche ausführbare Datei in dasselbe Verzeichnis herunterzuladen (in der Regel der Download-Ordner)

🏗️ Architektur

Der PoC besteht aus mehreren Komponenten, die zusammenarbeiten:

┌─────────────────┐    ┌──────────────────┐    ┌─────────────────┐
│ Notepad++       │    │ Malicious        │    │  Reverse Shell  │
│ Installer       │───▶│ regsvr32.exe     │───▶│   (PowerShell)  │
│ (searches for   │    │ (CGO binary)     │    │  with SYSTEM    │
│  regsvr32.exe)  │    │                  │    │  privileges     │
└─────────────────┘    └──────────────────┘    └─────────────────┘

Kernkomponenten

DateiZweckZeilen
main.goEinstiegspunkt, verarbeitet die regsvr32-Ausführung~80
winbind.hHaupt-Header mit Funktionsdeklarationen~45
main.cZentraler Reverse-Shell-Starter und Erstellung entkoppelter Prozesse~75
shell.cShell-Handler mit verschleierter PowerShell-Ausführung~120
process.cToken-Erlangung und Erstellung von SYSTEM-Prozessen~195
socket.cNetzwerkverbindung mit TCP-Keep-Alive~85
threads.cI/O-Threading zwischen Socket und Pipes~60
utils.cEingabevalidierung und Ratenbegrenzung~35
obfuscate.cTechniken zur Verschleierung des PowerShell-Pfads~70

🔧 Technische Merkmale

🛡️ Tarnungstechniken

  • String-Verschleierung: Der PowerShell-Pfad wird XOR-kodiert, um eine statische Erkennung zu vermeiden
  • Entkoppelte Prozesse: Erstellt unabhängige Prozesse, die die Beendigung des übergeordneten Prozesses überleben
  • Token-Impersonation: Erhöht Privilegien durch Diebstahl von SYSTEM-Tokens
  • Process Hollowing: Injiziert Code in legitime Windows-Prozesse

🌐 Netzwerkfunktionen

  • TCP-Keep-Alive: Hält dauerhafte Verbindungen durch Firewalls aufrecht
  • Verbindungswiederholung: Automatische Wiederverbindung mit konfigurierbaren Verzögerungen
  • Timeout-Behandlung: Nicht blockierende Socket-Operationen mit angemessenen Timeouts
  • Ratenbegrenzung: Verhindert Verbindungs-Spam und Erkennung

💻 Systemintegration

  • CGO-Integration: Nahtlose Go-C-Interoperabilität für Systemaufrufe
  • Maskierung ausführbarer Dateien: Imitiert das Verhalten der legitimen regsvr32.exe
  • Multithreading: Separate Threads für die Verarbeitung von stdin/stdout/stderr
  • Fehlerbehandlung: Saubere Verarbeitung von Verbindungsfehlern und Prozessbeendigungen
  • Ressourcenverwaltung: Ordnungsgemäße Bereinigung von Handles, Sockets und Speicher

🚀 Build-Anleitung

Voraussetzungen

# Go installieren (1.24+)
# MinGW-w64 für die CGO-Kompilierung installieren
# Git für die Versionsverwaltung installieren

Kompilierung

# Repository klonen
git clone https://github.com/Vr00mm/CVE-2025-49144
cd CVE-2025-49144

# Als ausführbare Datei bauen (maskiert als regsvr32.exe)

# Für maximale Tarnung (Debug-Informationen entfernen)
go build -ldflags="-s -w" -o regsvr32.exe

# Für die Entwicklung (mit Debug-Symbolen)
go build -o regsvr32_debug.exe

📖 Verwendung

Binary Planting (primärer Angriffsvektor)

# 1. Schädliche regsvr32.exe im selben Verzeichnis wie den Notepad++-Installer platzieren
# In der Regel der Download-Ordner, in den Benutzer den Installer herunterladen
copy regsvr32.exe "C:\Users\%USERNAME%\Downloads\"

# 2. Benutzer lädt den offiziellen Notepad++-Installer in den Download-Ordner herunter
# 3. Wenn der Benutzer den Installer ausführt, sucht dieser zuerst im aktuellen Verzeichnis nach regsvr32.exe
# 4. Der Installer findet und führt unsere schädliche regsvr32.exe mit SYSTEM-Rechten aus

# 5. Auf eingehende Reverse-Shell-Verbindung lauschen
ncat -tlnp 4445

🔍 Angriffsablauf

sequenceDiagram
    participant User
    participant Attacker
    participant Downloads
    participant NotepadInstaller
    participant MaliciousRegsvr32
    participant SystemProcess

    User->>Downloads: Download Notepad++ installer
    Attacker->>Downloads: Place malicious regsvr32.exe (social engineering)
    User->>NotepadInstaller: Run installer from Downloads folder
    NotepadInstaller->>Downloads: Search for regsvr32.exe in current directory
    Downloads->>MaliciousRegsvr32: Find malicious regsvr32.exe first
    NotepadInstaller->>MaliciousRegsvr32: Execute with SYSTEM privileges
    MaliciousRegsvr32->>MaliciousRegsvr32: Create detached process
    MaliciousRegsvr32->>SystemProcess: Enumerate SYSTEM processes
    SystemProcess->>MaliciousRegsvr32: Steal token from winlogon/services
    MaliciousRegsvr32->>MaliciousRegsvr32: Create PowerShell with SYSTEM token
    MaliciousRegsvr32->>Attacker: Establish reverse connection
    MaliciousRegsvr32->>NotepadInstaller: Continue with legitimate regsvr32 functionality
    Attacker->>SystemProcess: Execute commands as SYSTEM

🎓 Bildungsaspekte

Demonstrierte Sicherheitskonzepte

  1. Binary Planting

    • Unsicheres Verhalten des Suchpfads für ausführbare Dateien
    • Privilegienerweiterung durch Installer-Schwachstellen
    • Social-Engineering-Angriffsvektoren
  2. Privilegienerweiterung

    • Token-Impersonationsmethoden
    • Diebstahl von Prozess-Tokens
    • Erlangung von SYSTEM-Zugriff
  3. Persistenzmechanismen

    • Erstellung entkoppelter Prozesse
    • Nachahmung von Dienstprozessen
    • Logik zur Verbindungswiederholung
  4. Netzwerkprogrammierung

    • Implementierung einer Reverse Shell
    • Socket-Programmierung in C
    • Plattformübergreifende Netzwerkkommunikation
  5. CGO-Programmierung

    • Go-C-Interoperabilität
    • Systemnahe Programmierung in Go
    • Sprachübergreifende Integration

Lernziele

  • Verstehen, wie Binary-Planting-Schwachstellen funktionieren
  • Etwas über unsichere Suchpfade für ausführbare Dateien in Installern lernen
  • Windows-Privilegienerweiterung durch Installer-Fehler untersuchen
  • Social-Engineering-Angriffsvektoren studieren
  • CGO-Programmierung und sprachübergreifende Integration üben
  • Sichere Programmierung und Schwachstellenanalyse üben

🛡️ Erkennung und Gegenmaßnahmen

Erkennungsmethoden

# Auf verdächtige regsvr32-Nutzung überwachen
Get-WinEvent -FilterHashtable @{LogName='Microsoft-Windows-PowerShell/Operational'; ID=4104}

# Auf ungewöhnliche Netzwerkverbindungen prüfen
netstat -ano | findstr ":4445"

# Prozesserstellung überwachen
Get-WinEvent -FilterHashtable @{LogName='Security'; ID=4688}
Tool herunterladen