Skip to content
KitploitKITPLOIT
OutilsBlog
Log in
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-31166 — Preuve de concept pour CVE-2021-31166, un use-after-free distant dans HTTP.sys déclenché à distance. | Kitploit
Outils/GitHubGitHub/0vercl0k/cve-2021-31166
Analyse des VulnérabilitésExploitationSécurité WebOutil d'Accès à DistanceExploitation de BinairesArchived
GitHub0vercl0k/cve-2021-31166

CVE-2021-31166

Preuve de concept pour CVE-2021-31166, un use-after-free distant dans HTTP.sys déclenché à distance.

Voir le dépôt
82713562il y a 5 ansPas 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

CVE-2021-31166 : Vulnérabilité d'exécution de code à distance dans la pile de protocole HTTP

Ceci est une preuve de concept pour CVE-2021-31166 (« Vulnérabilité d'exécution de code à distance dans la pile de protocole HTTP »), un déréférencement use-after-free dans http.sys corrigé par Microsoft en mai 2021. Selon ce tweet, la vulnérabilité a été découverte par @_mxms et @fzzyhd1.

trigger

Le bug lui-même se produit dans http!UlpParseContentCoding où la fonction possède une LIST_ENTRY locale et y ajoute un élément. Une fois terminé, elle le déplace dans la structure Request ; mais elle ne remet pas la liste locale à NULL. Le problème est qu'un attaquant peut déclencher un chemin de code qui libère chaque entrée de la liste locale, les laissant pendantes dans l'objet Request.

rel04vsrel05

Voici le bugcheck :

KDTARGET: Refreshing KD connection

*** Fatal System Error: 0x00000139
                       (0x0000000000000003,0xFFFFF90EA867EE40,0xFFFFF90EA867ED98,0x0000000000000000)

Break instruction exception - code 80000003 (first chance)

A fatal system error has occurred.
Debugger entered on first try; Bugcheck callbacks have not been invoked.

A fatal system error has occurred.

nt!DbgBreakPointWithStatus:
fffff804`19410c50 cc              int     3

kd> kp
 # Child-SP          RetAddr               Call Site
00 fffff90e`a867e368 fffff804`19525382     nt!DbgBreakPointWithStatus
01 fffff90e`a867e370 fffff804`19524966     nt!KiBugCheckDebugBreak+0x12
02 fffff90e`a867e3d0 fffff804`19408eb7     nt!KeBugCheck2+0x946
03 fffff90e`a867eae0 fffff804`1941ad69     nt!KeBugCheckEx+0x107
04 fffff90e`a867eb20 fffff804`1941b190     nt!KiBugCheckDispatch+0x69
05 fffff90e`a867ec60 fffff804`19419523     nt!KiFastFailDispatch+0xd0
06 fffff90e`a867ee40 fffff804`1db3f677     nt!KiRaiseSecurityCheckFailure+0x323
07 fffff90e`a867efd0 fffff804`1daf6c05     HTTP!UlFreeUnknownCodingList+0x63
08 fffff90e`a867f000 fffff804`1dacd201     HTTP!UlpParseAcceptEncoding+0x299c5
09 fffff90e`a867f0f0 fffff804`1daa93d8     HTTP!UlAcceptEncodingHeaderHandler+0x51
0a fffff90e`a867f140 fffff804`1daa8ab7     HTTP!UlParseHeader+0x218
0b fffff90e`a867f240 fffff804`1da04c5f     HTTP!UlParseHttp+0xac7
0c fffff90e`a867f3a0 fffff804`1da0490a     HTTP!UlpParseNextRequest+0x1ff
0d fffff90e`a867f4a0 fffff804`1daa48c2     HTTP!UlpHandleRequest+0x1aa
0e fffff90e`a867f540 fffff804`1932ae85     HTTP!UlpThreadPoolWorker+0x112
0f fffff90e`a867f5d0 fffff804`19410408     nt!PspSystemThreadStartup+0x55
10 fffff90e`a867f620 00000000`00000000     nt!KiStartSystemThread+0x28

kd> !analyze -v
[...]
*******************************************************************************
*                                                                             *
*                        Bugcheck Analysis                                    *
*                                                                             *
*******************************************************************************

KERNEL_SECURITY_CHECK_FAILURE (139)
A kernel component has corrupted a critical data structure.  The corruption
could potentially allow a malicious user to gain control of this machine.
Arguments:
Arg1: 0000000000000003, A LIST_ENTRY has been corrupted (i.e. double remove).
Arg2: fffff90ea867ee40, Address of the trap frame for the exception that caused the BugCheck
Arg3: fffff90ea867ed98, Address of the exception record for the exception that caused the BugCheck
Arg4: 0000000000000000, Reserved

Questions fréquemment posées

Q : Windows Remote Management (WinRM) est-il concerné ?

Oui (merci à @JimDinMN d'avoir partagé ses expériences).

Q : Web Services on Devices (WSDAPI) est-il concerné ?

Oui (merci à @HenkPoley d'avoir partagé ses résultats).

Q : Quelles sont les versions de Windows concernées ?

D'après la documentation de Microsoft, voici les plateformes concernées :

  • Windows Server, version 2004 (ou 20H1) (installation minimale du serveur),
  • Windows 10 Version 2004 (ou 20H1) pour systèmes ARM64/x64/32 bits,
  • Windows Server, version 20H2 (installation minimale du serveur),
  • Windows 10 Version 20H2 pour systèmes ARM64/x64/32 bits.
Télécharger l’outil