## https://sploitus.com/exploit?id=KITPLOIT:TOOLS-GITHUB-0VERCL0K-CVE-2021-31166
# CVE-2021-31166: ثغرة تنفيذ التعليمات البرمجية عن بُعد في مكدس بروتوكول HTTP
هذا هو إثبات المفهوم لـ CVE-2021-31166 ("ثغرة تنفيذ التعليمات البرمجية عن بُعد في مكدس بروتوكول HTTP")، وهي إلغاء مرجع بعد التحرير (use-after-free) في `http.sys` والتي قامت Microsoft بتصحيحها في مايو 2021. وفقًا لهذه التغريدة، تم اكتشاف الثغرة من قبل @_mxms و @fzzyhd1.

الخطأ بحد ذاته يحدث في `http!UlpParseContentCoding` حيث تحتوي الدالة على `LIST_ENTRY` محلية وتقوم بإضافة عنصر إليها. عندما تنتهي، تقوم بنقله إلى بنية `Request`؛ لكنها لا تقوم بتعيين القائمة المحلية إلى `NULL`. المشكلة في ذلك هي أن المهاجم يمكنه تشغيل مسار تعليمات برمجية يقوم بتحرير جميع إدخالات القائمة المحلية مما يتركها معلقة في كائن `Request`.